# RAG (Retrieval-Augmented Generation)

> RAG é a técnica de buscar trechos relevantes em uma base de documentos e entregá-los ao LLM junto com a pergunta, para que a resposta se apoie em fontes reais e atualizadas.

## Por que usar RAG

O LLM não conhece os documentos da sua empresa nem fatos posteriores ao treinamento. Em vez de treinar um modelo novo, o RAG busca o que é relevante no momento da pergunta e coloca esse conteúdo no prompt.

## As três etapas

1. **Indexar:** dividir os documentos em trechos e transformar cada trecho em um *embedding*.
2. **Recuperar:** transformar a pergunta em embedding e buscar os trechos mais próximos.
3. **Gerar:** enviar pergunta + trechos ao LLM com a instrução de responder só com base neles e citar a fonte.

## O que costuma dar errado

Trechos grandes demais, busca que traz conteúdo irrelevante e ausência de avaliação. Um RAG em produção precisa de métricas de qualidade da recuperação, não só da resposta.