An extendable RAG template to build powerful, explainable AI assistants — with query understanding, semantic metadata, and support for free-tier tools like Gemini, Gemma and Supabase.
This workflow helps you build smart, production-ready RAG agents that go far beyond basic document Q&A.
It includes:
✅ File ingestion and chunking
✅ Asynchronous LLM-powered enrichment
✅ Filterable metadata-based search
✅ Gemma-based query understanding and generation
✅ Cohere re-ranking
✅ Memory persistence via Postgres
Everything is modular, low-cost, and designed to run even with free-tier LLMs and vector databases.
Whether you want to build a chatbot, internal knowledge assistant, documentation search engine, or a filtered content explorer — this is your foundation.
This workflow is divided into 3 pipelines:
|Tool|Use|
|-|-|-|
|Supabase w/ PostreSQL|Vector DB + storage|
|Google Gemini/Gemma|Embeddings & LLM|
|Cohere API|Re-ranking|
|PostgreSQL|Chat memory|
Swap extractFromFile with Notion/Google Drive integrations
Extend Metadata Obtention prompt to fit your domain (e.g., financial, legal)
Replace LLMs with OpenAI, Mistral, or Ollama
Replace Postgre Chat Memory with Simple Memory or any other
Use a webhook instead of a form to automate ingestion
Connect to Telegram/Slack UI with a few extra nodes
Company knowledge base bot (internal docs, SOPs)
Educational assistant with smart filtering (by topic or level)
Legal or policy assistant that cites source sections
Product documentation Q&A with multi-language support
Training material assistant that highlights risks/examples
Content Generation
Deploy a modular RAG assistant using n8n, Supabase, and Gemini — fully customizable and almost free to run.
Use any internal documents, manuals, or reports in **PDF **format.
Optional: Add Google Drive integration to automate ingestion.
Create a free Supabase project
Use the table creation queries included in the workflow to set up your schema.
Add your *supabaseUrl *and *supabaseKey *in your n8n credentials.
💡 Pro Tip:
Make sure you match the embedding dimensions to your model.
This workflow uses Gemini text-embedding-04 (768-dim) — if switching to OpenAI, change your table vector size to 1536.
Use Gemini/Gemma for embeddings and optional metadata enrichment.
Or deploy locally for lightweight async LLM processing (via Ollama/HuggingFace).
Open n8n (self-hosted or cloud).
Import the workflow file and paste your credentials.
You’re ready to ingest, enrich, and query your document base.
This project is open, modular, and evolving — just like great workflows should be :).
If you’ve tried it, built on top of it, or have suggestions for improvement, I’d genuinely love to hear from you. Let’s share ideas, collaborate, or just connect as part of the n8n builder community.