Files
dify/knowledge-fs/docs/knowledge-retrieval-v2-workflow-node.md
T

3.4 KiB
Raw Blame History

Knowledge Retrieval v2 工作流节点

knowledge-retrieval-v2 是 Dify Workflow / Chatflow 中面向 KnowledgeFS 的证据检索节点。 它和原有 knowledge-retrieval 节点并存,不会自动改写或迁移旧 Dataset 节点。

何时使用

在 Workspace 已开启 KnowledgeFS,且工作流需要把可引用的证据交给 LLM、条件分支或 后续代码节点时使用 v2。它调用 evidence-only 检索操作,不在检索阶段生成问答答案。

配置

  • Query 必须引用上游字符串变量,最长 16,000 个 Unicode 字符。
  • 可选 110 个 KnowledgeFS Space,实际执行最多 4 路并发。
  • Mode 留空时,每个 Space 分别使用自己已发布 Profile 的默认模式;也可固定为 fastdeepresearchresearch 使用 Evidence V3:直接问题只做一次证据集判断,复杂问题最多增加一次计划调用;不会再按文档/目录层级重复调用模型。
  • Top N 是多 Space 合并后的输出上限,范围 1–100。每个 Space 内的 Top K、阈值和 rerank 仍由该 Space 已发布的 Retrieval Profile 管理。
  • Manual filters 只接受 KnowledgeFS 固定字段:创建时间、文档类型、实体、新鲜度、 语言、节点类型、Source ID 和标签。

输出

result 是按 KnowledgeFS 最终分数稳定降序排列的证据数组。节点不会对每个 Space 再做 min-max 归一化;不同 Profile / rerank 模型之间的分数只弱可比。每项包含:

{
  "content": "evidence text",
  "title": "section title",
  "metadata": {
    "citation": {
      "document_id": "document asset id",
      "document_version": 2,
      "section_path": ["Chapter", "Section"],
      "page_number": 3,
      "artifact_hash": "..."
    },
    "score": 0.82,
    "sources": ["dense", "fts"],
    "space_id": "control space id"
  }
}

metrics 稳定暴露 modetotal_msdegradation_flags。未显式指定 mode 且多个 Space 的实际模式不同时,modemixed。更完整的 per-space trace 和候选数写入 节点运行详情的 process_data.knowledge_fs

发布与授权

  • Debugger / Explore 的草稿运行会为当前账号有权限的所选 Space 幂等建立 workflow 绑定。
  • 发布会先校验所有 Space 处于当前 Workspace 且为 active,再与 workflow snapshot 在同一 事务中精确同步绑定:新增/恢复引用,撤销已从已发布 graph 移除的引用。
  • 已发布和终端用户运行绝不自动补绑定。权限被撤销、Space 不可用或任一所选 Space 失败时,节点 fail-closed,不返回容易被误认为完整结果的部分证据。
  • DSL 导入会为目标 Workspace 中缺失的 Space 生成 warning,重新选择前无法发布。

与原有节点的区别

维度 Knowledge Retrieval Knowledge Retrieval v2
数据体系 Dify Dataset / Document KnowledgeFS Space / publication
检索配置 主要保存在节点 Top K、阈值、rerank 由 Space Profile 管理
模式 旧检索策略 fast / deep / research / 跟随 Space
多知识库 Dataset 合并检索 最多 10 Space,4 路并发、稳定合并
引用 旧 metadata 文档版本、章节路径、页码、offset、artifact hash
授权 Dataset app join Capability v2 + workflow 精确绑定
失败语义 依旧节点实现 多 Space fail-closed,空结果为成功