cerebro-vip INEMA.CLUB
inícioINEMA.N8N

Masterclass completa sobre construção de fluxos RAG + Supabase + n8n,…

INEMA.N8N · 2025-08-25 · ~9 min · ver no Telegram ↗

INEMA

hacks mais práticos para turbinar esse fluxo de RAG + Supabase + n8n e evitar dores de cabeça.


Hacks para RAG + Supabase + n8n

1. Vectorização inteligente

  • Sempre use chunk overlap (200 tokens) para garantir continuidade entre trechos.
  • Para documentos grandes, ajuste o chunk size: – Textos técnicos → 600–800 tokens – Livros ou PDFs extensos → 1000–1200 tokens
  • Grave metadados úteis: file, page, section, url. Isso facilita citar fonte na resposta.

2. Embeddings com custo baixo e alta eficiência

  • Use text-embedding-3-small (1536 dims) para protótipos → barato e rápido.
  • Quando a base crescer muito, migre para text-embedding-3-large (3072 dims) → mais precisão.
  • Se mudar de modelo, não esqueça de ajustar o campo vector(dimensões) na tabela do Supabase.

3. Supabase otimizado

  • Crie índice vetorial com ivfflat para buscas rápidas:

create index documents_embedding_idx on documents using ivfflat (embedding vector_cosine_ops) with (lists = 100); * Ajuste lists para 100–1000 dependendo do tamanho do corpus. * Use Postgres Chat Memory → memória persistente e compartilhada entre apps (escala melhor que memória simples).


4. n8n organizado

  • Nomeie cada nó com clareza: “GDrive Watch”, “Supabase Insert”, “Cohere Re-Rank”, etc.
  • Use Execute Workflow para dividir ingestão (fluxo 1) e perguntas/respostas (fluxo 2). Isso reduz falhas.
  • Ative logging detalhado em n8n → ajuda a rastrear problemas em embeddings ou consultas.

5. Re-Ranker (Cohere)

  • Configure limit = 20 e re-rank Top-K = 4–8 → garante precisão sem gastar tokens extras.
  • Se não usar Cohere, pelo menos retorne mais chunks (15–20) e faça a seleção via prompt do LLM.

6. Webhooks e integração com front-end

  • Conecte o fluxo de resposta a um Webhook → fácil de usar em Bolt ou Lovable.
  • Ao publicar, a URL do webhook muda → sempre atualize no front-end.
  • Use Respond to Webhook ao final para retorno imediato no chat.

7. Prompt engineering dentro do agente

Exemplo de system prompt para o AI Agent:

Você é um assistente especializado. Responda somente com base no contexto retornado pelo Supabase. Sempre cite o arquivo e a página do trecho encontrado nos metadados. Se não houver informação suficiente, peça ao usuário para enviar documentos adicionais.

→ Isso evita “alucinações” e aumenta confiança.


8. Testes e validação

  • Teste sempre com perguntas específicas (“Quais os modelos de \$100M do livro?”).
  • Verifique se a resposta traz metadados corretos.
  • Valide se a memória do Supabase registra o histórico no chat_history.

9. Escalabilidade e custo

  • Para bases pequenas → embeddings small + re-ranker.
  • Para bases grandes → embeddings large + índice otimizado.
  • Para reduzir custo de tokens: use modelos mini (gpt-4.1-mini) para tool calls e só chame modelos maiores na resposta final.

10. Segurança e boas práticas

  • Nunca exponha a Service Role Key em front-end → use backend ou n8n como proxy.
  • Use .envou credenciais seguras no n8n.
  • Faça backup das tabelas (Supabase → Storage + Database dump).

Insert documents e se a tabela/documentos não estão vazios. • Webhook em produção: a URL muda ao publicar; atualize no front-end.

  1. Exemplos prontos

Exemplo de pergunta ao agente • Pergunta: Quais são os modelos de 100 milhões descritos no material? • Esperado: listar os modelos, mencionar trechos-chave e devolver metadados, ex.: fonte: 100m-models.pdf, página 42.

Exemplo de metadados úteis por chunk

{ "source": "gdrive", "file": "100m-models.pdf", "page": 42, "section": "Stage 2", "url": "https://drive.google.com/file/d/..." }

Exemplo de resposta formatada pelo agente • Resumo objetivo do tópico solicitado • 2–4 bullets com insights práticos • Referências entre parênteses usando metadados, ex.: (100m-models.pdf, p.42)

  1. Perguntas e respostas rápidas

