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

解决单知识库空引用时知识库搜索引用合并导致流程中断的问题

当使用工具调用配合知识库搜索引用合并功能时,若问题仅关联单个知识库,且该知识库的搜索引用为空,流程会停止,无法继续执行后续的AI对话步骤。例如提问“信息科技课标主要内容,100字总结”,仅关联信息科技课标知识库,此时另一关联项的引用为空,流程直接停止,不会生成最终回答。

现象

当使用工具调用配合知识库搜索引用合并功能时,若问题仅关联单个知识库,且该知识库的搜索引用为空,流程会停止,无法继续执行后续的AI对话步骤。例如提问“信息科技课标主要内容,100字总结”,仅关联信息科技课标知识库,此时另一关联项的引用为空,流程直接停止,不会生成最终回答。

可能原因

知识库搜索引用合并的逻辑要求所有引用都不为空时,才会继续向下执行流程。当存在空引用时,流程会直接终止,无法进入后续的AI对话环节。

排查步骤

  1. 确认当前使用的功能组合为工具调用配合知识库搜索引用合并。
  2. 触发仅关联单个知识库的提问,观察流程是否在知识库搜索引用合并步骤后停止。
  3. 检查该次提问关联的知识库搜索结果,确认是否存在空引用的情况。
  4. 对比多知识库关联且所有引用非空的场景,确认流程是否正常执行。

解决与验证

解决方法为调整知识库搜索引用合并的逻辑,允许存在空引用时流程继续运行。验证步骤如下:

  1. 配置工具调用与知识库搜索引用合并功能。
  2. 发起仅关联单个知识库的提问,且该知识库的搜索引用为空。
  3. 观察流程是否继续执行AI对话并生成回答。
  4. 确认回答内容符合预期,无流程中断情况。例如提问“信息科技课标主要内容,100字总结”,调整逻辑后流程会正常执行并生成对应的总结内容。

来源:FastGPT GitHub issue