{
  "openruna_format": "flow-graph-v1",
  "title": "Building RAG Chatbot for Movie Recommendations with Qdrant and Open AI",
  "slug": "building-rag-chatbot-for-movie-recommendations-with-qdrant-and-open-ai-2",
  "source_filename": "1798_Splitout_GitHub_Create_Webhook.json",
  "nodes": [
    {
      "id": "When clicking ‘Test workflow’",
      "name": "When clicking ‘Test workflow’",
      "integration": "manual",
      "kind": "trigger"
    },
    {
      "id": "GitHub",
      "name": "GitHub",
      "integration": "github",
      "kind": "action"
    },
    {
      "id": "Extract from File",
      "name": "Extract from File",
      "integration": "extractFromFile",
      "kind": "action"
    },
    {
      "id": "Embeddings OpenAI",
      "name": "Embeddings OpenAI",
      "integration": "@n8n/n8n-nodes-langchain.embeddingsOpenAi",
      "kind": "action"
    },
    {
      "id": "Default Data Loader",
      "name": "Default Data Loader",
      "integration": "@n8n/n8n-nodes-langchain.documentDefaultDataLoader",
      "kind": "action"
    },
    {
      "id": "Token Splitter",
      "name": "Token Splitter",
      "integration": "@n8n/n8n-nodes-langchain.textSplitterTokenSplitter",
      "kind": "action"
    },
    {
      "id": "Qdrant Vector Store",
      "name": "Qdrant Vector Store",
      "integration": "@n8n/n8n-nodes-langchain.vectorStoreQdrant",
      "kind": "action"
    },
    {
      "id": "When chat message received",
      "name": "When chat message received",
      "integration": "@n8n/n8n-nodes-langchain.chat",
      "kind": "trigger"
    },
    {
      "id": "OpenAI Chat Model",
      "name": "OpenAI Chat Model",
      "integration": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "kind": "action"
    },
    {
      "id": "Call n8n Workflow Tool",
      "name": "Call n8n Workflow Tool",
      "integration": "@n8n/n8n-nodes-langchain.toolWorkflow",
      "kind": "action"
    },
    {
      "id": "Window Buffer Memory",
      "name": "Window Buffer Memory",
      "integration": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
      "kind": "action"
    },
    {
      "id": "Execute Workflow Trigger",
      "name": "Execute Workflow Trigger",
      "integration": "executeWorkflow",
      "kind": "trigger"
    },
    {
      "id": "Merge",
      "name": "Merge",
      "integration": "merge",
      "kind": "logic"
    },
    {
      "id": "Split Out",
      "name": "Split Out",
      "integration": "splitOut",
      "kind": "logic"
    },
    {
      "id": "Split Out1",
      "name": "Split Out1",
      "integration": "splitOut",
      "kind": "logic"
    },
    {
      "id": "Merge1",
      "name": "Merge1",
      "integration": "merge",
      "kind": "logic"
    },
    {
      "id": "Aggregate",
      "name": "Aggregate",
      "integration": "aggregate",
      "kind": "logic"
    },
    {
      "id": "AI Agent",
      "name": "AI Agent",
      "integration": "@n8n/n8n-nodes-langchain.agent",
      "kind": "action"
    },
    {
      "id": "Embedding Recommendation Request with Open AI",
      "name": "Embedding Recommendation Request with Open AI",
      "integration": "httpRequest",
      "kind": "action"
    },
    {
      "id": "Embedding Anti-Recommendation Request with Open AI",
      "name": "Embedding Anti-Recommendation Request with Open AI",
      "integration": "httpRequest",
      "kind": "action"
    },
    {
      "id": "Extracting Embedding",
      "name": "Extracting Embedding",
      "integration": "set",
      "kind": "logic"
    },
    {
      "id": "Extracting Embedding1",
      "name": "Extracting Embedding1",
      "integration": "set",
      "kind": "logic"
    },
    {
      "id": "Calling Qdrant Recommendation API",
      "name": "Calling Qdrant Recommendation API",
      "integration": "httpRequest",
      "kind": "action"
    },
    {
      "id": "Retrieving Recommended Movies Meta Data",
      "name": "Retrieving Recommended Movies Meta Data",
      "integration": "httpRequest",
      "kind": "action"
    },
    {
      "id": "Selecting Fields Relevant for Agent",
      "name": "Selecting Fields Relevant for Agent",
      "integration": "set",
      "kind": "logic"
    }
  ],
  "edges": [
    {
      "from": "Merge",
      "to": "Calling Qdrant Recommendation API"
    },
    {
      "from": "GitHub",
      "to": "Extract from File"
    },
    {
      "from": "Merge1",
      "to": "Selecting Fields Relevant for Agent"
    },
    {
      "from": "Split Out",
      "to": "Merge1"
    },
    {
      "from": "Split Out1",
      "to": "Merge1"
    },
    {
      "from": "Extract from File",
      "to": "Qdrant Vector Store"
    },
    {
      "from": "Extracting Embedding",
      "to": "Merge"
    },
    {
      "from": "Extracting Embedding1",
      "to": "Merge"
    },
    {
      "from": "Execute Workflow Trigger",
      "to": "Embedding Recommendation Request with Open AI"
    },
    {
      "from": "Execute Workflow Trigger",
      "to": "Embedding Anti-Recommendation Request with Open AI"
    },
    {
      "from": "When chat message received",
      "to": "AI Agent"
    },
    {
      "from": "Calling Qdrant Recommendation API",
      "to": "Retrieving Recommended Movies Meta Data"
    },
    {
      "from": "Calling Qdrant Recommendation API",
      "to": "Split Out1"
    },
    {
      "from": "When clicking ‘Test workflow’",
      "to": "GitHub"
    },
    {
      "from": "Selecting Fields Relevant for Agent",
      "to": "Aggregate"
    },
    {
      "from": "Retrieving Recommended Movies Meta Data",
      "to": "Split Out"
    },
    {
      "from": "Embedding Recommendation Request with Open AI",
      "to": "Extracting Embedding"
    },
    {
      "from": "Embedding Anti-Recommendation Request with Open AI",
      "to": "Extracting Embedding1"
    }
  ]
}