O que é RAG e como essa técnica funciona
RAG (Retrieval Augmented Generation) é uma técnica utilizada para ampliar a capacidade de resposta de LLMs, combinando o conhecimento interno do modelo de linguagem com sistemas de recuperação de informações.
Ou seja, o modelo busca informações relevantes em bases de dados externas como bancos de dados ou documentos organizacionais antes de gerar uma resposta, permitindo acesso a dados atualizados, especializados ou muito específicos sem a necessidade de re-treinar o modelo.
É uma ideia simples, mas poderosa, com aplicações práticas em qualquer área que se beneficie de um sistema com LLM.
O funcionamento do RAG pode ser entendido como uma parceria entre duas partes principais.
Primeiro, temos o componente de recuperação, que age buscando informações em fontes externas.
Em seguida, entra o componente de geração, onde o modelo de linguagem utiliza as informações recuperadas para criar respostas contextualizadas e de alta qualidade.
Dessa forma, temos uma solução para limitações dos LLMs em termos de precisão, relevância e controle de informações.
Por que RAG é importante?
Modelos de linguagem possuem limitações que comprometem sua confiabilidade, e o RAG pode ser a solução para diversas delas.
RAG é essencial para mitigar as seguintes limitações das LLMs:
- Respostas Fabricadas: Quando o modelo não possui uma resposta adequada, ele inventa informações - aquilo que chamamos de alucinação.
- Desatualização de Dados: Como os LLMs têm uma data de corte em relação ao treinamento, não conseguem acessar eventos ou mudanças recentes, o que reduz sua utilidade em diversos contextos.
- Confusão Terminológica: Termos semelhantes, mas com significados distintos em diferentes contextos, podem levar o modelo a gerar respostas imprecisas.
- Falta de Transparência: Os modelos não são capazes de citar fontes e indicar a origem do texto gerado.
Com a adoção de RAG, os LLMs se tornam ferramentas muito mais confiáveis, uma vez que são capazes de acessar e incorporar conhecimento externo.
Como o RAG funciona na prática?
O processo funciona assim: a pessoa usuária faz uma pergunta, o sistema identifica quais informações externas podem ser úteis, faz a busca e traz os dados para o modelo.
O modelo, então, analisa o conteúdo e produz uma resposta integrada, usando tanto o material recuperado quanto seu próprio repertório.
Esse fluxo garante que as respostas sejam mais precisas e atualizadas. Vamos pensar mais detalhadamente em cada parte desse processo.
O modelo se conecta com bases de conhecimento externas, como APIs, bancos de dados ou documentos organizacionais.
Essas bases são traduzidas para representações matemáticas chamadas embeddings (vetores).
Essas representações permitem que o modelo compare a consulta do usuário com os dados disponíveis e identifique as informações mais relevantes com base em cálculos de similaridade vetorial.
Um chatbot de RH, por exemplo, pode buscar diretamente as políticas específicas de férias ao responder a perguntas como “Quantos dias de férias eu tenho?”.
Em seguida, acontece o enriquecimento do contexto: as informações recuperadas são integradas ao prompt do usuário para que o modelo gere respostas mais específicas e contextualizadas.
Esses dados externos podem ser atualizados constantemente, seja em tempo real ou por processos periódicos, garantindo que o conhecimento utilizado esteja sempre alinhado ao momento atual.
Fonte: Alura

