dify v1.10.1 – Multi-Database Era Begins: MySQL Joins the Family¶
为什么要使用Dify¶
想象一下:你有一个绝妙的AI应用创意,它能够革新一个行业,或者至少让你的日常工作轻松十倍。但当你挽起袖子准备大干一场时,却发现自己陷入了无底洞——你需要研究晦涩的提示词工程、搭建复杂的后端服务、处理令人头疼的向量数据库集成,还要确保一切能够稳定扩展。你的激情,迅速被无尽的代码、配置和调试消耗殆尽。这就是创意与实现之间那道令人沮丧的鸿沟。
现在,请停止这种内耗。使用Dify,就是选择跨越这道鸿沟的桥梁。它并非另一个增加你负担的开发框架,而是一个让你重新成为“创作者”的解放者。Dify的核心矛盾在于:它剥离了构建AI应用过程中所有重复、繁琐且高门槛的“工程苦力”,将你的注意力百分百聚焦于真正重要的事情——创意本身、业务逻辑与用户体验。
你是否厌倦了在每个新项目里重复造轮子?是否对管理AI模型的版本和成本感到焦虑?是否希望像搭积木一样,直观地组合复杂的工作流?Dify将这些愿景变成了开箱即用的现实。它让你不再是一个孤独的“码农”,而是指挥一支AI交响乐团的“作曲家”。在这里,你的核心竞争力不再是写了多少行代码,而是你有多好的想法,以及你能多快、多稳地将它变为触手可及的服务。
选择Dify,就是选择站在巨人的肩膀上,去触及那些曾经看似遥不可及的星辰。
Dify是什么¶
简单来说,Dify 是一个开源的 AI 应用开发平台。你可以把它想象成一个“可视化AI应用工厂”。
它的目标是让开发者甚至是不太懂技术的产品经理,都能通过图形化界面(就像画流程图一样),快速构建和部署基于大语言模型的实用应用,比如智能客服、内容创作助手、数据分析工具等。你无需从头处理复杂的AI模型接口、数据存储和服务器运维,Dify 已经为你准备好了这些基础设施。
入门示例¶
让我们来看一个真实的场景:为一家电商公司构建一个智能客服助手。
目标:这个助手需要能回答关于产品规格、物流政策和退货流程的问题。它不能胡编乱造,答案必须基于公司内部的最新文档。
传统方式:你需要组建团队,分别负责: 1. 收集和清洗PDF、Word等格式的客服文档。 2. 编写代码调用Embedding API,将文档切片并存入向量数据库(如Chroma、Milvus)。 3. 设计提示词模板,编写后端服务来协调用户问题、检索相关文档并调用大模型(如GPT-4)生成回答。 4. 搭建一个前端聊天界面。 5. 处理部署、监控和扩容问题。
整个过程耗时数周甚至数月。
使用Dify的开发示例:
- 准备知识:在Dify控制台的“知识库”中,创建一个名为“电商客服知识”的库。直接将你的产品手册、政策PDF文件拖拽上传。Dify会自动完成文本提取、分割、向量化并存储的过程。
- 构建工作流:进入“工作流”编辑器。
- 从左侧拖入一个“起始”节点。
- 连接一个“知识库检索”节点,并选择刚才创建的“电商客服知识”库。这个节点会将用户问题转化为搜索查询,从知识库中找出最相关的片段。
- 再连接一个“LLM(大语言模型)”节点(比如配置GPT-4)。在这里,你只需用自然语言撰写一个提示词模板,例如:“你是一位专业的电商客服。请严格根据以下上下文信息来回答用户问题。如果信息不足,请礼貌地告知用户你暂时无法解答。上下文:{context} 问题:{question}”
- 最后连接一个“回复”节点,将LLM生成的答案输出给用户。
- 发布为应用:点击“发布”。这个工作流可以立即被发布为一个独立的Web聊天应用(获得一个可分享的链接),或者封装成一个API接口,供你的官方网站或小程序调用。
结果:原本需要一个开发团队数周完成的项目,现在**一个人在一小时内**就完成了从数据准备到可部署应用的全部过程。Dify接管了所有底层复杂性,让开发者专注于定义“做什么”,而不是“怎么做”。
Dify v1.10.1 – Multi-Database Era Begins 版本更新了什么¶
Dify v1.10.1 标志着其进入“多数据库时代”。本次更新的核心是迎来了万众期待的 MySQL 官方支持,使其与 PostgreSQL 和 OceanBase 一同成为一等公民。这是一次重大的后端架构升级,为用户提供了更灵活的数据库选择。此外,本次更新还对工作流编辑器进行了显著的**性能飞跃**,优化后即使构建近200个节点的复杂流程也能保持流畅。同时,包含多项关键稳定性修复,并提升了安全性——API 镜像现在默认以非root用户运行。
更新日志¶
🎉 重磅新功能,关键稳定性修复 🧩 以及期待已久的 MySQL 支持 终于到来!
🚀 新功能¶
基础设施与 DevOps¶
MySQL 适配(现已全面支持 PostgreSQL / MySQL / OceanBase) PR: #28188
- 新增
DB_TYPE配置选项 - 支持 MySQL 的 JSON / LONGTEXT / UUID / 索引差异
- 更新 Alembic 迁移脚本以实现多数据库兼容
- 引入用于统计和日期处理的跨数据库 SQL 辅助工具
- 使用 SQLAlchemy JSON 操作符重写数据集元数据过滤器
- 添加用于 MySQL 迁移测试的 CI 工作流
这是 Dify 历史上一次重要的后端升级——多数据库支持现已成**为一等公民**。
性能与工作流编辑器优化¶
- 为工作流编辑器实现了重大的性能升级,消除了耗时的按节点验证扫描,减少了不必要的重新渲染,将编辑器从约50个节点开始变得卡顿提升至即使接近约200个节点也能保持流畅的响应能力。PR: #28591
管道与工作流引擎¶
- 引入了大量工作流编辑器改进,包括界面优化、稳定性修复,以及在变量检查、媒体组件和节点交互方面的用户体验增强。PR: #27981