RAG (Retrieval-Augmented Generation)
Padrão arquitetural de IA corporativa que enriquece dinamicamente a janela de contexto do modelo com conhecimento verificado e relevante extraído de repositórios externos (bases vetoriais, grafos, índices full-text) antes da geração da resposta final.
1. Visão geral do conceito e o problema sistêmico
A tentativa de "encaixar" todos os documentos internos da empresa nos pesos de uma rede neural por meio de pré-treinamento ou Fine-Tuning é um erro de engenharia fundamental:
- Esquecimento Catastrófico (Catastrophic Forgetting): O modelo pode perder parcialmente suas habilidades básicas de raciocínio ao tentar memorizar artigos corporativos específicos.
- Impossibilidade de Retirada de Dados (Right to be Forgotten / GDPR): Se um documento confidencial for incorporado aos pesos do modelo, ele não poderá ser removido sem um retreinamento completo, cujo custo pode chegar a centenas de milhares de dólares.
- Falta de Segregação de Acesso (RBAC): Um modelo treinado responderá a um funcionário comum com informações sobre os salários dos executivos, pois os dados estão misturados nas matrizes gerais de pesos.
O RAG (Retrieval-Augmented Generation) separa a inteligência computacional do armazenamento de dados: o LLM permanece como um "processador de raciocínio" imparcial, enquanto todo o conhecimento é armazenado em uma base de dados externa sob rigoroso controle de engenharia.
2. Taxonomia arquitetural e modelo mental
A evolução da arquitetura RAG classifica-se em três gerações:
- 1. RAG Ingênuo (Naive RAG): Pipeline linear: Chunking -> Embedding -> Vector DB -> Top-K Nearest Neighbors -> Prompt Context. Apresenta alto nível de ruído, é cego a correspondências exatas e sofre alucinações devido a cortes inadequados no texto.
- 2. RAG Avançado (Advanced RAG):
Inclui etapas antes e depois da recuperação:
- Pre-Retrieval: Expansão da consulta (Query Expansion), geração de respostas hipotéticas (HyDE) e roteamento para diferentes bases de conhecimento.
- Retrieval: Busca híbrida (BM25 + vetores HNSW).
- Post-Retrieval: Filtragem por metadados, compressão de contexto e reranking via cross-encoder.
- 3. RAG Modular e Agentic (Modular / Agentic RAG): O agente decide quando precisa buscar informações, verifica os fatos recuperados (Self-RAG), ajusta a consulta em caso de falta de dados e utiliza índices grafos (GraphRAG) para identificar relações complexas entre entidades.
3. Pipeline técnico e mecânica interna
O ciclo completo de um sistema RAG em produção consiste em dois fluxos:
Fluxo de Indexação (Offline Ingestion Pipeline):
- Parsing & Clean: Extração de texto de PDFs, Markdown, Notion ou SQL, limpeza de marcações.
- Syntax-Aware Chunking: Segmentação baseada em fronteiras lógicas (AST / cabeçalhos) com buffer de sobreposição.
- Vectorization & Indexing: Geração de vetores de embedding e armazenamento na base de dados vetorial com metadados de acesso.
Fluxo de Consulta (Online Query Pipeline):
- Query Transformation: Conversão da pergunta do usuário em uma consulta de busca otimizada.
- Hybrid Retrieval: Recuperação simultânea de candidatos através de vetores e índice de texto completo BM25.
- Re-ranking: Um modelo reranker (Cross-Encoder) ordena os top-30 chunks encontrados e mantém os top-5 mais relevantes.
- Grounded Generation: O LLM recebe um prompt rigoroso com os chunks inseridos e formula uma resposta precisa com citação obrigatória das fontes.
4. Cenários práticos de engenharia em produção
01. Assistente corporativo com segregação de direitos (RBAC)
A consulta do usuário acompanha seu token JWT. A base de dados vetorial filtra documentos na etapa de pre-filtering: WHERE team_id = 'engineering' AND access_level <= user.level. O modelo fisicamente não recebe no contexto informações às quais o usuário não tem acesso.
02. Documentação técnica para engenheiros com links diretos
Um desenvolvedor pergunta: «como configurar a replicação SQLite». O RAG retorna a sequência exata de passos com marcações [fonte: docs/replication.md#L45], permitindo que o engenheiro navegue até o código-fonte original com um clique.
03. Auditoria automatizada de compliance de contratos jurídicos
O sistema verifica um contrato de 100 páginas contra o registro de políticas corporativas, trazendo apenas os pontos relevantes sobre força maior e penalidades contratuais.
5. Armadilhas, erros comuns e segurança
- Envenenamento da Base de Conhecimento (RAG Poisoning): Um atacante faz upload de um arquivo na base interna contendo instruções ocultas (Prompt Injection), fazendo com que o RAG forneça instruções falsas a todos os usuários. Verifique as fontes de conhecimento e utilize guardrails de proteção.
- Lixo na entrada — lixo na saída (Garbage In, Garbage Out): Se você carregar no RAG um PDF mal escaneado cheio de palavras quebradas, nenhum modelo será capaz de fornecer uma resposta adequada.
- Perda de conexão entre chunks: O uso de fragmentação excessivamente fina priva as frases de contexto. Enriqueça sempre os chunks com os cabeçalhos das seções pai.
FAQ: RAG (Retrieval-Augmented Generation)
Termos relacionados
Bancos de Dados Vetoriais (Vector DBs & Busca ANN)
SGBDs especializados e extensões (Qdrant, pgvector, Milvus, Chroma, Turso), otimizados para armazenar milhões de vetores multidimensionais e realizar buscas aproximadas de vizinhos mais próximos (Approximate Nearest Neighbors) em alta velocidade.
Dense Embeddings
A mathematical projection of text, code, or multimodal data into a dense multidimensional numerical vector, where the angle and geometry between coordinates reflect their semantic relatedness.
Estratégias de Chunking de Documentos
Metodologia para decompor documentos extensos e bases de código em fragmentos autossuficientes (chunks) para a geração de embeddings vetoriais e busca precisa em sistemas RAG.
Busca Híbrida (Dense + Sparse Search)
Arquitetura de recuperação em sistemas RAG modernos que combina busca vetorial semântica (Dense Embeddings) com indexação clássica de texto completo por palavras-chave (Sparse / BM25) através de algoritmos de fusão de rankings (RRF).