Building RAG chatbot for movie recommendations with Qdrant and Open AI
Needs changesWhat this workflow does
This AI workflow has 25 nodes and runs manually, when you click “Execute workflow” (plus 2 other triggers). Along the way it connects GitHub, Embeddings OpenAI, Qdrant Vector Store and OpenAI Chat Model. It also calls api.openai.com and edcc6735-2ffb-484f-b735-3467043828fe.europe-west3-0.gcp.cloud.qdrant.io:6333 over HTTP.
How it runs
Trigger: Manually, when you click “Execute workflow” (plus 2 other triggers).
- GitHub: get (file)
- AI Agent: runs an AI agent, with model: OpenAI Chat Model; 1 tool (Call n8n Workflow Tool); memory: Window Buffer Memory
- Embedding Recommendation Request with Open AI (HTTP Request): calls api.openai.com (POST)
- Embedding Anti-Recommendation Request with Open AI (HTTP Request): calls api.openai.com (POST)
- Extract from File: extracts data from a file
- Extracting Embedding (Edit Fields (Set)): sets 1 field: positive_example
- Extracting Embedding (Edit Fields (Set)): sets 1 field: negative_example
- Qdrant Vector Store: stores documents in the Qdrant vector store, with embeddings: Embeddings OpenAI; document loader: Default Data Loader
- Merge: merges the data from its input branches
- Calling Qdrant Recommendation API (HTTP Request): calls edcc6735-2ffb-484f-b735-3467043828fe.europe-west3-0.gcp.cloud.qdrant.io:6333 (POST)
…plus 6 more steps. See the full node list below.
Services it uses
HTTP calls to: api.openai.com, edcc6735-2ffb-484f-b735-3467043828fe.europe-west3-0.gcp.cloud.qdrant.io:6333
Before you upgrade to n8n 3.0
1 thing in this workflow is removed in n8n 3.0. Fix it before you upgrade:
- AI Agent v1 (old agent modes) in AI Agent (v1.6): replace with Latest AI Agent node (Tools Agent). For SQL Agent, use a Postgres or MySQL tool with a recent AI Agent.
| Removed in 3.0 | Replace with |
|---|---|
| AI Agent v1 (old agent modes) AI Agent (v1.6) | Latest AI Agent node (Tools Agent). For SQL Agent, use a Postgres or MySQL tool with a recent AI Agent. |
Nodes used (18)
- Manual Trigger
n8n-nodes-base.manualTrigger - GitHub
n8n-nodes-base.github - Extract from File
n8n-nodes-base.extractFromFile - Embeddings OpenAI
@n8n/n8n-nodes-langchain.embeddingsOpenAi - Default Data Loader
@n8n/n8n-nodes-langchain.documentDefaultDataLoader - Token Splitter
@n8n/n8n-nodes-langchain.textSplitterTokenSplitter - Qdrant Vector Store
@n8n/n8n-nodes-langchain.vectorStoreQdrant - Chat Trigger
@n8n/n8n-nodes-langchain.chatTrigger - OpenAI Chat Model
@n8n/n8n-nodes-langchain.lmChatOpenAi - Call n8n Workflow Tool
@n8n/n8n-nodes-langchain.toolWorkflow - Simple Memory
@n8n/n8n-nodes-langchain.memoryBufferWindow - Execute Workflow Trigger
n8n-nodes-base.executeWorkflowTrigger - Merge
n8n-nodes-base.merge - Split Out
n8n-nodes-base.splitOut - Aggregate
n8n-nodes-base.aggregate - AI Agent
@n8n/n8n-nodes-langchain.agent - HTTP Request
n8n-nodes-base.httpRequest - Edit Fields (Set)
n8n-nodes-base.set
From the author
Create a recommendation tool without hallucinations based on RAG with the Qdrant Vector database. This example is based on movie recommendations on the IMDB-top1000 dataset. You can provide your wishes and your "big no's" to the chatbot, for example: "A movie…