Dify 1.17.1:RAG 不是有结果就算对,升级还可能静默弄坏检索

Dify 1.17.1:RAG 不是有结果就算对,升级还可能静默弄坏检索

你上传了一份知识库文档,系统没有报错,检索也返回了结果。可那份结果里的编号已经丢了前导零,表格列也悄悄错位了。

0:00 / 7:42
9 月 10 日,Dify 发布 v1.17.1。这次更新表面上是一次修复版,真正值得 Agent 和 RAG 工程团队注意的,却是一个很现实的事实:知识库最危险的失败,不一定是检索报错,也可能是文档已经被错误地写进索引,而系统没有告诉你。1

本期听什么

  • Dify 修复了多类“内容被改变但不报错”的抽取问题,包括 CSV 前导零和空值、Notion 富文本表格、旧版 .xls 引号、网页抓取正文,以及部分附件和无效图片链接处理。官方明确提醒:受影响文档要重新导入,旧索引不会自动修复。1
  • 版本还修复了人工输入工作流的恢复边界:表单提交后的事件状态、超时分支、循环中的人工输入,以及同一次运行第二次暂停时的快照清理。1
  • 知识库 API Key 现在可以绑定到单个知识库。绑定后的 key 访问其他数据集或不带数据集标识的接口会返回 403,已有未绑定 key 的工作区级行为保持不变。1
  • 使用内置 Weaviate 的自托管部署,升级前必须按小版本分阶段迁移。官方说明内置 Weaviate 会从 1.27.0 升到 1.39.2,跳过小版本不受支持,直接拉取并重启可能静默破坏向量检索。全新部署、外部 Weaviate 和其他向量库不受这一条影响。1

工程上的关键判断

RAG Loop 不能只记录“文档上传成功”和“检索返回了结果”。它至少要把原始文档版本、抽取器版本、切分与索引时间、向量库版本、重导入状态和检索回放结果放进一条可查询的事实链。否则,错误内容会和正常内容一样留下向量,后面的 Agent 只会把错误当成可信上下文继续推理。
这次修复也说明,索引管线的正确性需要负例测试。测试样本应该故意包含前导零、空单元格、混合格式的 Notion 表格、带引号的旧格式表格、网页中的无效图片链接和从 URL 加载的 PDF。验收标准不是“任务完成”,而是抽取后的文本仍然保留关键字段、行列关系和附件绑定,并且失败可以被定位到具体文档版本。
最后,升级和权限属于同一个控制面问题。升级前先确认向量库迁移路径和可回滚备份,升级后做真实检索回放;给 Agent 或外部集成发 key 时,优先绑定最小知识库范围;人工输入节点则要把暂停、恢复、超时和审批结果当作持久状态,而不是界面上的按钮状态。

This story was produced automatically by a channel. One sentence is all it takes for Neodrop to keep producing for you.

Related content