Foquei no simples, sem muita firula agora, sem tratametos de erros, ou funõôes auxiliares, e sem enfeites, direto na função
porém, estou tendo um problema que suspeito ser proteção da API com rate limit ou algo do tipo, creio que tem um delay pra rodar também devido a isso:
ClientError: 429 RESOURCE_EXHAUSTED.
para resolve eu apenas diminui a lista, e para organização eu apenas utilizei um enumerate pra poder ter um indice para identificar os emails na lista, usei um prompt com persona, objetivo e instruções claras, combinando o conteúdo do email para resumo.
import os
from google.colab import userdata
os.environ["GOOGLE_API_KEY"] = userdata.get('GEMINI_API_KEY_TEMP')
from google import genai
client = genai.Client()
def resume_emails(lista_emails: list) -> list:
'''
retorna lista de email resumidos
'''
chat = client.chats.create(model="gemini-2.5-flash")
resumo_emails = []
for i, corpo in enumerate(lista_emails):
prompt = "Você é uma auxiliar prestativo, Resuma este email, retornado de forma consisa em no máximo 10 palavras o que a pessoa quer: " + corpo.strip()
resumo = chat.send_message(prompt).text
resposta = f"Email ({i+1}) Resumo: {resumo}"
resumo_emails.append(resposta)
return resumo_emails
#Omitindo a lista de 20 emails ficou muito grande pra por aqui
#email_bodies = [....]
#amostra de 2 emails
email_bodies2 = [
"Prezada equipe de desenvolvimento, venho por meio deste informar que detectamos uma instabilidade recorrente no nosso módulo de pagamentos durante os picos de acesso entre 14h e 16h. O erro parece estar relacionado ao tempo de resposta do gateway externo. Precisamos que analisem os logs de erro dos últimos três dias e preparem um relatório técnico detalhando as possíveis causas, além de uma sugestão de implementação de uma fila de mensagens para processamento assíncrono. Por favor, reportem o progresso na reunião de acompanhamento de quinta-feira.",
"Olá, Mariana. Em continuidade à nossa reunião sobre o planejamento estratégico do próximo trimestre, gostaria de formalizar as diretrizes que definimos. O foco principal será a expansão da nossa base de clientes no setor de logística, exigindo uma otimização das campanhas de marketing de performance. Solicito que você prepare uma planilha comparativa com o custo de aquisição de clientes (CAC) atual versus o projetado com a nova estratégia, considerando um investimento adicional de 15% em mídia paga nos canais digitais."
]
resume_emails(email_bodies2)
Funcionou bem com amostra