Skip to content

创建会话节点 ​

创建会话节点在当前应用中创建一个用于承载连续消息的空会话。节点本身只创建会话对象,不会自动写入用户消息或模型回复;后续可把 conversationId 交给消息节点、会话历史节点或对话流继续处理。

适用场景 ​

  • 首次进入应用时,为当前用户建立一个业务会话。
  • 按订单、工单、客户或任务主题隔离上下文。
  • 在工作流中先创建会话,再写入消息或调用需要会话上下文的后续流程。
  • 用稳定的会话名称重复进入同一主题,并复用已经存在的会话。

使用前提与作用域 ​

创建会话属于会话管理操作,执行时必须关联一个应用。资源库工作流试运行时,应在调试配置中选择目标应用;只关联智能体不能替代应用关联。

节点会在“目标应用(项目)+ 当前用户”的作用域内查找和创建会话,并检查当前用户是否有权访问该应用。不同应用或不同用户之间的同名会话互不复用。

IMPORTANT

会话的数据保留、环境隔离和容量策略由部署环境决定。业务流程不要依赖未配置的数量上限或临时数据行为。

添加与配置节点 ​

  1. 在工作流画布中添加“创建会话”节点。
  2. 连接需要先执行的上游节点。
  3. 配置必填输入 conversationName。
  4. 将 isSuccess、isExisted 和 conversationId 连接到判断、消息或输出节点。
  5. 试运行时关联目标应用,再检查节点输出。

创建会话节点的配置面板

图中展示创建会话节点固定的输入、输出字段。

输入参数 ​

参数类型必填说明
conversationNameString是会话名称。支持填写固定文本,也支持引用上游节点输出。首尾空白会在执行时被去除,去除后不能为空

固定值 ​

名称固定且可复用时,可直接填写清晰的业务名称,例如 售后工单-20260824-001。

引用上游变量 ​

需要按业务对象动态隔离会话时,可引用上游节点生成的名称。建议名称中包含稳定业务标识,例如工单号或订单号;不要只使用容易重复的展示标题。

输出参数 ​

参数类型说明
isSuccessBoolean本次查找或创建是否成功。节点执行异常时,流程会进入异常处理,不应只依赖该字段兜底
isExistedBooleantrue 表示当前作用域内已经存在同名会话,本次复用了原会话;false 表示创建了新会话
conversationIdString新建或复用会话的唯一 ID,供后续消息、历史或业务节点引用

成功创建新会话时,典型结果为:

json
{
  "isSuccess": true,
  "isExisted": false,
  "conversationId": "conv_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
}

命中同名会话时,节点不会重复创建,而是返回已有会话 ID:

json
{
  "isSuccess": true,
  "isExisted": true,
  "conversationId": "conv_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
}

执行逻辑 ​

节点按以下顺序执行:

  1. 解析 conversationName 的固定值或变量引用,并校验结果非空。
  2. 从运行上下文读取关联应用,校验执行用户对目标应用的访问权限。
  3. 在目标应用与当前用户的作用域内按名称查询有效会话。
  4. 如果找到同名会话,返回原 conversationId,并令 isExisted=true。
  5. 如果没有找到,则创建状态为有效的空会话,生成新的 conversationId,并令 isExisted=false。

因此,创建会话节点在相同作用域和相同名称下具备幂等复用语义。重复执行并不等于创建多个同名会话。

推荐编排 ​

创建后写入消息 ​

开始 → 创建会话 → 判断 isSuccess → 创建消息 → 结束

后续消息节点应使用本节点输出的 conversationId 或与之对应的会话引用,避免再次通过不稳定的展示文本猜测目标会话。

区分首次创建与再次进入 ​

创建会话 → 判断 isExisted → 首次初始化 / 直接复用 → 后续处理

  • isExisted=false:可以写入欢迎语、初始化业务状态或建立首条系统记录。
  • isExisted=true:可以直接查询历史消息或继续原主题。

试运行建议 ​

资源库工作流包含创建、修改、删除或查询会话列表节点时,试运行必须关联应用。建议至少执行两次:

  1. 使用一个未出现过的名称执行,期望 isSuccess=true、isExisted=false,并返回非空 conversationId。
  2. 保持应用、用户和名称不变再次执行,期望 isSuccess=true、isExisted=true,且 conversationId 与第一次一致。

更换应用或执行用户后,不应假定仍会命中第一次创建的会话。

常见错误与处理 ​

现象原因处理
提示需要关联应用调试或运行上下文中没有目标应用,或只关联了智能体在试运行配置中选择应用后重试
提示 conversationName 必填输入为空、只含空白,或上游变量没有值检查固定值和变量引用;在上游增加非空校验
权限校验失败执行用户无权访问目标应用切换到有权限的应用,或由应用管理员授予必要权限
isExisted=true当前应用和用户下已经存在同名会话需要续接时直接复用;必须新建时生成新的业务名称
conversationId 为空或节点异常会话服务没有返回有效 ID,或底层服务执行失败保留运行记录,检查节点错误信息和会话服务日志,不要继续写入消息

发布前检查 ​

  • conversationName 非空,并能稳定区分业务主题。
  • 动态名称引用的上游字段在所有分支上都有值。
  • 工作流已关联正确的应用,执行用户拥有访问权限。
  • 后续节点使用 conversationId,并处理 isExisted 两种结果。
  • 已验证首次创建与同名复用两条路径。
  • 异常分支不会在会话创建失败后继续写入消息。