
在最新发布的 dify 1.9.2 版本中,核心焦点是 性能与稳定性提升、异步处理优化以及开发者体验改善。本次版本不仅在内部架构和工作流控制方面进行了优化,还在可观测性、集成支持等多个环节进行了重要升级。以下是本次更新的详细解析与升级指南。
一、重要版本变更与注意事项
本次版本在与 Weaviate 的集成上进行了重大升级:
-
• 将 Weaviate Python 客户端 从 v3 升级至 v4。 -
• 要求 Weaviate 服务端最低版本需为 1.24.0 或更高。 -
• 对于使用旧版本(如 1.19.0)的用户,必须先升级服务端至 1.24.0 及以上再升级 Dify,否则无法正常运行。 -
• 新版客户端 API 支持 gRPC,性能显著提升,但可能需要在 Docker Compose 中开放 50051端口。 -
• 升级过程中可能需要进行数据迁移与重新索引,建议使用 Cursor API 或标准的备份/恢复方式。 -
• 官方文档将提供数据迁移及兼容性指导。
行动要求:
-
1. 升级 Weaviate 服务端至 v1.24.0 或更高版本。 -
2. 按最新官方文档执行数据迁移与 Docker 配置更新。 -
3. 确保运行环境满足新版本依赖要求再部署 Dify。
二、功能亮点
1. 工作流与智能代理
-
• 支持对工作流图执行的暂停与恢复。 -
• LLM 节点在流式输出过程中支持结构化输出。 -
• 智能代理变量支持拖拽交互,类似工作流起始节点。 -
• 工作流运行可按状态筛选,支持从日志中重新执行。
2. 集成与 SDK
-
• 接入 OpenTelemetry + HTTPX 追踪,提升可观测性。 -
• CORS 配置支持自定义 HTTP 请求头。
3. Web 与前端
-
• 常量文件支持拆分与懒加载,提升页面加载速度。 -
• 数据源支持与插件市场集成及搜索过滤。 -
• 定价底部新增税费提示工具。 -
• 账号创建时界面语言与显示语言同步。
三、核心架构改进
-
• 在多个模块启用 Pyright 并修复类型定义问题。 -
• 精细化 HTTP 超时配置与输入验证逻辑。 -
• Redis 队列优化,通过缓存检测与显式键清理提升性能。 -
• 应用模型新增 updated_by和updated_at字段用于变更追踪。 -
• 在非流式及单步运行中支持结构化输出。
四、缺陷修复
-
• 修复数据块与数据集分页重复问题。 -
• 修复工作流 token 使用、LLM 使用跟踪及用户会话异常。 -
• 修复 Weaviate 向量距离计算错误与模块缺失问题。 -
• 修复多认证凭据冲突。 -
• 修复聊天闪烁、无限刷新、登录重定向、加载器显示等前端问题。 -
• 加强外部知识 URL SSRF 安全验证。 -
• 修复 LLM 输出变量描述缺失及变量截断逻辑。 -
• 删除单文件时修复数据集反选问题。 -
• 确保 JSON 序列化正确缩进与格式统一。
五、开发者体验与清理
-
• 删除未使用的依赖、冗余数据库提交、未引用模板。 -
• 添加 Knip 配置用于检测无用代码。 -
• 改进 HTTPX 异步链路追踪。
六、升级指南
Docker Compose 部署
-
1. 备份自定义 docker-compose.yaml(可选):
.
cd docker
cp docker-compose.yaml docker-compose.yaml.$(date +%s).bak
-
2. 更新代码:
.
git checkout main
git pull origin main
-
3. 停止服务:
.
docker compose down
-
4. 备份数据:
.
tar -cvf volumes-$(date +%s).tgz volumes
-
5. 升级服务:
.
docker compose up -d
源码部署
-
1. 停止 API、Worker 和 Web 服务端。 -
2. 更新代码:
.
git checkout 1.9.2
-
3. 更新 Python 依赖:
.
cd api
uv sync
-
4. 运行数据库迁移:
.
uv run flask db upgrade
-
5. 重启服务。
七、本次更新总结
Dify 1.9.2 不仅在性能与稳定性方面有显著提升,还大幅改进了工作流、可观测性、集成能力以及开发者的使用体验。
对于使用 Weaviate 的用户来说,此次更新是一次关键性变动,务必在升级前做好服务端版本提升与数据迁移准备。
我们相信人工智能为普通人提供了一种“增强工具”,并致力于分享全方位的AI知识。在这里,您可以找到最新的AI科普文章、工具评测、提升效率的秘籍以及行业洞察。


