IA & automação · Guia
O que é RAG e quando usar na sua empresa
RAG (Retrieval-Augmented Generation, ou geração aumentada por recuperação) é uma técnica em que o sistema busca os trechos mais relevantes nos documentos e bancos da empresa e os entrega ao modelo de linguagem junto com a pergunta. A resposta se apoia nesses dados e cita a fonte. Vale quando a informação é própria e muda com frequência.
Master TimmAtualizado em 6 min de leitura
Nesta página
Como o RAG funciona, passo a passo
Um modelo de linguagem só sabe o que aprendeu no treino e o que recebe na janela de contexto. O RAG cuida da segunda parte: a cada pergunta, busca o que importa e coloca no contexto. O trabalho se divide em preparar os dados, uma vez e a cada mudança, e responder, a cada pergunta.
- Ingestão e chunking: Os documentos são extraídos, limpos e divididos em trechos (chunks), com tamanho e sobreposição pensados para não cortar uma ideia ao meio.
- Embeddings: Um modelo de embeddings transforma cada trecho em um vetor numérico que representa o seu significado.
- Indexação: Vetores, texto e metadados (fonte, data, permissões) vão para um vector store, como o pgvector no PostgreSQL.
- Busca híbrida: A pergunta é buscada por significado (vetores) e por palavras-chave, o que encontra tanto paráfrases quanto códigos, siglas e nomes exatos.
- Reranking: Um modelo reordena os candidatos pela relevância para a pergunta, e só os melhores entram no contexto.
- Geração com citações: O modelo responde com base nos trechos recebidos e indica de qual documento veio cada afirmação.
Quando usar RAG na empresa
O RAG é a escolha natural quando a resposta depende do conhecimento da empresa, e não do conhecimento geral do modelo. Os sinais mais comuns:
- Base própria: Manuais, políticas, contratos, chamados ou documentação técnica que o modelo nunca viu.
- Informação que muda: Catálogos, normas e procedimentos atualizados com frequência; basta reindexar, sem retreinar o modelo.
- Resposta auditável: Quem pergunta precisa ver a fonte, como em jurídico, compliance, suporte técnico e atendimento.
- Acervo grande: O conteúdo não cabe na janela de contexto do modelo, ou caberia a um custo alto por pergunta.
Quando o dado é tabular, como pedidos, saldos ou métricas, a recuperação costuma ser uma consulta estruturada (SQL ou API), e não uma busca por similaridade. No Contas Casal, produto próprio da Master Timm, o assistente usa um RAG estruturado: roteamento de intenção, 10 ferramentas de consulta SQL em paralelo e cache semântico.
RAG, fine-tuning ou agente: o que cada um resolve
Os três costumam ser confundidos, mas mexem em partes diferentes do sistema. O RAG muda o que o modelo sabe na hora da pergunta. O fine-tuning muda como o modelo se comporta: tom, formato ou uma tarefa estreita. Um agente muda o que o modelo pode fazer, chamando ferramentas em vários passos.
- RAG: Responder qual é a política de devolução vigente, citando o documento e a versão.
- Fine-tuning: Classificar chamados nas categorias internas, quando uma eval mostra ganho sobre prompt e contexto.
- Agente: Consultar o pedido no ERP, conferir a política e abrir a devolução, com aprovação nas ações sensíveis.
Eles se combinam: um agente pode ter a busca do RAG como uma de suas ferramentas e decidir quando consultá-la. A escolha entre RAG e fine-tuning para usar os dados da empresa está detalhada na página de engenharia de IA & LLM, indicada logo abaixo.
Por que um RAG erra e como evitar
Quando um RAG erra, a causa costuma estar na recuperação, e não no modelo: se o trecho certo não chega ao contexto, o modelo responde com o que tem, e o erro parece uma resposta certa.
- Chunk mal cortado: A regra fica em um trecho e a exceção em outro; dividir pela estrutura do documento, com sobreposição, resolve boa parte.
- Vocabulário diferente: A pessoa escreve de um jeito e o documento de outro; a busca híbrida e a reescrita da pergunta ajudam.
- Fonte desatualizada ou duplicada: Duas versões da mesma política competem; metadados de data e versão e a limpeza do acervo evitam a confusão.
- Permissão ignorada: A busca devolve um trecho que a pessoa não pode ver; o filtro de acesso precisa ser aplicado na própria busca.
- Instrução escondida: Um documento traz texto que tenta mudar o comportamento do modelo (prompt injection indireta); o conteúdo recuperado é tratado como dado, nunca como ordem.
- Pergunta de cálculo: Somas, médias e rankings pedem SQL, não similaridade de texto.
Como medir a qualidade de um RAG
Um RAG se mede em duas partes, porque cada uma falha de um jeito: a busca e a resposta. As duas usam o mesmo dataset de avaliação, com perguntas reais, a resposta esperada e o documento que deveria ser encontrado.
- Busca: O trecho certo aparece entre os primeiros resultados (recall@k), e os irrelevantes ficam de fora.
- Fidelidade: Cada afirmação da resposta está apoiada nos trechos recuperados, sem nada inventado.
- Relevância e citação: A resposta atende à pergunta e aponta a fonte certa.
- Operação: Latência, tokens e custo por pergunta, acompanhados por traces em produção.
As avaliações combinam verificações em código, revisão humana por amostragem e LLM-as-a-judge, e rodam a cada mudança de chunking, de modelo de embeddings, de prompt ou de modelo de linguagem.
Serviço relacionado
Engenharia de IA & LLM
Agentes de IA, RAG e MCP em produção, não em demo.
Conversa inicial gratuita · Resposta em até 1 dia útil
Veja também: Chatbots e autoatendimento com IA e IA para e-commerce.
Perguntas frequentes
Com janelas de contexto grandes, ainda preciso de RAG?
Na maioria dos casos, sim. Colocar o acervo inteiro no prompt encarece cada pergunta, porque todos os tokens são cobrados a cada chamada, e a qualidade pode cair quando o trecho relevante fica perdido no meio de um texto longo. Para uma base pequena e estável, um contexto longo com prompt caching pode bastar; o teste com um dataset de avaliação decide.
Preciso de um banco vetorial dedicado para fazer RAG?
Nem sempre. O pgvector adiciona busca vetorial ao PostgreSQL, com índices HNSW e IVFFlat, e se combina com a busca textual do próprio banco para fazer busca híbrida, ao lado dos dados relacionais e das permissões que você já tem. O Master Jobs, produto próprio da Master Timm, usa PostgreSQL com pgvector. Um banco vetorial dedicado faz sentido em volumes muito grandes ou quando oferece algo de que o projeto precisa.
O RAG pode mostrar documentos confidenciais para quem não deveria vê-los?
Pode, se as permissões forem ignoradas na busca, e esse é um dos riscos que a OWASP lista para sistemas com embeddings. A proteção é guardar as permissões de cada trecho como metadado e filtrar a busca pelo acesso de quem pergunta, com isolamento entre clientes em sistemas multi-tenant e registro de cada recuperação.
Como o RAG se mantém atualizado quando os documentos mudam?
Com reindexação, sem retreinar o modelo. Uma rotina detecta documentos novos, alterados ou removidos e atualiza só os trechos afetados, com a data e a versão nos metadados. Assim a resposta reflete a versão vigente, e a avaliação mostra se a mudança afetou a qualidade.
Fontes
- Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks: o artigo que definiu o RAG (arXiv) · arxiv.org · em inglês
- pgvector: busca vetorial no PostgreSQL (documentação oficial) · github.com · em inglês
- OWASP Top 10 para aplicações com LLM: LLM08, fraquezas de vetores e embeddings · genai.owasp.org · em inglês
Master Timm · Atualizado em