Olá, Luiz, como vai?
Durante a execução desse código, o modelo de IA pode não conseguir processar todas as requisições enviadas. Quando isso acontece, a chamada falha e, como consequência, lista_resumos permanece vazia, impactando as etapas seguintes da atividade.
Para validar o restante do fluxo, o que fiz foi simular essa etapa. Pedi ao ChatGPT para gerar os resumos dos e-mails e utilizei esse resultado no notebook. Assim, consegui executar normalmente as próximas células e verificar que a lógica de leitura e escrita dos arquivos estava funcionando corretamente. Utilizei a lista abaixo para prosseguir com os testes:
lista_resumos = [
"E-mail 1: Parabeniza pelo desempenho e reconhecimento no último projeto.",
"E-mail 2: Solicita alinhamento da sprint e disponibilidade para reunião.",
"E-mail 3: Envia o relatório mensal e se coloca à disposição para esclarecer dúvidas.",
"E-mail 4: Envia a versão final de um artigo conforme o cronograma da disciplina.",
"E-mail 5: Solicita prorrogação do prazo de entrega do trabalho por motivos de saúde.",
"E-mail 6: Propõe uma reunião para discutir uma possível parceria entre empresas.",
"E-mail 7: Informa que o pedido foi processado e está em transporte.",
"E-mail 8: Lembra sobre o vencimento próximo da fatura.",
"E-mail 9: Convida amigos para uma comemoração de aniversário.",
"E-mail 10: Solicita o pagamento de um valor pendente via Pix.",
"E-mail 11: Confirma presença em um casamento.",
"E-mail 12: Dá as boas vindas e informa a data de início na empresa.",
"E-mail 13: Informa aprovação para a próxima etapa do processo seletivo e solicita horários para entrevista.",
"E-mail 14: Reporta lentidão no sistema e solicita verificação da equipe de TI.",
"E-mail 15: Informa que o problema da conta foi corrigido e orienta limpar o cache.",
"E-mail 16: Pergunta se um apartamento anunciado ainda está disponível para visita.",
"E-mail 17: Divulga o lançamento de uma nova plataforma com desconto promocional.",
"E-mail 18: Apresenta uma newsletter com tendências do mercado de tecnologia.",
"E-mail 19: Comunica o adiamento de um workshop e informa que uma nova data será enviada.",
"E-mail 20: Agradece uma conversa recente e reforça o contato pelo LinkedIn."
]
Outro ponto que vale a pena observar é a identação da função resumidor_de_emails. No trecho que você compartilhou, o print(), o append() e o time.sleep(20) estão fora do laço for. Dessa forma, apenas a última resposta gerada é utilizada e a pausa entre as requisições não acontece durante a iteração. O ideal é que esses comandos fiquem dentro do laço, como no exemplo abaixo:
import time
def resumidor_de_emails(lista_de_emails):
lista_de_resumos = []
for numero, email in enumerate(lista_de_emails):
resposta = client.models.generate_content(
model="gemini-2.5-flash",
contents=f"""Vou te mandar um corpo de e-mail. Quero que você resuma em apenas 1 linha, passando o intuito daquele e-mail. Segue o e-mail: {email}"""
)
print(f"E-mail {numero + 1}: {resposta.text}")
lista_de_resumos.append(f"E-mail {numero + 1}: {resposta.text}")
print("-" * 50)
time.sleep(20)
return lista_de_resumos
O fórum continua à disposição caso queira compartilhar novos resultados ou outras dúvidas.
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!