故障排查GitHub issue2 分钟阅读排错/错误码

FastGPT子应用全局变量传递至父级应用的排错方法

需求为在收到子应用的AI回复后,将子应用中的全局变量传递至父级应用复用,但该操作始终无法成功。部分用户反馈不同部署版本存在功能支持差异,且通过合成JSON返回的方案依赖大模型输出格式,格式错误会导致传递失败。

现象

需求为在收到子应用的AI回复后,将子应用中的全局变量传递至父级应用复用,但该操作始终无法成功。部分用户反馈不同部署版本存在功能支持差异,且通过合成JSON返回的方案依赖大模型输出格式,格式错误会导致传递失败。

可能原因

  1. 私有部署版本未内置全局变量从子应用传递至父级的功能;
  2. 采用合成JSON返回的方案时,需依赖大模型的输出格式正确性,格式不符合要求会导致解析失败;
  3. 部分版本中全局变量使用中文命名可能引发异常。

排查步骤

  1. 记录当前使用的FastGPT私有部署版本号;
  2. 检查是否尝试过合成JSON返回的方案,确认是否因大模型输出格式错误导致失败;
  3. 核对全局变量的命名,若使用4.9版本需避免使用中文命名。

解决与验证

  1. 若使用4.9版本,可通过以下方式实现:父工作流设置全局变量,子工作流设置同名全局变量,在子工作流中更新该变量,父工作流引入子工作流,同时将子工作流的该变量设置为父工作流的全局变量;
  2. 若使用4.13版本,该全局变量传递功能暂不支持,需按实际环境确认替代方案;
  3. 验证方式:触发子工作流后,查看父工作流是否能获取到子工作流更新后的全局变量值。

来源: FastGPT GitHub issue #2900