链载Ai
标题: Dify V2.0.0 beta版本发布,知识管道与图引擎的革命性升级 [打印本页]
作者: 链载Ai 时间: 昨天 22:16
标题: Dify V2.0.0 beta版本发布,知识管道与图引擎的革命性升级
ingFang SC", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;color: rgb(31, 35, 41);margin: 0px 0px 16px;word-break: break-all;min-height: 20px;">dify V2.0.0终于来了,虽然只是测试版,但它带来的功能绝对是大家期待已久的 RAG 2.0!ingFang SC", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;color: rgb(31, 35, 41);margin: 0px 0px 16px;word-break: break-all;min-height: 20px;">老版本在 V1.6.0 就已经原生支持了 MCP,而这次 V2.0 更是迎来了知识库管理的大改版。ingFang SC", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;color: rgb(31, 35, 41);margin: 0px 0px 16px;word-break: break-all;min-height: 20px;">依我看,后面的那两个重磅功能估计也快要来了,是时候一起冲了!ingFang SC", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;color: rgb(31, 35, 41);margin: 0px 0px 16px;word-break: break-all;min-height: 20px;">在 Dify 2.0 中,引入了两项主要的新功能: 知识管道和基于队列的图形引擎 。ingFang SC", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;color: rgb(31, 35, 41);margin: 0px 0px 16px;word-break: break-all;min-height: 20px;">知识管道为知识的提取和处理提供了模块化且可扩展的工作流,而基于队列的图引擎则使工作流的执行更加稳健且可控。ingFang SC", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;color: rgb(31, 35, 41);margin: 0px 0px 16px;word-break: break-all;min-height: 20px;">下图就是知识库编排的一个示例:ingFang SC", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;letter-spacing: 0.578px;margin-top: 24px;margin-bottom: 16px;font-size: 26px;padding-bottom: 12px;">1 新版本特性ingFang SC", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;letter-spacing: 0.578px;margin-top: 0px;margin-bottom: 16px;font-size: 22px;padding-bottom: 12px;">📚 1.1 知识管道(Knowledge Pipeline)ingFang SC", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;letter-spacing: 0.578px;margin-top: 0px;margin-bottom: 16px;font-size: 20px;padding-bottom: 12px;">✨ 1.1.1 简介ingFang SC", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;color: rgb(31, 35, 41);margin: 0px 0px 16px;word-break: break-all;min-height: 20px;">借助全新的知识管道编排界面,我们引入了一项根本性的架构升级,它重塑了文档处理的设计与执行方式,提供了一个更模块化、更灵活的工作流,使用户能够编排管道的每一个阶段。通过集成市场中丰富的强大插件,它使用户能够灵活地集成多样化的数据源和处理工具。最终,这种架构能够构建高度定制化、特定领域的 RAG(检索增强生成)解决方案,以满足企业对可扩展性、适应性和精确性日益增长的需求。❓ 1.1.2 为什么需要它?
以前,Dify 的 RAG 用户在实际应用中仍然面临持续的挑战——从不准确的知识检索和信息丢失,到有限的数据集成和扩展性。常见的痛点包括:
- 🔗 数据源集成受限
- 🖼️ 缺失表格和图像等关键元素
- ✂️ 不理想的分块结果
所有这些都会导致糟糕的答案质量,并阻碍模型的整体性能。
作为回应,我们将 Dify 中的 RAG 重新构想为一种开放且模块化的架构,使开发者、集成商和领域专家能够构建符合其特定需求的文档处理管道——从数据提取到分块存储和检索。
🛠️ 1.1.3 核心能力
🧩 1、知识管道架构
知识管道是一个基于节点的可视化编排系统,专用于文档采集 。它提供了一种可定制的方式来自动化复杂的文档处理,实现细粒度的转换,并将原始内容与结构化、可检索的知识连接起来。开发人员可以像拼拼图一样逐步构建工作流程,使文档处理更易于观察和调整。
📑 2、模版与管道 DSL
除了空白模版外,提供了7种方式的模版。
- 通用方式模版
- 父子模版
- 简单问答模版
- 包含了图片、表格的复杂PDF模版
- 使用 LLM 进行上下文丰富模版
- 转换为 Markdown模版
- 基于大语言模型生成问答模版
- ⚡ 通过官方模版可以快速上手。
- 🔄 通过 DSL(领域特定语言)的导入/导出功能,可以定制和分享管道,从而更便于重复利用和协作。
我们可以简单的看一下简单问答模版,包含三个节点,文件作为输入源,然后是问答处理器、知识库节点。
这个流程可以分为三个部分:数据提取、数据处理和数据存储。
首先是数据提取。数据源为本地文件,并接受.xlsx、.xls、.csv等格式的文件。
接着是数据处理。数据从“FILE”节点进入“Q&A PROCESSOR”节点。这个处理器能够从文件中提取指定的问答对,并通过“问答匹配”策略来匹配用户的查询,从而检索到相关的答案。这种策略在处理高频或相似的用户问题时非常有效。
最后是数据存储。经过处理的问答对最终会被存储到“KNOWLEDGE BASE”(知识库)节点。图片右侧的描述显示,知识库提供了两种索引方法:“高质量”和“经济”模式,以满足不同的需求。
🔌 3、可定制的数据源和工具
官方现在提供了13个数据源插件。
每个知识库均可支持多个数据源。可以通过基于插件的采集框架无缝集成本地文件、在线文档、云盘和网络爬虫 。
开发者可以使用新的数据源插件扩展生态系统,而市场处理器则处理公式、电子表格和图像解析等特殊用例,确保数据采集的准确性和结构化呈现。
🧾 4、新的分块策略
除了常规模式和父子模式外,新的问答处理器插件还支持问答结构。这扩大了对更多用例的覆盖范围,并在检索精度和上下文完整性之间取得了平衡。
🖼️ 5、图像提取与检索
从多种格式的文档中提取图像,将它们作为 URL 存储在知识库中,并启用混合文本图像输出以改进 LLM 生成的答案。
🧪 6、测试运行和调试支持
在发布管道之前,您可以:
- ▶️ 独立执行单个步骤或节点
- 🔍 详细检查中间变量
- 👀 在变量检查器中以 Markdown 格式预览字符串变量
这在每个阶段都提供了安全的迭代和调试。
🔄 7、一键迁移旧知识库
通过单一操作将现有知识库无缝转换为知识管道架构,确保平稳过渡和向后兼容。
🌟 1.1.4 为什么它很重要
知识管道使知识管理更加透明、可调试且可扩展。
它并非终点,而是未来增强功能(例如多模态检索、人机协作和企业级数据治理)的基础。我们期待看到您如何应用它并分享您的反馈。
⚙️ 1.2 基于队列的图形引擎(Queue-based Graph Engine)
❓ 1.2.1 为什么需要它
以前,使用并行分支设计工作流通常会导致:
- 🌀 难以管理分支状态和重现错误
- ❌调试信息不足
- 🧱 执行逻辑僵化,缺乏灵活性
这些问题降低了复杂工作流程的可用性。为了解决这个问题,我们围绕队列调度重新设计了执行引擎,改进了并行任务的管理。
🛠️ 1.2.2 Core Capabilities
📋 1、队列调度模型
所有任务进入统一队列,调度程序在此管理依赖关系和顺序。这减少了并行执行中的错误,并使拓扑更加直观。
🎯 2、灵活的执行起点
执行可以在任何节点开始,支持部分运行、恢复和子图调用。
🌊 3、 流处理组件
新的 ResponseCoordinator 处理来自多个节点的流输出,例如逐个令牌的 LLM 生成或长期运行任务的阶段性结果。
🕹️ 4、 命令机制
使用 CommandProcessor ,可以在执行期间暂停、恢复或终止工作流,从而实现外部控制。
🧩 5、GraphEngineLayer
新增插件层,无需修改核心代码即可扩展引擎功能。它可以监控状态、发送命令并支持自定义监控。
2 未来计划
本次 Beta 测试版仅仅是个开始。即将推出的改进包括:
- 调试工具 :可视化界面,实时查看执行状态和变量。
- 智能调度 :利用历史数据优化调度策略。
- 更完整的命令支持 :添加暂停/恢复、断点调试。
- 人机循环 :支持执行过程中的人为干预。
- 子图功能 :增强模块化和可重用性。
- 多模式嵌入: 支持文本之外更丰富的内容类型。
我们期待您的反馈和体验,以使引擎更加实用。
3 升级指南
升级后,您必须运行以下迁移来转换现有数据源凭据。此步骤是确保与新版本兼容所必需的:
uvrunflasktransform-datasource-credentials
3.1 Docker Compose 部署
1、备份yaml文件
cddocker
cpdocker-compose.yaml docker-compose.yaml.$(date+%s).bak
2、从主分支获取最新代码
git checkout 2.0.0-beta.1
git pull origin 2.0.0-beta.1
3、停止服务,在docker目录下执行
4、备份数据
tar-cvfvolumes-$(date+%s).tgzvolumes
5、升级服务
6、在容器启动后迁移数据
dockerexec-itdocker-api-1uvrunflasktransform-datasource-credentials
3.2 源码部署
1、停止 API Server、Worker 和 Web 前端服务
2、获取最新发布分支的代码
3、更新 Python 依赖项
4、运行迁移脚本
uv run flask db upgrade
uv run flask transform-datasource-credentials
5、最后,再次运行 API Server、Worker 和 Web 前端服务
最后再多说一句。这次 Dify 2.0 推出了不少知识管道模板,我打算改天给大家逐一讲解一下。
本次发布的只是 V2.0 beta 版本,功能虽然强大,但在生产环境使用还是要谨慎。
我个人的建议是,强烈推荐你在测试环境中先跑一跑,体验一下知识管道和图引擎的魅力。
至于生产环境,咱们还是稳一点,等正式版发布后再进行升级也不迟。
| 欢迎光临 链载Ai (https://www.lianzai.com/) |
Powered by Discuz! X3.5 |