🤖 Retrieval Augmented Generation (RAG) com Anthropic
📌 Pra que serve
RAG injeta documentos relevantes no contexto do modelo antes dele responder — perfeito quando o conhecimento está em seus documentos, não no treino do modelo. Atualiza respostas instantaneamente sem retreinamento; ideal pra bases de conhecimento internas, FAQs dinâmicas e assistentes contextualizados.🛠️ Passo a passo
1. Prepare sua base de conhecimento
Organize seus documentos/chunks em um array (texto, banco de dados, ou arquivos).
2. Implemente embedding simples (ou integre um real)
- Para produção: use Voyage AI ou OpenAI Embeddings
- Para aprender: use vetores de contagem de palavras + similaridade do cosseno (veja o código do artigo)
3. Crie a função de busca (retrieve)
- Vetorize a pergunta do usuário
- Compare contra vetores de cada documento
- Retorne apenas matches acima de um score mínimo (não só top-k!)
- ⚠️ Errata comum: top-k sem threshold deixa respostas erradas confiantes
4. Augmente o prompt
Insira os chunks recuperados como contexto no system prompt antes de enviar à API Anthropic.
5. Teste e ajuste o threshold
Imprima scores durante desenvolvimento. Para seus dados, encontre onde "genuinamente relacionado" vira "só palavras em comum". O exemplo usa 0.22, ajuste pro seu caso.
6. Rode o exemplo funcional
npm install @anthropic-ai/sdkCole o código TypeScript do artigo, configure
ANTHROPIC_API_KEY e execute.💡 Dica: Chunking importa — nem muito grande (perde contexto), nem muito pequeno (fragmenta sentidos). Comece por parágrafo/seção. Nunca assuma — sempre log o que foi recuperado vs. a resposta.
🔗 Links e instalação
- Artigo completo: https://dev.to/zahidhasantonmoy/what-is-rag-a-working-retrieval-example-you-can-run-with-just-an-anthropic-key-1f3m
- SDK Anthropic:
npm install @anthropic-ai/sdk - Embedding em produção: Voyage AI (recomendado por A
- Docs Anthropic: https://docs.anthropic.com/
- Código do exemplo: TypeScript + cosine similarity (disponível no artigo)