Q: Posso usar outra pasta de origem além do Google Drive? A: Sim. Troque o gatilho por e-mail, Dropbox, HTTP Upload etc. O importante é entregar o binário ao nó Insert documents.

Q: Preciso do Re-Ranker da Cohere? A: Não é obrigatório, mas melhora bastante precisão em bases médias/grandes. Em bases pequenas, pode deixar desabilitado.

Q: Como atualizo documentos já ingeridos? A: Reingira o arquivo e use uma chave de deduplicação nos metadados (ex.: hash do conteúdo) ou crie um fluxo de “update” por ID.

Q: Dá para compartilhar a memória entre apps? A: Sim. Postgres Chat Memory vive no Supabase; qualquer app que aponte para as mesmas tabelas pode ler o histórico.

Q: Como reduzir custo de tokens no chat? A: Restringir Top-K final, resumir trechos antes de enviar ao LLM e usar modelos mini para tool-calls e modelos maiores só na resposta final.

Aqui vai um passo a passo direto, em formato checklist, para você reproduzir o fluxo RAG + Supabase + n8n.

Passo a passo RAG + Supabase + n8n

  1. Preparar contas e chaves • Supabase: criar projeto e anotar Project URL, Service Role secret, credenciais Postgres. • OpenAI: chave para embeddings e modelo de chat. • Cohere: chave para Re-Ranker. • n8n: instância rodando e com acesso às credenciais acima. • Google Drive: pasta “Entrada-RAG” para novos PDFs.

  2. Criar a tabela vetorial no Supabase No SQL Editor do projeto, rode:

```create extension if not exists vector;

create table if not exists documents ( id bigserial primary key, content text, metadata jsonb, embedding vector(1536) -- text-embedding-3-small );

create index if not exists documents_embedding_idx on documents using ivfflat (embedding vector_cosine_ops) with (lists = 100);```

Dica: mantenha metadados como {"source":"gdrive","file":"nome.pdf","page":12}.

  1. Fluxo 1 no n8n: ingestão e vetorização Ordem dos nós: a) Google Drive → Watch for new files • Folder: sua pasta “Entrada-RAG” • Event: File created b) Google Drive → Download file • File: ID do nó anterior c) Supabase Vector Store → Insert documents • Credential: Service Role do seu projeto • Host/Project URL: https\://.supabase.co • Table: documents • Data loader: Default • Data type: Binary (arquivo do Drive) • Text splitter: Recursive – Chunk size: 1000 tokens – Chunk overlap: 200 • Embedding: OpenAI → text-embedding-3-small

Teste: solte um PDF na pasta e verifique no Supabase > Table editor > documents se surgem linhas.

  1. Fluxo 2 no n8n: chat com memória + busca vetorial Ordem dos nós: a) Chat Trigger b) AI Agent • Model: gpt-4.1-mini (exige tool calling) • System prompt (exemplo):

Você é um assistente especializado. Responda com base no contexto retornado pela ferramenta Supabase. Cite trechos relevantes e inclua fonte e página quando existirem nos metadados. Se não houver contexto suficiente, peça para o usuário enviar documentos.

• Memory: Postgres Chat Memory – Host/Port/DB/User/Password: pegue em Project Settings > Connect > psql – Table prefix: n8n_chat (padrão OK) – Context window: 45 c) Tool → Supabase Vector Store (busca) • Credential: a mesma do Supabase • Table: documents • Limit: 20 • Re-rank results: habilitado – Re-ranker: Cohere – Top-K final: 4 a 8 (ajuste fino) • Embedding para query: OpenAI text-embedding-3-small d) Webhook Respond (opcional) • Para enviar a resposta do agente a um front-end (Bolt/Lovable) via webhook.

  1. Conectar um front-end (opcional, Bolt/Lovable) • Adicione um Webhook (POST) no início do Fluxo 2. • No app front-end, envie {message: "..."} para a URL do webhook. • Use Respond to Webhook ao final para devolver a resposta do agente.

  2. Validação rápida • Supabase: confira que documents tem novas linhas a cada PDF ingerido. • n8n: nos Executions/Logs do AI Agent, veja a sequência: Chat → Tool call Supabase → Re-rank → Resposta. • Faça uma pergunta específica e confira se os metadados retornam fonte/página esperadas.

  3. Boas práticas e ajustes • Metadados: sempre grave filename, page, section, url. • PDFs com OCR ruim: passe por OCR antes (ex.: Tesseract) para melhorar a extração. • Tuning do splitter: para textos curtos, reduza chunk size (600–800) e mantenha overlap 15–25%. • Embeddings: troque para text-embedding-3-large se precisar de alta precisão (mude vector(3072) e reindexe). • Index ivfflat: ajuste lists conforme tamanho do corpus (100–1000). • Custo/latência: aumente o limit inicial para 20–30 e mantenha Top-K final 4–8 com re-rank da Cohere.

  4. Erros comuns e correções • Falha ao conectar Postgres Memory: confirme host/port/db/user e o password do Database (não confundir com Service Role). • Dimensão do vetor errada: o campo embedding precisa bater com o modelo escolhido (1536 para text-embedding-3-small). • Nada retorna na busca: verifique se embeddings foram criados no

