Inteligência Artificial · Explicador
RAG: como conectar inteligência artificial a documentos
Modelos de linguagem não conhecem seus contratos, manuais nem relatórios internos. O RAG resolve parte disso: busca os trechos certos e os entrega ao modelo antes da resposta.
- Autoria:
- Redação Token & Tech
- Editor responsável:
- Daniel Ferreira
Publicado em · 8 min de leitura
Também disponível em: English
Em três pontos
- RAG (geração aumentada por recuperação) combina um modelo de linguagem com uma busca em documentos feita a cada pergunta.
- O processo divide os textos em trechos, transforma cada um em vetor numérico, recupera os mais parecidos com a pergunta e os inclui no prompt.
- RAG reduz, mas não elimina, respostas erradas: a busca pode falhar, o modelo pode ignorar o trecho certo e documentos podem conter ataques.
Um modelo de linguagem aprende com um grande volume de textos até uma certa data. Depois disso, o conhecimento dele fica parado. E ele nunca viu o regulamento interno da sua empresa, o contrato que você assinou ontem ou a planilha de preços da semana.
A técnica mais usada para preencher essa lacuna se chama RAG. Em vez de esperar que o modelo saiba a resposta, o sistema primeiro procura os trechos relevantes nos seus documentos e só depois pede ao modelo que responda com base neles. Este texto explica como isso funciona, de onde veio a ideia e onde ela costuma falhar.
O que é RAG
RAG é a sigla em inglês para retrieval-augmented generation, ou geração aumentada por recuperação. “Recuperação” aqui significa busca: encontrar, numa coleção de documentos, os trechos que ajudam a responder uma pergunta. “Geração” é o texto que o modelo produz.
O termo foi apresentado no artigo Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks, de Patrick Lewis e coautores, publicado no arXiv em maio de 2020 e aceito na conferência NeurIPS daquele ano. Os autores partem de um diagnóstico: modelos pré-treinados guardam conhecimento factual nos seus parâmetros, mas acessam e manipulam esse conhecimento de forma imprecisa. Além disso, é difícil saber de onde veio uma resposta e atualizar o que o modelo sabe.
A proposta do artigo é combinar dois tipos de memória:
- Memória paramétrica: o que o modelo aprendeu e ficou gravado nos seus parâmetros (os números internos ajustados no treinamento).
- Memória não paramétrica: um índice de documentos externo, que pode ser consultado e trocado sem mexer no modelo.
Se você quiser revisar como o modelo gera texto, veja o que são LLMs e como funciona a IA generativa.
Como funciona, passo a passo
Os detalhes variam entre sistemas, mas a estrutura básica é parecida. A descrição abaixo segue o artigo original e o texto da Anthropic sobre recuperação contextual, de setembro de 2024, que descreve um fluxo típico de RAG.
1. Dividir os documentos em trechos
Os documentos são quebrados em pedaços menores, chamados de chunks. A Anthropic cita trechos de algumas centenas de tokens (as unidades de texto que o modelo processa; veja tokens em modelos de IA). No artigo de 2020, os autores usaram a Wikipédia de dezembro de 2018, dividida em blocos de 100 palavras, num total de 21 milhões de trechos.
2. Transformar cada trecho em um vetor
Cada trecho passa por um modelo de embeddings. Um embedding é, segundo a documentação da OpenAI, uma lista de números decimais que representa o texto. A distância entre dois desses vetores indica o quanto os textos são relacionados: distância pequena sugere muita relação; distância grande, pouca. A mesma documentação recomenda a similaridade de cosseno como medida.
Os vetores ficam guardados num índice, muitas vezes chamado de banco de dados vetorial. No artigo original, o índice foi montado com a biblioteca FAISS, feita para buscas rápidas desse tipo.
3. Buscar os trechos mais parecidos com a pergunta
Quando você faz uma pergunta, ela também vira um vetor. O sistema procura no índice os trechos mais próximos e separa os primeiros colocados. No artigo de 2020, eram 5 ou 10 documentos por pergunta.
A busca por vetores capta significado, mas pode falhar em termos exatos. A Anthropic dá o exemplo de um código de erro como “TS-999”. Por isso, muitos sistemas combinam a busca vetorial com o BM25, um método mais antigo que compara palavras literalmente, e fundem os dois resultados.
4. Reordenar (opcional)
Alguns sistemas acrescentam um modelo de reordenação, o reranker, que avalia de novo os candidatos e mantém só os mais relevantes. A Anthropic descreve um fluxo que recupera cerca de 150 trechos e envia os 20 melhores ao modelo. A empresa observa que isso melhora a precisão, mas acrescenta tempo e custo.
5. Gerar a resposta
Os trechos escolhidos entram no prompt, junto com a sua pergunta e uma instrução do tipo “responda com base nos documentos abaixo e indique de onde tirou cada informação”. O modelo então escreve a resposta.
O que o artigo original mostrou
No artigo de 2020, o RAG foi testado em tarefas que exigem muito conhecimento factual. Os autores relatam desempenho de ponta nas tarefas de perguntas e respostas de domínio aberto avaliadas, superando modelos que dependiam só da memória paramétrica.
Em uma avaliação humana sobre geração de perguntas no estilo do programa Jeopardy, os avaliadores consideraram o texto do RAG mais factual em 42,7% dos casos, contra 7,1% em que o modelo sem recuperação (BART) foi considerado mais factual.
O experimento mais didático foi a troca de índice. Os autores montaram um índice com a Wikipédia de 2016 e compararam com o de 2018, perguntando quem ocupava cargos de líderes mundiais que mudaram nesse intervalo. Com o índice de 2016, o sistema acertou 70% dos líderes de 2016; com o de 2018, 68% dos de 2018. Com o índice “errado” para a época, os acertos caíram para 12% e 4%. A conclusão dos autores: dá para atualizar o conhecimento do sistema trocando os documentos, sem retreinar o modelo.
Vale um cuidado. No artigo, a parte de busca e o modelo gerador eram treinados juntos. Em muitas aplicações atuais, como a descrita pela Anthropic, o modelo não é retreinado: a busca é montada à parte, e os trechos encontrados são simplesmente colocados no prompt.
RAG ou colocar tudo no contexto?
Modelos recentes aceitam prompts muito longos. Então surge a dúvida: por que não colar todos os documentos de uma vez?
Para bases pequenas, isso pode fazer sentido. A Anthropic sugere que, se a base de conhecimento tiver menos de cerca de 200 mil tokens (algo como 500 páginas), dá para incluí-la inteira no prompt, usando cache para reduzir custo e tempo. Esse número reflete a orientação da empresa em 2024 e depende do modelo usado.
Contexto longo, porém, não garante leitura atenta. O estudo Lost in the Middle, de Nelson Liu e coautores (2023), mostrou que o desempenho dos modelos testados costuma ser maior quando a informação relevante está no início ou no fim do texto de entrada, e cai quando está no meio. Os autores concluem que os modelos avaliados não usam de forma confiável toda a informação de contextos longos. O tema está em contexto e memória em IA.
Na avaliação da redação, a escolha é prática: bases pequenas e estáveis cabem no contexto; bases grandes, que mudam com frequência ou exigem controle de acesso, pedem RAG.
Onde o RAG falha
RAG reduz o problema de respostas sem fundamento, mas não o elimina. Os pontos de falha mais comuns são estes.
A busca traz o trecho errado
Se o trecho certo não for recuperado, o modelo não tem como usá-lo. A Anthropic mostra um caso típico: um trecho dizendo “a receita da empresa cresceu 3% em relação ao trimestre anterior” perde o sentido quando separado do documento, porque não diz qual empresa nem qual trimestre.
Nos testes da própria Anthropic, a taxa de falha de recuperação (quando o trecho necessário não aparece entre os 20 primeiros) foi de 5,7% no método tradicional. Acrescentar a cada trecho um resumo do contexto, combinar com BM25 e usar reordenação reduziu essa taxa em 67%, para 1,9%. São resultados divulgados pela empresa com os dados dela, não uma medida geral do RAG.
O modelo ignora ou distorce o trecho certo
Mesmo com o documento correto no prompt, o modelo pode errar, misturar informações ou completar com algo inventado. É a chamada alucinação. O efeito “perdido no meio”, descrito acima, também vale quando muitos trechos são enviados de uma vez.
Os documentos estão errados ou desatualizados
O RAG responde com base no que encontra. Se a base tem versões antigas de uma política, ou dois documentos que se contradizem, a resposta herda o problema. Na avaliação da redação, manter a base organizada é tão importante quanto escolher o modelo.
Documentos podem conter ataques
Um documento recuperado é texto que entra no prompt. O artigo de Greshake e coautores (2023) descreve a injeção de prompt indireta: um atacante planta instruções em dados que provavelmente serão recuperados pela aplicação, sem precisar acessar o sistema diretamente. Se a sua base aceita arquivos de terceiros, como currículos, e-mails ou páginas da web, esse risco é concreto.
Permissões e privacidade
Na avaliação da redação, a busca precisa respeitar quem pode ver o quê. Se o índice mistura documentos de todos os setores, uma pergunta inocente pode trazer à tona um trecho confidencial.
Custo
Cada pergunta passa a incluir os trechos recuperados, e mais texto no prompt significa mais tokens cobrados. Etapas extras, como a reordenação, acrescentam tempo e custo, como observa a Anthropic.
Como avaliar um sistema de RAG
Uma boa prática é medir as duas partes separadamente:
- A busca: para um conjunto de perguntas de teste com resposta conhecida, o trecho certo aparece entre os primeiros resultados? É o tipo de medida que a Anthropic usa nos testes citados.
- A resposta: o texto final está correto, é fiel aos trechos e cita a fonte certa?
Peça sempre que o sistema indique de qual documento tirou cada informação, e confira por amostragem. Critérios para essa checagem estão em como avaliar respostas de IA. A forma de instruir o modelo também conta; veja engenharia de prompts.
O que levar deste texto
RAG é uma forma de dar ao modelo acesso a documentos que ele não conhece: buscar os trechos relevantes a cada pergunta e entregá-los junto com o prompt. A ideia foi formalizada em 2020 e mostrou uma vantagem clara, a de atualizar o conhecimento trocando documentos em vez de retreinar o modelo.
A técnica depende de uma corrente de etapas, e cada uma pode falhar: a divisão dos textos, a busca, a leitura do modelo e a qualidade da própria base. Trate as respostas como um bom ponto de partida, verifique as fontes citadas e proteja a base contra conteúdo malicioso.
Fontes
- Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks, arXiv (Lewis et al.; aceito na NeurIPS 2020). Publicado em 22 de maio de 2020 · Acesso em 8 de outubro de 2026
- Vector embeddings, OpenAI (documentação da API). Acesso em 8 de outubro de 2026
- Introducing Contextual Retrieval, Anthropic. Publicado em 19 de setembro de 2024 · Acesso em 8 de outubro de 2026
- Lost in the Middle: How Language Models Use Long Contexts, arXiv (Liu et al.; Transactions of the ACL). Publicado em 6 de julho de 2023 · Acesso em 8 de outubro de 2026
- Not what you've signed up for: Compromising Real-World LLM-Integrated Applications with Indirect Prompt Injection, arXiv (Greshake, Abdelnabi, Mishra, Endres, Holz, Fritz). Publicado em 23 de fevereiro de 2023 · Acesso em 8 de outubro de 2026