聊天触发器节点常见问题#
以下是Chat Trigger节点常见错误与问题及其解决方法或排查步骤。
将数据从网站传递到嵌入式聊天触发器节点#
在网站中嵌入Chat Trigger节点时,您可能希望向Chat Trigger传递额外信息。例如,传递存储在网站cookie中的用户ID。
要实现这一点,请在嵌入聊天窗口中传递给createChat函数的JSON对象中使用metadata字段:
1 2 3 4 5 6 | |
metadata字段可以包含任意数据,这些数据将与其他输出数据一起出现在聊天触发器输出中。从那里,您可以像往常一样使用n8n的数据处理功能从下游节点查询和处理这些数据。
聊天触发器节点未获取历史消息#
在配置聊天触发器节点时,如果不注意会话加载的配置方式,可能会遇到获取历史消息的问题。这通常表现为workflow could not be started!错误。
在聊天触发器中,加载先前会话选项使用sessionID检索会话的先前聊天消息。当您将加载先前会话选项设置为从内存中时,通常最佳做法是在工作流中将相同的内存节点同时连接到聊天触发器和智能体:
- 在您的聊天触发器节点中,将加载先前会话选项设置为从内存中。此选项仅在您已将聊天公开可用时可见。
- 将一个简单记忆节点连接到记忆连接器上。
- 将相同的简单记忆节点连接到您的智能体的记忆连接器上。
- 在简单记忆节点中,将会话ID设置为已连接的聊天触发器节点。
在一种情况下,您可能希望为聊天触发器和智能体附加独立的内存节点,即当您希望将内存节点中的会话ID设置为下方定义时。
如果从表达式中获取会话ID,则该表达式必须适用于与其连接的每个节点。如果表达式与需要内存的每个节点不兼容,可能需要使用单独的内存节点,以便可以基于每个节点自定义会话ID的表达式。