现象
在FastGPT 4.8.3私有部署版本中,当一个插件输出临时变量后,若先被一个应用调用,随后另一个应用调用该插件时,会获取到上一个应用产生的临时变量数据。用户通过构造包含插件调用、分支判断及自身循环的测试应用,复现了该跨应用变量复用的问题。
可能原因
需按实际环境确认根因,从现象推断该问题与插件临时变量未实现应用级别的隔离有关,不同应用调用同一插件时可能共用了变量存储。
排查步骤
- 确认当前使用的FastGPT版本为4.8.3私有部署版本。
- 创建一个可输出临时变量的插件,再创建两个独立的应用,分别配置调用该插件的流程。
- 参考用户提供的测试逻辑,搭建包含插件调用、临时变量分支判断及插件自身循环的测试应用,复现跨应用变量复用的场景。
- 分别记录两个应用调用插件后获取的临时变量数据,对比是否存在第二个应用获取到第一个应用输出数据的情况。
解决与验证
目前暂无官方公开的修复方案,可通过为每个应用的插件临时变量添加独立命名前缀的方式,临时规避变量复用的问题。验证该方案时,需创建两个独立应用,先后调用目标插件,分别查看两个应用获取的临时变量是否为各自会话的输出数据。若需彻底解决该问题,需等待官方发布对应版本的修复更新。