Resumo completo do conteúdo da masterclass sobre RAG & Supabase:

Visão Geral

Como usar Supabase e RAG (Retrieval-Augmented Generation) para criar fluxos de trabalho de automação mais poderosos, escaláveis e monetizáveis. Ele ensina como vectorizar documentos (PDFs, livros, etc.) em Supabase, consultar esses dados de forma eficiente e conectar tudo ao n8n, Bolt e Lovable.

Pontos Principais

  1. Objetivo da Masterclass
  • Ensinar a vectorizar qualquer arquivo no Supabase.
  • Mostrar como recuperar dados via RAG.
  • Conectar Supabase a n8n e a outros apps.
  • Criar fluxos que podem ser usados em negócios e automações de IA.
  1. RAG (Retrieval-Augmented Generation)
  • Resolve a limitação de contexto dos LLMs (que não lembram tudo após certo limite de tokens).
  • Estratégia: dividir documentos em pequenos trechos (chunks), buscar apenas os relevantes e re-ranquear (filtrar os mais úteis).
  • Garante respostas mais rápidas, relevantes e consistentes.
  1. Supabase como Banco de Dados Vetorial
  • Funciona como um Excel turbinado (armazenamento de conteúdo, metadados e embeddings).
  • Estrutura básica: tabela de documentos com ID, conteúdo, metadados e vetores.
  • Permite consultas rápidas e escaláveis.
  1. Integração com n8n
  • Exemplo: monitorar uma pasta no Google Drive.
  • Sempre que um PDF é adicionado, ele é baixado, processado, vectorizado e armazenado no Supabase.
  • Usa “Recursive Text Splitter” para criar chunks de \~1000 tokens com sobreposição de contexto.
  • Conexão feita por credenciais de API e SQL gerado automaticamente (pode usar ChatGPT para escrever SQL).
  1. Ferramentas Extras
  • Re-Ranker (Cohere): seleciona os melhores trechos entre os retornados pela busca.
  • OpenAI Embeddings: gera os vetores dos documentos e consultas.
  • Postgres Chat Memory (Supabase): memória compartilhada e escalável entre múltiplos apps, mais robusta que a memória simples.
  1. Exemplo Prático
  • Vetorização de livros do Alex Hormozi no Supabase.
  • Criação de um agente capaz de responder perguntas sobre os livros, consultando o banco vetorial.
  • Conexão do agente ao Supabase + Cohere Re-Ranker para aumentar precisão.
  • Integração com Bolt/Lovable para interface de chatbot.
  1. Conexão com Webhooks
  • Mensagens e respostas do agente podem ser enviadas via webhook.
  • Permite conectar a outros apps e escalar as automações.

Conclusão

A masterclass mostra:

  • Como vectorizar documentos no Supabase.
  • Como usar RAG para consultas inteligentes.
  • Como integrar tudo ao n8n, Bolt e Lovable.
  • Como adicionar memória escalável e re-rankers para respostas mais confiáveis.

É um guia prático e passo a passo de como transformar dados brutos (PDFs, textos, livros) em agentes inteligentes de IA com memória que podem ser aplicados em qualquer negócio.

Recursos 🧽 RAG & Supabase Masterclass 💸 Modelos de 100 milhões 💸 Ofertas de 100 milhões 💸 Lead Magnets de 100 milhões

🔥 n8n: https://n8n.io 🦸‍♀️ Supabase: https://supabase.com/ 📊 Cohere: https://dashboard.cohere.com/ 🔮 Loveable: https://lovable.dev/ ⚡️Bolt: https://bolt.new/

Masterclass RAG & Supabase

chatgpt.com ↗

1

Recursos

↑ voltar ao topo · ver no Telegram ↗