O que é a Geração Aumentada por Recuperação (RAG)?

A RAG combina um modelo de linguagem com um passo de pesquisa em documentos, para que as respostas sejam fundamentadas em fontes recuperadas e não apenas na memória treinada do modelo.

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.

You might also like

Artigos relacionados