Build an n8n vector store that retrieves your own documents by meaning, not keywords. Embedding 1,000 docs costs ~1.3 cents; Supabase free-tier storage costs $0. Full node wiring and step-by-step setup inside.
Compare pgvector, Chroma, and Qdrant for local RAG pipelines. Get the three-line decision: already on Postgres, use pgvector; prototyping locally, use Chroma; need scale or heavy filtering, use Qdrant.
Vector search nails meaning but misses exact tokens like SKUs, error codes, and function names. Hybrid search adds a BM25 keyword leg and fuses both with Reciprocal Rank Fusion. Here is when each wins and how to wire it in n8n with Qdrant or pgvector.
In pgvector you choose an index type, and the two real options are HNSW and IVFFlat. With no index, queries do exact search on every row: accurate but slow at scale. Here is the trade-off between the two approximate indexes and how to tune each one.
The n8n Pinecone Vector Store and Supabase Vector Store nodes wire into an agent the same way, but one is a managed service and one is Postgres you run. Here is how their free tiers, cost at scale, latency, and node wiring compare, and when to pick each for RAG.
You assumed more embedding dimensions mean better retrieval, and you are about to over-pay on vector storage for a margin you will never notice. OpenAI's own numbers show text-embedding-3-large at 256 dims beating ada-002 at 1536. Here is what dimensions cost and how to pick a
RAG reranking re-sorts the chunks you already retrieved so the best one rises to the top, but it cannot recover a chunk you never retrieved. Here is what a cross-encoder reranker actually does, when it is worth the latency and cost, the real 2026 options (Cohere, Voyage, BGE),
When your n8n RAG chatbot returns wrong answers, the fix is retrieval, not the model. This guide walks 6 fixable causes: chunking, overlap, top-k, embeddings, metadata filtering, and reranking.
Your n8n RAG bot keeps answering with the wrong client's file. That is not a weak model, it is a missing filter. Here is the two-step metadata plumbing (Default Data Loader on insert, Metadata Filter on retrieval) for PGVector, Qdrant, and Supabase.
Choosing between n8n RAG embeddings comes down to four verifiable axes: dimensions, price per 1M tokens, max input context, and cloud vs local. This guide compares OpenAI, Gemini, and Ollama options so you pick the one you can live with.
Plain RAG embeds chunks that have lost their document context, so 'revenue grew 3%' matches nothing useful. Contextual retrieval writes a short per-chunk context and prepends it before embedding and BM25. Here is the method, the build, and the honest ingest trade-off.
Most "local RAG" setups still send your documents to a cloud embeddings API. This guide closes every leak: local embeddings via Ollama, a self-hosted Qdrant or PGVector store, and a local answering model, all in n8n.