💬 Chatbot com Memoria
Construa um chatbot que mantem contexto entre mensagens usando chat history.
Implementacao do Chatbot
import google.generativeai as genai
genai.configure(api_key="YOUR_API_KEY")
model = genai.GenerativeModel('gemini-pro')
# Iniciar chat com system instruction
chat = model.start_chat(history=[])
def chat_with_memory(user_message):
response = chat.send_message(user_message)
return response.text
# Conversa mantem contexto
print(chat_with_memory("Oi! Meu nome e Maria"))
print(chat_with_memory("Qual meu nome?")) # Lembra: "Maria"
💡 Dica
Para chatbots em producao, implemente limite de historico (ultimas N mensagens) para evitar exceder context window.
📄 Analisador de Documentos
Sistema para upload de PDFs e perguntas sobre o conteudo.
Document Q&A
def analyze_document(pdf_path, question):
# Upload do documento
doc = genai.upload_file(pdf_path)
# Aguardar processamento
while doc.state.name == "PROCESSING":
time.sleep(2)
doc = genai.get_file(doc.name)
# Fazer pergunta sobre o documento
response = model.generate_content([
f"Baseado no documento, responda: {question}",
doc
])
return response.text
# Uso
answer = analyze_document(
"contrato.pdf",
"Qual a data de vencimento?"
)
Casos de Uso
- • Analise de contratos
- • Extracao de dados de relatorios
- • Resumo de artigos cientificos
- • FAQ automatizado
Extensoes
- • Multiplos documentos
- • Cache de embeddings
- • Interface web com upload
- • Export de respostas
🤖 Agente com Tools
Construa um agente autonomo que usa function calling para executar acoes reais.
Agente com Loop de Execucao
def run_agent(user_request, max_iterations=5):
messages = [user_request]
for _ in range(max_iterations):
response = model.generate_content(messages)
# Verificar se ha function call
if has_function_call(response):
fc = get_function_call(response)
# Executar funcao
result = execute_function(fc.name, fc.args)
# Adicionar resultado ao contexto
messages.append(response.content)
messages.append(create_function_response(fc.name, result))
else:
# Resposta final
return response.text
return "Limite de iteracoes atingido"
📊 Analise de Dados
Analise CSVs e planilhas com linguagem natural e gere insights automaticamente.
Data Analysis
import pandas as pd
def analyze_csv(csv_path, question):
# Carregar dados
df = pd.read_csv(csv_path)
# Criar descricao dos dados
data_description = f"""
Colunas: {list(df.columns)}
Linhas: {len(df)}
Amostra (primeiras 5 linhas):
{df.head().to_string()}
Estatisticas:
{df.describe().to_string()}
"""
# Enviar para analise
response = model.generate_content(f"""
Dados: {data_description}
Pergunta: {question}
Responda com insights baseados nos dados.
""")
return response.text
⚡ Automacao de Workflows
Conecte Gemini a sistemas existentes para automacao end-to-end.
Email Automation
Classificar, responder e encaminhar emails automaticamente.
- • Triagem de suporte
- • Respostas automaticas
- • Extracao de dados
Calendar/Tasks
Criar eventos e tarefas a partir de linguagem natural.
- • "Agende reuniao amanha 15h"
- • Integracao Google Calendar
- • Lembretes inteligentes
Data Pipelines
Transformacao e enriquecimento de dados.
- • Limpeza de dados
- • Categorizacao automatica
- • Geracao de relatorios
Web Scraping+
Extracao inteligente de informacoes de paginas.
- • Monitoramento de precos
- • Agregacao de noticias
- • Competitive intelligence
🎯 Proximos Passos
Recursos para continuar sua jornada com Google AI.
📚 Recursos Recomendados
- •Documentacao: ai.google.dev/docs
- •Cookbook: github.com/google-gemini/cookbook
- •Skills Boost: cloudskillsboost.google (certificacoes)
- •Community: ai.google.dev/community
- •YouTube: Google for Developers channel
🎉 Parabens!
Voce completou a Trilha 3 - AntiGravity & Gemini! Agora voce tem as habilidades para construir aplicacoes poderosas com Gemini. Continue praticando e explorando novos casos de uso.
📚 Resumo do Modulo
Trilha Concluida!
Continue para a Trilha 4 - Ecossistema