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

解决FastGPT工作流知识库搜索节点重排混入历史对话问题

在FastGPT私有部署V4.11.1版本中,配置了知识库搜索节点且启用重排模型的工作流,会出现第二轮对话将第一轮对话的AI回答作为重排搜索输入内容的问题。

现象

在FastGPT私有部署V4.11.1版本中,配置了知识库搜索节点且启用重排模型的工作流,会出现第二轮对话将第一轮对话的AI回答作为重排搜索输入内容的问题。例如知识库中存在预设问答对:Q=谢谢,A=不客气呢,有其他问题随时联系我哈~,搭建包含该知识库搜索节点的工作流后,第一轮提问该AI回答对应的内容,第二轮提问无关问题时,重排搜索仍使用第一轮的AI回答作为输入,导致最终引用错误的历史AI回答内容,不符合预期的搜索逻辑。

可能原因

暂未明确官方定义的根因,根据问题现象可判断,该问题源于工作流的对话上下文传递逻辑异常,错误将历史对话中生成的AI回答内容,纳入了知识库搜索重排模型的输入参数中,仅使用当前用户的提问内容作为重排输入的逻辑未被正确执行。

排查步骤

  1. 确认当前使用的FastGPT版本为V4.11.1私有部署版本。
  2. 检查目标工作流中的知识库搜索节点配置,确认已启用重排模型功能。
  3. 按照问题描述的复现步骤测试:先发起第一轮提问,触发包含AI回答的对话流程,再发起第二轮与第一轮内容无关的提问,查看重排搜索的实际输入内容与引用结果。
  4. 对比重排搜索的实际输入与预期输入,确认是否存在历史AI回答被混入的情况。

解决与验证

需根据实际工作流的上下文配置进行调整,确保知识库搜索重排模型的输入仅包含当前用户的提问内容,排除历史对话中的AI回答内容。验证时,复现原问题的测试场景,发起第二轮提问后,查看知识库搜索重排的输入是否仅为当前用户问题,引用的知识库内容是否符合预期,确认问题已解决。

来源:FastGPT GitHub issue