Templates / Build hybrid RAG search over PDFs with Qdrant and Ollama

Build hybrid RAG search over PDFs with Qdrant and Ollama

Unknown

by Christo · 207 views · created 2026-05-31 · Document Extraction, AI RAG

Unknown. This template uses community nodes we can't verify statically. Uses community nodes that can't be verified statically (unverified community packages are off by default in 3.0). Static check, last run 2026-10-19.

Community nodes

These come from third-party npm packages. In n8n 3.0 unverified community packages are off by default (N8N_UNVERIFIED_PACKAGES_ENABLED=false).

Nodes used (16)

Embeddings OllamaQdrant Vector StoreDefault Data LoaderRecursive Character Text Splitter

What it does

Quick overview This workflow ingests a local PDF into Qdrant with Ollama embeddings, then supports hybrid retrieval by querying Qdrant with both dense vectors and BM25 sparse vectors from an n8n chat trigger. How it works 1. Starts manually to read a PDF from disk and extract its text content. 2. Checks whether the Qdrant collection exists and creates it with a 768-dimension dense vector and a BM25-based sparse vector field if needed. 3. Splits the extracted text into chunks, adds metadata, generates dense embeddings with Ollama (nomic-embed-text), and inserts the documents into the Qdrant vector store. 4. Scrolls all stored points from Qdrant, builds a per-point BM25 sparse vector payload from each point’s content, and updates Qdrant vectors without overwriting existing fields. 5. Triggers on an incoming chat message, generates an embedding for the query via Ollama’s embeddings HTTP API, and runs a Qdrant hybrid search that fuses dense and BM25 results using RRF. Setup 1. Configure Qdrant credentials (REST API and Vector Store) and ensure the workflow points to the correct Qdrant URL/collection name (default: collection "testing"). 2. Set up Ollama credentials and ensure the nomic-embed-text:latest model is available, and update the embeddings endpoint URL if your Ollama host is not http://host.docker.internal:11434. 3. Place the source PDF on the n8n host and update the file path in the disk read step (default: /tmp/n8nSelfHostedEnterpriseTermsandConditions.pdf). 4. Enable the chat trigger and use its webhook/chat entry point to send queries into the workflow.

View the original on n8n.io → Check your own copy

Get the weekly “what broke” email

New templates, newly broken ones, and n8n release changes. One short email a week.

Form not loading? Subscribe here.