Appearance
创建会话节点
创建会话节点在当前应用中创建一个用于承载连续消息的空会话。节点本身只创建会话对象,不会自动写入用户消息或模型回复;后续可把 conversationId 交给消息节点、会话历史节点或对话流继续处理。
适用场景
- 首次进入应用时,为当前用户建立一个业务会话。
- 按订单、工单、客户或任务主题隔离上下文。
- 在工作流中先创建会话,再写入消息或调用需要会话上下文的后续流程。
- 用稳定的会话名称重复进入同一主题,并复用已经存在的会话。
使用前提与作用域
创建会话属于会话管理操作,执行时必须关联一个应用。资源库工作流试运行时,应在调试配置中选择目标应用;只关联智能体不能替代应用关联。
节点会在“目标应用(项目)+ 当前用户”的作用域内查找和创建会话,并检查当前用户是否有权访问该应用。不同应用或不同用户之间的同名会话互不复用。
IMPORTANT
会话的数据保留、环境隔离和容量策略由部署环境决定。业务流程不要依赖未配置的数量上限或临时数据行为。
添加与配置节点
- 在工作流画布中添加“创建会话”节点。
- 连接需要先执行的上游节点。
- 配置必填输入
conversationName。 - 将
isSuccess、isExisted和conversationId连接到判断、消息或输出节点。 - 试运行时关联目标应用,再检查节点输出。

图中展示创建会话节点固定的输入、输出字段。
输入参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
conversationName | String | 是 | 会话名称。支持填写固定文本,也支持引用上游节点输出。首尾空白会在执行时被去除,去除后不能为空 |
固定值
名称固定且可复用时,可直接填写清晰的业务名称,例如 售后工单-20260824-001。
引用上游变量
需要按业务对象动态隔离会话时,可引用上游节点生成的名称。建议名称中包含稳定业务标识,例如工单号或订单号;不要只使用容易重复的展示标题。
输出参数
| 参数 | 类型 | 说明 |
|---|---|---|
isSuccess | Boolean | 本次查找或创建是否成功。节点执行异常时,流程会进入异常处理,不应只依赖该字段兜底 |
isExisted | Boolean | true 表示当前作用域内已经存在同名会话,本次复用了原会话;false 表示创建了新会话 |
conversationId | String | 新建或复用会话的唯一 ID,供后续消息、历史或业务节点引用 |
成功创建新会话时,典型结果为:
json
{
"isSuccess": true,
"isExisted": false,
"conversationId": "conv_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
}命中同名会话时,节点不会重复创建,而是返回已有会话 ID:
json
{
"isSuccess": true,
"isExisted": true,
"conversationId": "conv_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
}执行逻辑
节点按以下顺序执行:
- 解析
conversationName的固定值或变量引用,并校验结果非空。 - 从运行上下文读取关联应用,校验执行用户对目标应用的访问权限。
- 在目标应用与当前用户的作用域内按名称查询有效会话。
- 如果找到同名会话,返回原
conversationId,并令isExisted=true。 - 如果没有找到,则创建状态为有效的空会话,生成新的
conversationId,并令isExisted=false。
因此,创建会话节点在相同作用域和相同名称下具备幂等复用语义。重复执行并不等于创建多个同名会话。
推荐编排
创建后写入消息
开始 → 创建会话 → 判断 isSuccess → 创建消息 → 结束
后续消息节点应使用本节点输出的 conversationId 或与之对应的会话引用,避免再次通过不稳定的展示文本猜测目标会话。
区分首次创建与再次进入
创建会话 → 判断 isExisted → 首次初始化 / 直接复用 → 后续处理
isExisted=false:可以写入欢迎语、初始化业务状态或建立首条系统记录。isExisted=true:可以直接查询历史消息或继续原主题。
试运行建议
资源库工作流包含创建、修改、删除或查询会话列表节点时,试运行必须关联应用。建议至少执行两次:
- 使用一个未出现过的名称执行,期望
isSuccess=true、isExisted=false,并返回非空conversationId。 - 保持应用、用户和名称不变再次执行,期望
isSuccess=true、isExisted=true,且conversationId与第一次一致。
更换应用或执行用户后,不应假定仍会命中第一次创建的会话。
常见错误与处理
| 现象 | 原因 | 处理 |
|---|---|---|
| 提示需要关联应用 | 调试或运行上下文中没有目标应用,或只关联了智能体 | 在试运行配置中选择应用后重试 |
提示 conversationName 必填 | 输入为空、只含空白,或上游变量没有值 | 检查固定值和变量引用;在上游增加非空校验 |
| 权限校验失败 | 执行用户无权访问目标应用 | 切换到有权限的应用,或由应用管理员授予必要权限 |
isExisted=true | 当前应用和用户下已经存在同名会话 | 需要续接时直接复用;必须新建时生成新的业务名称 |
conversationId 为空或节点异常 | 会话服务没有返回有效 ID,或底层服务执行失败 | 保留运行记录,检查节点错误信息和会话服务日志,不要继续写入消息 |
发布前检查
conversationName非空,并能稳定区分业务主题。- 动态名称引用的上游字段在所有分支上都有值。
- 工作流已关联正确的应用,执行用户拥有访问权限。
- 后续节点使用
conversationId,并处理isExisted两种结果。 - 已验证首次创建与同名复用两条路径。
- 异常分支不会在会话创建失败后继续写入消息。