【n8n教程】:Chat Trigger节点,搭建您的第一个AI聊天机器人

Chat Trigger是n8n中用于构建聊天机器人和对话式AI的关键节点。通过简单的配置,你就可以创建一个可公开访问或嵌入到网站的智能聊天界面,支持多种认证方式和会话管理功能。本教程将带你从零开始,一步步搭建你的第一个AI聊天机器人。


什么是Chat Trigger节点?

Chat Trigger是n8n提供的专门用于构建AI聊天机器人的触发节点。简单来说,它就是聊天机器人的"大门"——负责接收用户的消息,并将其传递给后续的AI处理节点。

Chat Trigger的核心作用

Chat Trigger节点的关键功能包括:

n8n Chat Trigger完整工作流程
n8n Chat Trigger完整工作流程

为什么要用Chat Trigger?

与传统的Webhook触发不同,Chat Trigger专为对话式应用优化:


Chat Trigger的两种部署模式

1. Hosted Chat(托管聊天)— 最简单的选择

适用场景:快速建立AI聊天机器人原型,进行演示
工作原理

配置步骤

  1. 1. 在Chat Trigger节点中,启用 "Make Chat Publicly Available" 开关
  2. 2. 选择 Mode"Hosted Chat"
  3. 3. 配置 Initial Message(初始消息) —— 用户打开页面时看到的欢迎信息
  4. 4. 设置 Title 和 Subtitle —— 自定义聊天界面的标题

优势

2. Embedded Chat(嵌入式聊天)— 更灵活的选择

适用场景:将聊天机器人集成到你的网站或应用
工作原理

配置步骤

  1. 1. 选择 Mode"Embedded Chat"
  2. 2. 复制 Chat URL(Webhook地址)
  3. 3. 在你的网站中添加以下代码:

    
    
    
  <link href="https://cdn.jsdelivr.net/npm/@n8n/chat/dist/style.css" rel="stylesheet" />
<script type="module">

  import
 { createChat } from 'https://cdn.jsdelivr.net/npm/@n8n/chat/dist/chat.bundle.es.js';
  createChat
({
    webhookUrl
: '你的Chat Trigger的Webhook URL'
  });
</script>

优势


认证与安全

Chat Trigger支持多种认证方式,让你根据需求灵活选择:

认证方式说明何时使用
None不需要认证,任何人都可以访问公开聊天机器人、演示项目
Basic Auth使用用户名和密码小型团队、内部使用
n8n User Auth只有登录n8n账户的用户可访问企业应用、私密数据

快速配置认证

在Chat Trigger节点中:

  1. 1. 找到 Authentication 选项
  2. 2. 选择你需要的认证方式
  3. 3. 对于Basic Auth,创建或选择一个包含用户名和密码的凭证
  4. 4. 保存配置

关键配置详解

Response Mode(响应模式)

Chat Trigger提供三种响应模式,影响用户如何接收答复:
1. When Last Node Finishes(等待最后节点完成)

2. Using Response Nodes(使用响应节点)

3. Streaming Response(流式响应)⭐ 推荐

  1. 1. Chat Trigger节点中,设置 Response Mode"Streaming response"
  2. 2. 在AI Agent节点中启用 "Enable Streaming" 选项
  3. 3. 确保n8n版本 ≥ 1.105.2

Load Previous Session(加载历史会话)

这个功能让聊天机器人能够记住之前的对话内容。
三个选项

最佳实践


常见问题与解决方案

根据官方文档和社区反馈,以下是Chat Trigger使用中最常见的四大问题及其解决方案:

❌ 问题1:工作流无法启动错误 "workflow could not be started!"

原因:通常是内存节点配置不当
解决方案

  1. 1. 检查Chat Trigger的 Load Previous Session 是否设置为 "From Memory"
  2. 2. 确保连接了一个Simple Memory节点到Chat Trigger的Memory连接
  3. 3. 关键:连接同一个Memory节点到AI Agent的Memory连接
  4. 4. 在Simple Memory节点中,将 Session ID 设置为 "Connected Chat Trigger Node"

❌ 问题2:无法获取之前的消息

原因:Memory节点配置不一致
解决方案

❌ 问题3:嵌入式聊天无法工作

原因:Webhook URL配置错误或跨域问题
解决方案

  1. 1. 确认复制了正确的Chat URL2. 检查 Allowed Origin (CORS) 设置,添加你的网站域名3. 使用 * 允许所有来源(仅用于测试)4. 确保工作流已激活

❌ 问题4:传入数据到嵌入式Chat

原因:不知道如何传递自定义数据
解决方案
使用 metadata 字段在JSON对象中传递额外信息:


    
    
    
  createChat({
  webhookUrl
: '你的URL',
  metadata
: {
    userId
: '12345',
    userEmail
: 'user@example.com'
  }
});

这些数据会在Chat Trigger的输出中可用。


实战案例:构建你的第一个AI聊天机器人

场景:建立一个简单的FAQ助手

第一步:创建工作流

  1. 1. 登录n8n,点击 "+ New" 创建新工作流
  2. 2. 搜索并添加 Chat Trigger 节点
  3. 3. 在Chat Trigger中: - 启用 "Make Chat Publicly Available"
    • • 选择 "Hosted Chat" 模式
    • • 配置初始消息:欢迎使用FAQ助手!请输入您的问题。

第二步:添加AI Agent

  1. 1. 点击Chat Trigger节点的 "Add node" 按钮
  2. 2. 搜索并选择 AI Agent 节点3. 在AI Agent中: - Agent Type:选择 "Tools Agent"
    • Prompt:选择 "Take from previous node automatically"
    • System Prompt:输入你的机器人指令

