Chat Trigger 节点#
在构建聊天机器人和其他聊天界面的 AI 工作流时,使用 Chat Trigger 节点。您可以配置用户如何访问聊天,使用 n8n 提供的界面之一或您自己的界面。您可以添加身份验证。
必须连接一个 agent 或 chain 根节点。
工作流执行用量
发送到 Chat Trigger 的每条消息都会执行您的工作流。这意味着用户发送 10 条消息的一次对话会使用您执行额度中的 10 次执行。请查看您的付费计划了解额度详情。
手动聊天触发器
从 1.24.0 版本开始,该节点取代了 Manual Chat Trigger 节点。
节点参数#
公开聊天访问权限#
设置聊天是否应公开可用(开启)或仅通过手动聊天界面可用(关闭)。
在构建工作流时请保持关闭。当您准备激活工作流并允许用户访问聊天时再开启。
模式#
选择用户访问聊天的方式。可选:
- 托管聊天:使用 n8n 托管的聊天界面。推荐大多数用户使用,因为您可以通过节点选项配置界面,无需进行其他设置。
- 嵌入式聊天:此选项需要您创建自己的聊天界面。您可以使用 n8n 的聊天小部件或自行构建。您的聊天界面必须调用节点中聊天 URL 显示的 webhook 地址。
认证方式#
选择是否以及如何限制对聊天的访问权限。可选方案包括:
- 无:聊天不使用认证。任何人都可以使用聊天功能。
- 基础认证:聊天使用基础认证。
- 选择或创建一个包含用户名和密码的基础认证凭证。所有用户必须使用相同的用户名和密码。
- n8n用户认证:只有登录了n8n账户的用户才能使用聊天功能。
初始消息#
此参数仅在您使用托管聊天时可用。用于配置用户访问页面时n8n聊天界面显示的初始消息。
节点选项#
可用选项取决于聊天模式。
托管聊天选项#
允许的来源(CORS)#
设置可以访问聊天URL的来源。输入允许进行跨域非预检请求的URL列表(以逗号分隔)。
使用*
(默认值)允许所有来源。
输入框占位符、标题和副标题#
为聊天界面中的这些元素输入文本内容。
加载历史会话#
选择是否加载之前聊天会话中的消息。
如果选择关闭以外的任何选项,必须将Chat触发器和使用的Agent连接到记忆子节点。当您将加载历史会话设置为从记忆加载时,Chat触发器上会出现记忆连接器。n8n建议将Chat触发器和Agent都连接到同一个记忆子节点,这样可以确保两个节点使用单一真实数据源。
响应模式#
当构建包含聊天处理代理或链之后步骤的工作流时,使用此选项。可选模式:
- 当最后节点完成时:Chat Trigger 节点返回工作流中最后执行节点的响应代码和数据输出。
- 使用 'Respond to Webhook' 节点:Chat Trigger 节点按照 Respond to Webhook 节点中的定义进行响应。
需要点击按钮开始聊天#
设置是否在聊天界面显示新对话按钮(开启)或不显示(关闭)。
嵌入式聊天选项#
允许的来源 (CORS)#
设置可以访问聊天 URL 的来源。输入允许进行跨域非预检请求的 URL 列表(以逗号分隔)。
使用 *
(默认值)允许所有来源。
加载历史会话#
选择是否加载之前聊天会话的消息。
如果选择关闭以外的任何选项,必须将 Chat Trigger 和使用的 Agent 连接到内存子节点。当设置加载历史会话为从内存加载时,Chat Trigger 上会出现内存连接器。n8n 建议将 Chat Trigger 和 Agent 都连接到同一个内存子节点,这能确保两个节点使用单一数据源。
响应模式#
当构建包含聊天处理代理或链之后步骤的工作流时,使用此选项。可选模式:
- 当最后一个节点完成时:Chat Trigger 节点返回响应代码和工作流中最后执行节点的数据输出。
- 使用 'Respond to Webhook' 节点:Chat Trigger 节点按照 Respond to Webhook 节点中的定义进行响应。
模板与示例#
相关资源#
查看 n8n 的高级 AI 文档。
手动设置聊天响应#
当您不希望直接将 Agent 或 Chain 节点的输出发送给用户时,需要手动设置聊天响应。您可能需要获取 Agent 或 Chain 节点的输出,在发送回用户之前对其进行修改或进行其他处理。
在基础工作流中,Agent 和 Chain 节点会输出名为 output
或 text
的参数,Chat Trigger 会将该参数的值作为聊天响应发送给用户。
如果需要手动创建发送给用户的响应,您必须创建一个名为 text
或 output
的参数。如果使用其他参数名,Chat Trigger 会将整个对象作为响应发送,而不仅仅是参数值。
常见问题#
关于常见问题或错误及其解决方案,请参阅 常见问题。