A Geração Aumentada de Recuperação (RAG) é uma técnica avançada de inteligência artificial (IA) concebida para melhorar a qualidade e a fiabilidade das respostas geradas por Modelos de Linguagem de Grande Porte (LLM). Funciona combinando as capacidades de geração de um LLM com um sistema de recuperação de informação. Antes de gerar uma resposta, o sistema RAG começa por recuperar fragmentos de informação relevante de uma fonte de conhecimento pré-definida (como os documentos internos de uma empresa, uma base de dados específica ou a Web). Este contexto recuperado é então fornecido ao LLM juntamente com a consulta original do utilizador, permitindo que o modelo gere respostas mais precisas, actualizadas e baseadas em dados factuais, atenuando assim problemas como alucinações.
Como funciona a Geração Aumentada de Recuperação
O processo RAG envolve normalmente duas fases principais:
- Recuperação: Quando um utilizador fornece um pedido ou uma consulta, o sistema começa por utilizar este dado para pesquisar um grande corpus de documentos ou uma base de dados vetorial. Esta pesquisa tem como objetivo encontrar segmentos de texto ou documentos que contenham informações relevantes para a consulta. Técnicas como a pesquisa semântica são frequentemente utilizadas aqui para encontrar informações contextualmente semelhantes e não apenas correspondências de palavras-chave.
- Geração: A informação relevante recuperada na primeira fase é então combinada com o pedido original do utilizador. Este pedido aumentado, agora rico em contexto específico, é introduzido no LLM. O LLM utiliza tanto a consulta original como o contexto fornecido para sintetizar uma resposta abrangente e factualmente fundamentada. Este processo foi formalmente introduzido em trabalhos de investigação como o artigo Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks.
Benefícios e aplicações
O RAG oferece várias vantagens em relação à utilização de LLMs padrão:
- Maior precisão: Ao basear as respostas em dados externos, o RAG reduz a probabilidade de o LLM gerar informações incorrectas ou fabricadas.
- Acesso a informações actuais: Os sistemas RAG podem aceder a informações actualizadas armazenadas na sua base de conhecimentos, ultrapassando a limitação dos LLM, cujo conhecimento está congelado no momento da sua última formação.
- Conhecimento específico do domínio: Permite que os LLMs forneçam respostas de nível especializado em domínios especializados, recuperando informações de documentos técnicos ou bases de dados específicas.
- Transparência e confiança: Os sistemas RAG podem frequentemente citar as fontes utilizadas para a geração, aumentando a confiança do utilizador e permitindo a verificação dos factos, o que é crucial para a ética da IA.
Exemplos do mundo real:
- Gestão do conhecimento empresarial: As empresas utilizam o RAG para criar chatbots internos que podem responder às perguntas dos funcionários com precisão, recuperando informações de políticas internas, manuais técnicos e relatórios armazenados em plataformas como o SharePoint ou bases de dados de conhecimento dedicadas.
- Automatização do apoio ao cliente: As plataformas de apoio ao cliente tiram partido das RAG para fornecer aos agentes de apoio ou aos chatbots informações relevantes das FAQ, da documentação do produto e dos pedidos de apoio anteriores, permitindo uma resolução mais rápida e precisa das questões dos clientes. Ferramentas como o Zendesk estão a incorporar estas funcionalidades.
RAG vs. Conceitos relacionados
- RAG vs. LLMs padrão: Os LLMs padrão geram respostas baseadas apenas em padrões aprendidos durante o treino. O RAG melhora esta situação ao incorporar dinamicamente informações externas no momento da inferência, conduzindo a resultados mais factuais e contextualmente relevantes.
- RAG vs. Fine-Tuning: O ajuste fino adapta um modelo pré-treinado a tarefas ou domínios específicos, continuando o processo de treino num conjunto de dados mais pequeno e especializado. Embora eficaz, requer recursos computacionais significativos e reciclagem para atualizar o conhecimento. O RAG permite atualizar o conhecimento modificando simplesmente a fonte de dados externa sem voltar a treinar o LLM, tornando-o mais flexível para informações que mudam rapidamente. O RAG e o ajuste fino também podem ser usados em conjunto.
- RAG vs. Engenharia de Prompt: A engenharia de prompts envolve a elaboração cuidadosa do prompt de entrada para orientar a resposta do LLM. O RAG automatiza o processo de fornecer contexto relevante dentro do prompt, recuperando-o de uma fonte externa. Frameworks como LangChain e LlamaIndex fornecem ferramentas para construir pipelines RAG.
O RAG representa um passo significativo para a criação de sistemas de IA mais conhecedores e fiáveis, colmatando a lacuna entre o vasto poder generativo dos LLM e a necessidade de precisão factual. Embora frequentemente associado ao texto, o conceito pode potencialmente estender-se a modelos de aumento como o Ultralytics YOLO através da recuperação de exemplos visuais ou metadados relevantes, embora esta seja ainda uma área de investigação emergente na visão computacional. Plataformas como o Ultralytics HUB facilitam a gestão de modelos e conjuntos de dados que podem potencialmente servir como fontes de conhecimento em futuras aplicações RAG multimodais. Explorar os conjuntos de dados disponíveis pode dar-te uma ideia do tipo de informação estruturada que pode ser útil.