O que é ?
Retrieval-Augmented Generation (RAG) é uma técnica revolucionária no campo da inteligência artificial (IA) que combina dois mundos distintos: a geração de linguagem natural e a recuperação de informações. Com base na integração de modelos de geração de linguagem baseados em redes neurais (como o GPT) com sistemas de recuperação de informações. O objetivo é utilizar fontes externas de dados para enriquecer o processo de geração, fornecendo respostas que são tanto relevantes quanto factuais. Em termos simples, enquanto os modelos de linguagem tradicionais confiam apenas nos dados com os quais foram treinados, o RAG é capaz de buscar informações atualizadas e precisas em bases de dados ou documentos externos. Isso é especialmente útil em situações onde as respostas precisam ser detalhadas e baseadas em fatos recentes ou específicos.
Como funciona?

O funcionamento do RAG pode ser dividido em duas etapas principais:
Geração de Respostas: Os trechos recuperados são integrados ao modelo gerador, que os utiliza como contexto para criar uma resposta em linguagem natural. Isso garante que a resposta seja tanto informativa quanto bem estruturada.
Recuperação de Informações: Nesta etapa, um sistema de busca é usado para encontrar documentos ou trechos de texto relevantes em uma base de dados externa. Esses sistemas de busca podem ser baseados em técnicas como ElasticSearch, Bing ou Azure Cognitive Search.
Exemplo de fluxo RAG:
- Um usuário pergunta: “Quais são os benefícios do uso de IA em sistemas de saúde?”
- O sistema RAG busca em uma base de dados científica artigos relevantes sobre IA e saúde.
- Com as informações recuperadas, o modelo de linguagem gera uma resposta clara e fundamentada.
Aplicação prática:
Uma aplicação prática do RAG pode ser observada na utilização da ferramenta Data Cloud da Salesforce para trabalhar com dados não estruturados, como arquivos PDF.
Imagine o seguinte cenário:
- Indexação dos Dados: Um conjunto de PDFs contendo manuais de produtos, relatórios de vendas e documentação técnica é carregado na Data Cloud. Esses documentos são processados e indexados, criando um repositório pesquisável.
- Recuperação de Informações: Quando um usuário faz uma pergunta, como “Qual é o procedimento para configurar o produto X?”, a ferramenta utiliza algoritmos de busca para encontrar os trechos mais relevantes nos PDFs indexados.
- Geração de Resposta: O modelo de IA da Salesforce, integrado ao Data Cloud, recebe os trechos encontrados e os utiliza para gerar uma resposta clara e contextualizada em linguagem natural.
Por exemplo, ao consultar “Como ativar recursos avançados no produto Y?”, o sistema pode retornar uma resposta como:
“Para ativar os recursos avançados no produto Y, você deve acessar o menu de configurações, selecionar a opção ‘Recursos Avançados’ e seguir as instruções do manual técnico (página 35).”
Essa integração permite que organizações aproveitem melhor seus dados não estruturados, transformando informações dispersas em respostas útil e rápidas.
Casos de Uso
- Serviços de Atendimento ao Cliente: Imagine um chatbot que pode acessar informações de manuais, FAQs e artigos de suporte para responder a perguntas técnicas de clientes.
- Educação: Ferramentas educacionais podem usar o RAG para buscar e apresentar conteúdos relevantes de livros, artigos e estudos em resposta a dúvidas de estudantes.
- Setor Médico: Sistemas RAG podem auxiliar médicos e profissionais da saúde a obterem informações atualizadas sobre medicamentos, estudos clínicos e diagnósticos.
- Pesquisa Científica: Pesquisadores podem usar o RAG para sintetizar informações de artigos acadêmicos em linguagem simples e acessível.
Benefícios do RAG

Precisão
Graças à integração com sistemas de busca, o RAG pode fornecer respostas mais precisas, baseadas em fatos e dados atualizados. Isso elimina o risco de informações desatualizadas ou errôneas frequentemente associadas a modelos de IA treinados em dados estáticos.
Contextualização
A utilização de dados externos permite que o RAG compreenda melhor o contexto de perguntas complexas, garantindo respostas mais completas.
Flexibilidade
O RAG é aplicável em diversos cenários, desde serviços de atendimento ao cliente até sistemas de suporte técnico, educação e pesquisa.
Redução de Custo
Ao evitar a necessidade de treinar modelos gigantes em toda a informação possível, o RAG permite que organizações usem bases de dados específicas de maneira mais eficiente.
Comparativo com Outras Tecnologias
Modelos Tradicionais de Geração de Linguagem
Enquanto os modelos tradicionais de IA, como o GPT, oferecem respostas baseadas em dados treinados, eles podem apresentar limitações em relação a informações não conhecidas no momento do treinamento. O RAG supera essas limitações ao incorporar dados externos em tempo real.
Sistemas de Busca Simples
Os sistemas de busca tradicionais apenas retornam documentos ou links, enquanto o RAG sintetiza e apresenta respostas compreensíveis e contextualizadas, aumentando sua usabilidade.
Implementação de RAG
Agora que já entendemos o conceito, que tal colocar a mão na massa? Vamos mostrar como implementar um sistema de Recuperação Aumentada por Geração (RAG) localmente, usando o poderoso Atlas Vector Search.
Passos Detalhados
1. Preparar o Ambiente
- Pré-requisitos:
- Atlas CLI (v1.14.3 ou superior).
- Ferramentas de linha de comando do MongoDB.
- Python (v3.10 ou posterior).
- Notebook interativo para execução (ex.: VS Code).
- RAM suficiente para evitar problemas de desempenho.
2. Configuração Inicial
- Criar um diretório para o projeto (
local-rag-mongodb
). - Criar um notebook Python no diretório para execução do código.
3. Criação de Sistema Local ou Cluster Atlas
- Opções:
- Local: Criar uma implantação usando o Atlas CLI e carregar dados de amostra (
sample_airbnb.listingsAndReviews
). - Cloud: Utilizar um cluster MongoDB existente.
- Local: Criar uma implantação usando o Atlas CLI e carregar dados de amostra (
4. Geração de Incorporações
- Usar o modelo de código aberto
mxbai-embed-large-v1
para criar vetores baseados nos dados da coleçãosample_airbnb.listingsAndReviews
. - Código para geração e armazenamento de incorporações vetoriais:

5. Criação de Índice Vetorial
- Configurar o Atlas Vector Search Index para habilitar consultas vetoriais. Exemplo de definição de índice:

6. Respostas a Perguntas com LLM Local
- Usar o modelo Mistral 7B baixado via GPT4 para responder perguntas.
- Exemplo de código:

Este sistema permite integrar dados locais com modelos de linguagem para responder a perguntas de maneira contextualizada, sem necessidade de APIs externas.
Futuro do RAG
Com a crescente complexidade das demandas por IA, o RAG promete ser uma solução essencial para oferecer respostas mais confiáveis, ágeis e contextualizadas. Por ser uma técnica adaptável, espera-se que ela seja amplamente adotada em diversos setores, ajudando desde empresas a otimizarem seus serviços até pesquisadores a avançarem suas descobertas com maior agilidade.
Saiba mais:
DataCamp – What is Retrieval-Augmented Generation (RAG)?
DataGeeks – RAG (Retrieval-Augmented Generation)
Elastic – What is Retrieval-Augmented Generation?
Microsoft Learn – Overview of Retrieval-Augmented Generation
Horizonte AI – O que é a técnica RAG na inteligência artificial?
MongoDB Documentation. Build a Local RAG Implementation with Atlas Vector Search
