8
n8n 中文网amn8n.com

RAG 流水线

中级

这是一个Engineering, AI领域的自动化工作流,包含 13 个节点。主要使用 FormTrigger, Agent, ChatTrigger, LmChatOllama, EmbeddingsOllama 等节点,结合人工智能技术实现智能自动化。 基于检索增强生成(RAG)的本地聊天机器人

前置要求
  • Qdrant 服务器连接信息
工作流预览
可视化展示节点连接关系,支持缩放和平移
导出工作流
复制以下 JSON 配置到 n8n 导入,即可使用此工作流
{
  "id": "L9nteAq0NLYqIGxH",
  "meta": {
    "instanceId": "558d88703fb65b2d0e44613bc35916258b0f0bf983c5d4730c00c424b77ca36a",
    "templateCredsSetupCompleted": true
  },
  "name": "RAG 流水线",
  "tags": [],
  "nodes": [
    {
      "id": "a00e5b5b-1cc1-4272-9790-8ffde3c92efb",
      "name": "表单提交时",
      "type": "n8n-nodes-base.formTrigger",
      "position": [
        0,
        0
      ],
      "webhookId": "4e1e20d4-f759-42c8-8439-87b93f43aa7c",
      "parameters": {
        "options": {},
        "formTitle": "Add your file here",
        "formFields": {
          "values": [
            {
              "fieldType": "file",
              "fieldLabel": "File",
              "requiredField": true,
              "acceptFileTypes": ".pdf"
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "1218186e-a93e-4e05-b47e-a395f28cf5f9",
      "name": "Qdrant 向量存储",
      "type": "@n8n/n8n-nodes-langchain.vectorStoreQdrant",
      "position": [
        220,
        0
      ],
      "parameters": {
        "mode": "insert",
        "options": {},
        "qdrantCollection": {
          "__rl": true,
          "mode": "id",
          "value": "rag_collection"
        }
      },
      "credentials": {
        "qdrantApi": {
          "id": "sFfERYppMeBnFNeA",
          "name": "Local QdrantApi database"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "9c7fb858-b571-4626-b976-d3e1995c464b",
      "name": "嵌入 Ollama",
      "type": "@n8n/n8n-nodes-langchain.embeddingsOllama",
      "position": [
        60,
        220
      ],
      "parameters": {
        "model": "mxbai-embed-large:latest"
      },
      "credentials": {
        "ollamaApi": {
          "id": "xHuYe0MDGOs9IpBW",
          "name": "Local Ollama service"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "af14443b-ae01-48dc-8552-5ded7a27fce2",
      "name": "默认数据加载器",
      "type": "@n8n/n8n-nodes-langchain.documentDefaultDataLoader",
      "position": [
        360,
        220
      ],
      "parameters": {
        "options": {},
        "dataType": "binary"
      },
      "typeVersion": 1
    },
    {
      "id": "660380c5-63da-4404-98e6-f9c0ee9aaa90",
      "name": "递归字符文本分割器",
      "type": "@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter",
      "position": [
        460,
        440
      ],
      "parameters": {
        "options": {},
        "chunkSize": 200,
        "chunkOverlap": 50
      },
      "typeVersion": 1
    },
    {
      "id": "49dbe387-751f-4a2e-8803-290bc2c06ec5",
      "name": "便签",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -140,
        -100
      ],
      "parameters": {
        "color": 3,
        "width": 840,
        "height": 700,
        "content": "## 数据摄取"
      },
      "typeVersion": 1
    },
    {
      "id": "45683271-af59-41d0-9e69-af721d566661",
      "name": "当收到聊天消息时",
      "type": "@n8n/n8n-nodes-langchain.chatTrigger",
      "position": [
        940,
        -20
      ],
      "webhookId": "5e56a263-3a40-44bd-bc9d-1cfb3bc2a87d",
      "parameters": {
        "options": {}
      },
      "typeVersion": 1.1
    },
    {
      "id": "af562588-2e8c-4c0b-b041-d6fc8c0affd0",
      "name": "AI 代理",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        1220,
        -20
      ],
      "parameters": {
        "options": {
          "systemMessage": "You are a helpful assistant. You have access to a tool to retrieve data from a semantic database to answer questions. Always provide arguments when you execute the tool"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "4d924b4a-fe07-4606-8385-613d6ea14991",
      "name": "## 🧠 LLM 总结",
      "type": "@n8n/n8n-nodes-langchain.lmChatOllama",
      "position": [
        1060,
        220
      ],
      "parameters": {
        "options": {}
      },
      "credentials": {
        "ollamaApi": {
          "id": "xHuYe0MDGOs9IpBW",
          "name": "Local Ollama service"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "de87b7bb-6fec-4d8f-a77a-25bc3a30a038",
      "name": "简单记忆",
      "type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
      "position": [
        1260,
        220
      ],
      "parameters": {},
      "typeVersion": 1.3
    },
    {
      "id": "16261539-5218-4df1-8b14-915dd3377167",
      "name": "Qdrant 向量存储1",
      "type": "@n8n/n8n-nodes-langchain.vectorStoreQdrant",
      "position": [
        1540,
        240
      ],
      "parameters": {
        "mode": "retrieve-as-tool",
        "options": {},
        "toolName": "retriever",
        "toolDescription": "Retrieve data from a semantic database to answer questions",
        "qdrantCollection": {
          "__rl": true,
          "mode": "id",
          "value": "rag_collection"
        }
      },
      "credentials": {
        "qdrantApi": {
          "id": "sFfERYppMeBnFNeA",
          "name": "Local QdrantApi database"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "57d3be1d-73cd-4464-a3f3-7dd4a3157cdf",
      "name": "嵌入 Ollama1",
      "type": "@n8n/n8n-nodes-langchain.embeddingsOllama",
      "position": [
        1460,
        440
      ],
      "parameters": {
        "model": "mxbai-embed-large:latest"
      },
      "credentials": {
        "ollamaApi": {
          "id": "xHuYe0MDGOs9IpBW",
          "name": "Local Ollama service"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "5919cc58-05f4-42c8-aada-3782a16574d9",
      "name": "便签1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        740,
        -100
      ],
      "parameters": {
        "color": 4,
        "width": 1200,
        "height": 700,
        "content": "## RAG 聊天机器人"
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "895c0261-fbf5-4bb6-9581-4cea3c4d20bd",
  "connections": {
    "Simple Memory": {
      "ai_memory": [
        [
          {
            "node": "AI Agent",
            "type": "ai_memory",
            "index": 0
          }
        ]
      ]
    },
    "Embeddings Ollama": {
      "ai_embedding": [
        [
          {
            "node": "Qdrant Vector Store",
            "type": "ai_embedding",
            "index": 0
          }
        ]
      ]
    },
    "Ollama Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "AI Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Embeddings Ollama1": {
      "ai_embedding": [
        [
          {
            "node": "Qdrant Vector Store1",
            "type": "ai_embedding",
            "index": 0
          }
        ]
      ]
    },
    "On form submission": {
      "main": [
        [
          {
            "node": "Qdrant Vector Store",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Default Data Loader": {
      "ai_document": [
        [
          {
            "node": "Qdrant Vector Store",
            "type": "ai_document",
            "index": 0
          }
        ]
      ]
    },
    "Qdrant Vector Store1": {
      "ai_tool": [
        [
          {
            "node": "AI Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "When chat message received": {
      "main": [
        [
          {
            "node": "AI Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Recursive Character Text Splitter": {
      "ai_textSplitter": [
        [
          {
            "node": "Default Data Loader",
            "type": "ai_textSplitter",
            "index": 0
          }
        ]
      ]
    }
  }
}
常见问题

如何使用这个工作流?

复制上方的 JSON 配置代码,在您的 n8n 实例中创建新工作流并选择「从 JSON 导入」,粘贴配置后根据需要修改凭证设置即可。

这个工作流适合什么场景?

中级 - 工程, 人工智能

需要付费吗?

本工作流完全免费,您可以直接导入使用。但请注意,工作流中使用的第三方服务(如 OpenAI API)可能需要您自行付费。

工作流信息
难度等级
中级
节点数量13
分类2
节点类型10
难度说明

适合有一定经验的用户,包含 6-15 个节点的中等复杂度工作流

外部链接
在 n8n.io 查看

分享此工作流