现象
编排时发送消息出现报错,该问题仅存在于原有编排的应用中,新建应用无此问题。部分场景下全局变量引用为空,HTTP插件中无法获取全局变量值。工作流中更新全局变量后,本轮对话内更新值生效,后续对话中更新值丢失。工作流内全局变量判空逻辑误走空分支,全局变量更新未成功。测试环境下出现校验错误导致无法发送消息,生产环境下无明显提示。
可能原因
新版本全局状态变量名与描述存在不一致;全局变量更新逻辑存在缺陷,更新后的值仅在本轮对话生效,无法在后续对话保留;原有编排应用的历史变量key名与新版本不匹配。
排查步骤
- 确认当前使用的FastGPT版本,排查是否为存在该问题的新版本。
- 比对原有编排应用的全局变量key名与新版本全局状态变量的说明。
- 测试全局变量更新操作,验证更新后的值是否在多轮对话中正常保留。
- 检查工作流内全局变量的判空逻辑,确认变量更新是否成功。
- 测试HTTP插件中全局变量的引用,确认是否可正常获取变量值。
解决与验证
保存全局变量配置即可同步变量名与描述的差异。针对全局变量更新不持久的问题,官方已确认该缺陷并提交修复(关联#3156),待发布修复补丁后可解决。验证方式:更新全局变量配置后保存,发起多轮对话,确认更新后的全局变量值可正常保留;测试工作流判空逻辑,确认流程可正确匹配变量状态;测试HTTP插件引用全局变量,确认可正常获取值。