Sistemas em produção
20 minLição 12 de 14
Retrieval-Augmented Generation (RAG)
Ancore as respostas do LLM nos seus próprios dados
Objetivos de aprendizagem
- •Entender a arquitetura RAG
- •Aprender a implementar sistemas RAG básicos
- •Conhecer armadilhas e soluções comuns em RAG
Por que RAG?
- Corte de conhecimento (não sabem eventos recentes)
- Não acessam dados privados
- Podem alucinar fatos
RAG resolve isso ao: 1. Recuperar documentos relevantes dos seus dados 2. Aumentar o prompt com esse contexto 3. Gerar uma resposta ancorada em informação real
Arquitetura RAG
Consulta do usuário
↓
┌─────────────────┐
│ Embed da query │
└─────────────────┘
↓
┌─────────────────┐
│ Busca vetorial │ ← Seus embeddings de documentos
└─────────────────┘
↓
┌─────────────────┐
│ Top K resultados │
└─────────────────┘
↓
┌─────────────────┐
│ Aumentar prompt │
└─────────────────┘
↓
┌─────────────────┐
│ Gerar │
└─────────────────┘
↓
RespostaConsiderações de implementação
Estratégia de chunking
- Muito pequeno: perde contexto
- Muito grande: ruído e irrelevância
- Ponto ideal: 200–500 tokens com sobreposição
Qualidade da recuperação
- Número de resultados (k): balance relevância vs tamanho do contexto
- Limiar de similaridade: filtre resultados de baixa relevância
- Busca híbrida: combine semântica + correspondência por palavra-chave
Design do prompt
- Separe claramente contexto da pergunta
- Instrua o modelo a dizer "não sei" se o contexto não tiver a resposta
- Considere citar fontes
Erros comuns
×Não dizer 'não sei' — o modelo pode alucinar se o contexto não tiver a resposta
×Chunking ruim — chunks grandes ou pequenos demais prejudicam a recuperação
×Ignorar metadados — datas, fontes e tipos de documento melhoram a relevância
×Sem avaliação — acompanhe qualidade de recuperação e precisão da resposta separadamente
Principais pontos
+RAG ancora as respostas do LLM nos seus dados reais
+A qualidade depende da recuperação e da geração
+A estratégia de chunking impacta bastante os resultados
+Sempre inclua instruções para quando a informação não estiver disponível