O que é Retrieval-Augmented Generation (RAG)?

Retrieval-Augmented Generation (RAG) is an AI architecture that combines a large language model with an external knowledge retrieval step, so the model can look up relevant documents before producing an answer. This grounding in retrieved, up-to-date sources helps reduce hallucinations and lets the system answer questions about information it was not explicitly trained on.

A Geração Aumentada por Recuperação (RAG) é uma técnica para construir sistemas de IA que permite a um modelo de linguagem consultar documentos externos antes de responder a uma pergunta. Em vez de depender apenas do que foi aprendido durante o treino, um pipeline de RAG começa por procurar numa base de conhecimento as passagens relevantes para a consulta do utilizador e, em seguida, alimenta o modelo com essas passagens como contexto. O resultado é uma resposta gerada que é fundamentada em fontes específicas e citáveis, e não apenas nos pesos internos do modelo.

Como funciona a Geração Aumentada por Recuperação

Um sistema de RAG típico tem dois componentes principais: um recuperador e um gerador. O recuperador é, normalmente, um índice de pesquisa vetorial construído a partir de um corpus de documentos. Quando cada documento é adicionado ao índice, um modelo de embeddings converte os seus fragmentos em vetores numéricos; o mesmo modelo incorpora a consulta do utilizador e uma pesquisa por similaridade (habitualmente uma procura do vizinho mais próximo usando distância cosseno ou produto interno) devolve os fragmentos cujos vetores estão mais próximos da consulta. Os fragmentos com melhor classificação são então inseridos no prompt enviado para o modelo de linguagem grande, frequentemente acompanhado de instruções como "responde usando apenas o contexto fornecido".

Por exemplo, se um utilizador perguntar a um assistente interno da empresa "Qual é a nossa política de licença parental?", o recuperador encontra a secção relevante do manual do colaborador e o modelo de linguagem usa essas passagens para compor uma resposta precisa que cita a política. Este padrão, introduzido no artigo de 2020 de Lewis et al. na Facebook AI Research, separa conhecimento (armazenado no índice) de raciocínio (executado pelo modelo), e é por isso que a abordagem escala bem à medida que o material de origem muda.

Porque é importante

A RAG aborda três problemas persistentes dos modelos de linguagem autónomos. Primeiro, reduz as alucinações porque o modelo está ancorado ao texto recuperado, em vez de improvisar. Segundo, permite que um sistema reflita informação que não existia, ou que mudou, desde o corte de treino do modelo, bastando atualizar o índice. Terceiro, torna as respostas do modelo mais verificáveis: developers e utilizadores podem inspecionar os fragmentos recuperados, citá-los e rastrear qualquer afirmação até ao documento de origem.

Estas propriedades tornam a RAG o padrão de referência para resposta a perguntas em contexto empresarial, copilots de apoio ao cliente, pesquisa jurídica e de conformidade, e assistentes de IA que precisam de operar sobre dados privados ou proprietários sem retreinar o modelo subjacente.

Tipos e padrões-chave

  • RAG ingénua (ou "Retrieve-and-Read"): um único passo de recuperação alimenta os melhores k fragmentos diretamente no prompt do gerador.
  • RAG avançada: acrescenta reescrita de consultas, reordenação e filtragem ao nível dos fragmentos antes da geração, para melhorar a precisão.
  • RAG modular: compõe o pipeline a partir de componentes intercambiáveis, como pesquisa web, consulta SQL ou chamadas a APIs, e pode iterar entre recuperação e geração.
  • Graph RAG: constrói um grafo de conhecimento a partir do corpus e recupera subgrafos de entidades relacionadas, o que pode produzir respostas mais contextuais sobre dados ligados.
  • RAG agêntica: deixa o modelo de linguagem decidir quando e o que recuperar, frequentemente através de várias ferramentas, antes de produzir uma resposta final.

Ao desacoplar o armazenamento do conhecimento do motor de raciocínio, a RAG tornou-se um bloco de construção fundamental para aplicações de IA em produção que precisam de ser precisas, atuais e auditáveis. A investigação original está descrita em Lewis et al., "Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks" (2020), e as melhores práticas atuais estão documentadas em frameworks como LlamaIndex e LangChain.

Frequently Asked Questions

How is RAG different from fine-tuning a language model?
Fine-tuning bakes new knowledge and behavior into a model's weights by continuing training on example data, which is expensive and must be repeated whenever the source material changes. RAG leaves the model unchanged and instead supplies relevant documents at inference time, so knowledge can be updated by simply editing the search index. The two approaches are complementary and are often combined in production systems.
What is a vector database and why does RAG need one?
A vector database stores documents (or chunks of them) as numerical embeddings produced by an embedding model. RAG needs it because retrieving by meaning, rather than exact keywords, requires comparing the query's embedding to every candidate's embedding and returning the nearest matches. Specialized vector stores such as FAISS, Pinecone, Weaviate, and pgvector make this nearest-neighbor search fast at scale.
Does RAG eliminate hallucinations?
No system fully eliminates hallucinations, but RAG significantly reduces them by forcing the model to answer from supplied context. Errors can still occur if the retriever returns irrelevant or low-quality chunks, if the source documents themselves are wrong, or if the model misinterprets the retrieved text. Best-practice pipelines add re-ranking, citation checks, and guardrails to catch these cases.
What kind of data can a RAG system search over?
Almost any text-based corpus: PDFs, wikis, help-center articles, code repositories, product catalogs, legal contracts, internal chat logs, and web pages. After appropriate parsing and chunking, the content is embedded and indexed, and the same RAG pipeline can serve many domains. Multimodal RAG extensions can also retrieve images, tables, and audio.