示例System Prompt


    
    
    
  你是一个专业的FAQ助手。根据用户的问题,提供清晰、简洁的答案。
如果不知道答案,请诚实地说"我不确定,建议联系客服"。
始终保持友好和专业的语气。

第三步:连接Chat Model

  1. 1. 在AI Agent节点中,点击 Chat Model 连接上的 + 按钮
  2. 2. 选择一个LLM模型(如OpenAI、Google Gemini等)3. 配置模型凭证
  3. 3. 保存

第四步:添加内存支持(可选但推荐)

  1. 1. 在AI Agent节点中,点击 Add optionMemory
  2. 2. 选择 "Window Buffer Memory"(简单易用)3. 保存

第五步:激活与测试

  1. 1. 点击 Save 保存工作流
  2. 2. 点击 Activate 激活工作流
  3. 3. Chat Trigger节点会显示一个可公开访问的链接
  4. 4. 复制链接,在新标签页打开测试

第六步:分享你的聊天机器人

激活后,你会看到Chat Trigger节点上显示一个 Chat URL。这就是你的聊天机器人的公开链接,你可以:


工作流JSON示例

以下是一个完整的可执行工作流示例,展示了Chat Trigger + AI Agent + Memory的基础结构:


    
    
    
  {
  "nodes"
: [
    {

      "parameters"
: {
        "mode"
: "hostedChat",
        "chatInputKey"
: "chatInput",
        "sessionIdKey"
: "sessionId",
        "authentication"
: "none",
        "initialMessages"
: "欢迎!我是您的AI助手。请问有什么我可以帮助您的吗?"
      }
,
      "id"
: "ChatTrigger",
      "name"
: "Chat Trigger",
      "type"
: "n8n-nodes-langchain.chattrigger",
      "typeVersion"
: 1,
      "position"
: [250, 300]
    }
,
    {

      "parameters"
: {
        "agentType"
: "toolsAgent",
        "systemPromptFromPreviousNode"
: true,
        "maxIterations"
: 10
      }
,
      "id"
: "AIAgent",
      "name"
: "AI Agent",
      "type"
: "n8n-nodes-langchain.agent",
      "typeVersion"
: 1,
      "position"
: [450, 300],
      "connections"
: {
        "input"
: [
          {

            "node"
: "ChatTrigger",
            "type"
: "main"
          }

        ]

      }

    }
,
    {

      "parameters"
: {
        "model"
: "gpt-4o-mini",
        "temperature"
: 0.7
      }
,
      "id"
: "ChatModel",
      "name"
: "OpenAI Chat Model",
      "type"
: "n8n-nodes-langchain.lmchat",
      "typeVersion"
: 1,
      "position"
: [650, 300],
      "connections"
: {
        "input"
: [
          {

            "node"
: "AIAgent",
            "type"
: "main"
          }

        ]

      }

    }
,
    {

      "parameters"
: {
        "sessionKey"
: "sessionId",
        "contextWindowLength"
: 5
      }
,
      "id"
: "Memory",
      "name"
: "Simple Memory",
      "type"
: "n8n-nodes-langchain.memorybufferwindow",
      "typeVersion"
: 1,
      "position"
: [650, 450]
    }

  ]
,
  "connections"
: {
    "ChatTrigger"
: {
      "main"
: [
        [

          {

            "node"
: "AIAgent",
            "type"
: "main",
            "index"
: 0
          }

        ]

      ]

    }
,
    "AIAgent"
: {
      "main"
: [
        [

          {

            "node"
: "ChatModel",
            "type"
: "main",
            "index"
: 0
          }

        ]

      ]
,
      "memory"
: [
        [

          {

            "node"
: "Memory",
            "type"
: "main",
            "index"
: 0
          }

        ]

      ]

    }

  }

}

如何使用这个工作流:

  1. 1. 在n8n中创建新工作流
  2. 2. 点击工作流右上角菜单 → "Import from URL""Paste Workflow"
  3. 3. 复制上面的JSON代码
  4. 4. 点击 Import 导入
  5. 5. 配置你的OpenAI API凭证
  6. 6. 点击 Activate 激活
  7. 7. 通过显示的Chat URL访问你的聊天机器人

进阶技巧

💡 Tip 1:实现流式响应(显示实时输出)

配置步骤


    
    
    
  Chat Trigger节点:
1. 设置 Response Mode → "Streaming response"
2. 确保n8n版本 ≥ 1.105.2

AI Agent节点:
1. 点击 "Add option"
2. 启用 "Enable Streaming"

💡 Tip 2:自定义聊天界面样式

在嵌入式聊天中,你可以自定义CSS:


    
    
    
  <style>
  .n8n-chat-widget
 {
    --primary-color
: #007bff;
    --background-color
: #f8f9fa;
  }
</style>

💡 Tip 3:在Chat Trigger中使用变量和表达式

你可以在消息中使用n8n表达式:


    
    
    
  {{ $now.toFormat('yyyy-MM-dd HH:mm:ss') }}  // 显示当前时间
{{ $nodeInputData.userId }}  // 显示用户ID

💡 Tip 4:监控执行情况

每条消息的执行都会消耗你的n8n执行额度。检查你的执行用量:


总结

你现在已经了解了


引用链接

[1] 官方文档: https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-langchain.chattrigger/
[2] n8n系列教程: https://www.undsky.com/blog/?category=n8n%E6%95%99%E7%A8%8B#