AutomationFlowsAI & RAG › Tool Search Products

Tool Search Products

tool_search_products. Uses executeWorkflowTrigger, embeddingsOpenAi, vectorStoreQdrant. Event-driven trigger; 4 nodes.

Event trigger★★★★☆ complexityAI-powered4 nodesExecute Workflow TriggerOpenAI EmbeddingsQdrant Vector Store
AI & RAG Trigger: Event Nodes: 4 Complexity: ★★★★☆ AI nodes: yes Added:

This workflow follows the OpenAI Embeddings → Execute Workflow Trigger recipe pattern — see all workflows that pair these two integrations.

The workflow JSON

Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →

Download .json
{
  "name": "tool_search_products",
  "nodes": [
    {
      "id": "Start",
      "name": "Start",
      "type": "n8n-nodes-base.executeWorkflowTrigger",
      "typeVersion": 1,
      "position": [
        -460,
        120
      ],
      "parameters": {}
    },
    {
      "id": "Embed Query",
      "name": "Embed Query",
      "type": "@n8n/n8n-nodes-langchain.embeddingsOpenAi",
      "typeVersion": 1,
      "position": [
        -220,
        120
      ],
      "parameters": {
        "model": "text-embedding-3-small",
        "text": "={{ $json.query }}"
      }
    },
    {
      "id": "Qdrant Search",
      "name": "Qdrant Search",
      "type": "@n8n/n8n-nodes-langchain.vectorStoreQdrant",
      "typeVersion": 1,
      "position": [
        20,
        120
      ],
      "parameters": {
        "operation": "retrieve",
        "collection": "products",
        "topK": 5,
        "includeMetadata": true
      }
    },
    {
      "id": "Format",
      "name": "Format",
      "type": "n8n-nodes-base.code",
      "typeVersion": 2,
      "position": [
        260,
        120
      ],
      "parameters": {
        "jsCode": "const rows = $json.matches || [];\nreturn [{ results: rows.map(r => ({ id: r.payload?.id, name: r.payload?.name, category: r.payload?.category, price: r.payload?.price, description: r.payload?.description, score: r.score })) }];"
      }
    }
  ],
  "connections": {
    "Start": {
      "main": [
        [
          {
            "node": "Embed Query",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Embed Query": {
      "main": [
        [
          {
            "node": "Qdrant Search",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Qdrant Search": {
      "main": [
        [
          {
            "node": "Format",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "active": false
}
Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

About this workflow

tool_search_products. Uses executeWorkflowTrigger, embeddingsOpenAi, vectorStoreQdrant. Event-driven trigger; 4 nodes.

Source: https://github.com/ogu83/n8n-ai-agent-lab/blob/main/ep3-rag-pipeline/workflows/tool_search_products.json — original creator credit. Request a take-down →

More AI & RAG workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

AI & RAG

Agent IA Projet Client. Uses executeWorkflowTrigger, lmChatOpenAi, toolWorkflow, vectorStoreQdrant. Event-driven trigger; 79 nodes.

Execute Workflow Trigger, OpenAI Chat, Tool Workflow +16
AI & RAG

I originally started to template to ask questions on the "n8n @ scale office-hours" livestream videos but then extended it to include the latest videos on the official channel.

HTTP Request, Qdrant Vector Store, Document Default Data Loader +7
AI & RAG

Code Extractfromfile. Uses manualTrigger, sort, httpRequest, compression. Event-driven trigger; 50 nodes.

HTTP Request, Compression, Edit Image +15
AI & RAG

2464. Uses httpRequest, compression, editImage, documentDefaultDataLoader. Event-driven trigger; 50 nodes.

HTTP Request, Compression, Edit Image +15
AI & RAG

Workflow 2464. Uses httpRequest, compression, editImage, documentDefaultDataLoader. Event-driven trigger; 50 nodes.

HTTP Request, Compression, Edit Image +15