NOTA 9/10 — Técnica prática, consolidada desde 2020, amplamente implementada em produção, com guias acionáveis e acesso aberto em ferramentas populares.
---
🔍 RAG: Aumentando LLMs com Dados Externos
📌 Pra que serve
RAG (Retrieval-Augmented Generation) permite que modelos de linguagem recuperem informações de fontes externas antes de gerar respostas, reduzindo alucinações e trazendo dados atualizados ou específicos do domínio. Ideal para chatbots corporativos, assistentes jurídicos e sistemas que precisam citar fontes verificáveis.
🛠️ Passo a passo
1. Entenda o fluxo básico
- Usuário faz pergunta → Sistema busca documentos relevantes → LLM lê query + documentos → Resposta fundamentada
2. Prepare seus documentos
- Converta textos em embeddings (vetores numéricos). Use um modelo como
sentence-transformers:
pip install sentence-transformers3. Escolha um banco de dados vetorial
- Opções populares: Pinecone (nuvem, gratuito), Weaviate (open-source), Chroma (simples, local)
- Exemplo com Chroma:
pip install chromadb4. Implemente o pipeline RAG
from sentence_transformers import SentenceTransformer
from chromadb import ClientCarregue modelo de embeddings
model = SentenceTransformer('all-MiniLM-L6-v2')Crie cliente e coleção
client = Client()
collection = client.create_collection("docs")Adicione documentos
docs = ["Brasil é país da América do Sul", "IA é transformando indústrias"]
embeddings = model.encode(docs)
collection.add(documents=docs, embeddings=embeddings)Busque
query = "Qual continente fica Brasil?"
query_emb = model.encode([query])
results = collection.query(query_embeddings=query_emb, n_results=2)5. Integre com LLM
- Passe documentos recuperados no prompt:
context = "\n".join(results["documents"][0])
prompt = f"Contexto: {context}\n\nPergunta: {query}"
Envie para Claude, GPT ou modelo local
6. Teste e itere
- Experimente estra
tégias: chunking (tamanho de fragmentos), hybrid search (mistura busca vetorial + texto), reranking (reordene resultados)
💡 Dica: Comece com documentos pequenos (< 100 páginas) para validar. RAG reduz custos de retreinamento e deixa respostas auditáveis — clientes veem de onde vem a info.
🔗 Links e instalação
- Documentação oficial: https://en.wikipedia.org/wiki/Retrieval-augmented_generation
- Frameworks populares:
pip install langchain openai chromadb
- LlamaIndex: pip install llama-index
- Bancos vetoriais open-source:
- Modelos de embedding (HuggingFace):
sentence-transformers/all-MiniLM-L6-v2