Conceitos de RAG
RAG combina busca de informacoes (Retrieval) com geracao de texto (Generation). A IA busca contexto relevante na sua base de conhecimento antes de responder, gerando respostas fundamentadas.
LLMs tem conhecimento limitado e desatualizado. RAG permite criar IA especialista no seu dominio, com informacoes precisas e atuais.
Retrieval, Augmentation, Generation, Knowledge base, Context injection.
Fluxo do RAG
Exemplo Pratico
Cliente pergunta: "Qual e a politica de devolucao?" O sistema busca no vetor DB os trechos do manual que falam de devolucao, injeta como contexto no prompt, e o LLM responde com base nas regras reais da empresa.
Embeddings e vetores
Embeddings transformam texto em vetores numericos que capturam significado semantico. Textos com significados similares tem vetores proximos no espaco vetorial.
Embeddings sao a base de busca semantica. Sem entender como funcionam, impossivel implementar RAG corretamente ou debugar problemas.
Text embedding, Vector representation, Semantic similarity, Embedding models.
Como Embeddings Funcionam
[0.12, 0.87, -0.34, ...]
[0.11, 0.85, -0.32, ...]
Similar!
[0.78, -0.23, 0.56, ...]
Diferente
Modelos de Embedding Populares
- - text-embedding-3-small: OpenAI, 1536 dimensoes, barato
- - text-embedding-3-large: OpenAI, 3072 dimensoes, mais preciso
- - voyage-2: Voyage AI, excelente para codigo
- - jina-embeddings-v2: Open source, multilingue
Pinecone como Vector DB
Pinecone e um banco de dados especializado em armazenar e buscar vetores de forma eficiente. Essencial para RAG em escala, com busca em milissegundos.
Vector DB permite busca em milhoes de documentos instantaneamente. Pre-requisito para RAG serio em producao.
Vector database, Index, Upsert, Query, Similarity search.
Estrutura do Pinecone
{
"id": "doc-123",
"values": [0.12, 0.87, -0.34, ...], // vetor embedding
"metadata": {
"text": "Conteudo original do chunk",
"source": "manual-empresa.pdf",
"page": 5,
"date": "2024-01-15"
}
}
Integracao com Make
- Crie conta gratuita no Pinecone (ate 100K vetores)
- Crie um Index com dimensao do seu modelo (ex: 1536)
- Use modulo HTTP no Make para chamar API Pinecone
- Endpoints: /vectors/upsert (gravar), /query (buscar)
Indexando documentos
Processo de dividir documentos em chunks, gerar embeddings para cada um e armazenar no vector DB. Essa preparacao e essencial para busca posterior.
Indexacao correta determina qualidade do RAG. Chunks errados ou muito grandes resultam em respostas ruins ou imprecisas.
Document chunking, Chunk size, Overlap, Metadata, Batch indexing.
Estrategias de Chunking
Simples, funciona bem para maioria dos casos. Use overlap de 10-20%.
Preserva contexto natural do documento. Ideal para manuais e artigos.
Agrupa por significado usando IA. Mais complexo, melhores resultados.
Pipeline de Indexacao no Make
Busca semantica
Buscar documentos por significado, nao apenas palavras-chave. "Como cancelar" encontra trechos sobre "processo de cancelamento" mesmo sem match exato.
Busca tradicional falha com linguagem natural. Busca semantica entende intencao e encontra informacao relevante.
Semantic search, Query embedding, Top-K retrieval, Relevance ranking.
Exemplo de Query no Pinecone
// 1. Gerar embedding da pergunta
pergunta = "Qual o prazo para devolucao?"
embedding = openai.embeddings.create(pergunta)
// 2. Buscar no Pinecone
POST https://index-name.pinecone.io/query
{
"vector": embedding,
"topK": 5,
"includeMetadata": true
}
// 3. Resultado: 5 chunks mais relevantes
[
{"score": 0.92, "text": "O prazo para devolucao e de 30 dias..."},
{"score": 0.87, "text": "Politica de troca e devolucao..."},
...
]
Busca por Palavra-chave
Query: "devolucao"
Nao encontra: "politica de retorno", "trocar produto", "reembolso"
Busca Semantica
Query: "devolucao"
Encontra: "politica de retorno", "trocar produto", "reembolso", "devolver compra"
RAG para emails
Implementar RAG especificamente para base de emails. A IA busca emails anteriores relevantes para dar contexto as respostas.
Aplicacao pratica e valiosa. Respostas podem referenciar: "Como discutimos no email de marco..." baseado em emails reais.
Email indexing, Conversation retrieval, Reply generation, Context relevance.
Fluxo RAG para Emails
- Indexacao: Novo email chega → gera embedding → salva no Pinecone com metadata (remetente, data, assunto)
- Resposta: Email recebido → busca emails similares do mesmo remetente → injeta contexto no prompt
- Geracao: LLM responde considerando historico da conversa
Prompt com Contexto RAG
Voce e um assistente de email. Responda ao email abaixo
considerando o historico de conversas anteriores.
## Emails Anteriores Relevantes:
{chunks_do_pinecone}
## Email Atual:
De: cliente@empresa.com
Assunto: Re: Proposta comercial
Corpo: Gostaria de saber se podemos renegociar os prazos...
## Resposta:
Dicas para RAG de Email
- - Filtre por remetente para buscar apenas emails da mesma conversa
- - Inclua data nos metadados para priorizar emails recentes
- - Remova assinaturas e headers antes de indexar
- - Limite o contexto a 3-5 emails para nao sobrecarregar
Proximo Modulo
3.3 - Assistentes de Voz