是什么
Dify 是一个开源的 AI 应用开发平台。用官方的话说,它可以帮你创建智能体、智能体工作流和聊天机器人,让它们基于你自己的数据工作,再把成果发布为网页应用,或者通过 API 集成到自己的产品中。Dify 这个名字来自「Do It For You」。
和 LangChain 这类需要写代码的开发框架不同,Dify 的核心是一个可视化的应用编排界面(Studio):通过拖拽节点、连线配置,就能搭建出包含大模型调用、知识库检索、条件分支、工具调用的完整流程。产品经理、运营人员可以直接参与搭建,开发者则可以把精力放在接入数据和定制插件上。
Dify 提供两种使用方式:一是官方托管的 Dify Cloud,无需安装,并提供免费的 Sandbox 方案;二是开源的社区版,可以用 Docker Compose 部署在自己的服务器上,代码托管在 GitHub 的 langgenius/dify 仓库。
主要功能
多种应用类型。 官方推荐使用 Workflow(工作流)或 Chatflow(对话流)两种类型,此外还提供 Chatbot、Agent、文本生成三种基础类型,它们底层运行在同一个工作流引擎上。
- Workflow 适合处理单轮任务,网页界面和 API 都支持批量执行;起始节点可以是用户输入,也可以是定时或外部事件触发。
- Chatflow 是在每一轮对话时触发的特殊工作流,支持对话级变量和记忆,适合构建多轮对话应用。
丰富的节点。 LLM 节点可以调用任意已配置的模型,支持结构化输出、多模态输入和上下文变量;配合知识检索节点,就能搭建 RAG 应用。此外还有 Agent、工具、条件分支等节点。
知识库(RAG)。 可以导入自己的文档建立知识库,由 Dify 负责切分、向量化和检索;也可以用知识管道(Knowledge Pipeline)编排更复杂的数据处理流程,或者通过 API 连接外部知识库。支持检索测试、元数据过滤,以及随时调整索引方式、嵌入模型和检索策略。
模型与工具。 通过模型供应商接入多家大模型;工具系统支持内置工具、自定义工具和 MCP 工具,插件市场提供社区开发的集成和应用模板。
多种发布方式。 应用可以发布为网页应用、通过 REST API 调用,也可以一键发布为 MCP 服务端,供 Claude 桌面版、Cursor 等工具直接调用。官方还提供命令行工具 difyctl,便于在终端、脚本和 CI 中运行 Dify 应用。
监控与运营。 内置仪表盘、日志和标注系统,帮助观察应用表现、持续优化回答质量。
DSL 导入导出。 所有应用都可以导出为 Dify 自有 DSL 格式的 YAML 文件,方便迁移到其他 Dify 实例或分享给他人。
技术原理
工作流引擎。 Dify 的各类应用本质上都是一张由节点组成的有向图。运行时,引擎从起始节点出发,按连线依次执行各节点,节点之间通过变量传递数据。在提示词中可以用双花括号引用变量,例如 {{user_input}},执行前会被替换为实际值。
检索增强生成。 知识库功能基于 RAG:用户提问时,系统先从知识库中检索最相关的内容(检索),再把检索结果与原始问题组合成增强的上下文(增强),最后交给大模型生成回答(生成)。这样模型的回答可以依据你提供的资料,而不只依赖预训练数据,从而减少幻觉。
服务架构。 自部署时,Dify 由多个容器组成,包括 API 服务、后台任务 worker、网页前端、插件守护进程、沙箱等核心服务,以及 PostgreSQL、Redis、Weaviate 向量数据库、Nginx 等依赖组件。插件运行在独立的进程中,代码执行则放在沙箱里,以隔离风险。
如何使用
方式一:Dify Cloud。 访问官网注册即可使用,适合快速体验和中小规模应用。
方式二:Docker Compose 自部署。 官方建议的最低配置是 2 核 CPU、4GB 内存,并需要 Docker Compose 2.24.0 或更高版本。
git clone https://github.com/langgenius/dify.git
cd dify/docker
cp .env.example .env
docker compose up -d
官方文档给出的克隆命令会自动检出最新的发布版本,建议照文档操作。容器启动后,用 docker compose ps 确认状态,然后在浏览器打开 http://localhost/install 完成管理员初始化,再访问 http://localhost 登录。
搭建第一个应用:
- 在「集成 → 模型供应商」中配置至少一个模型;
- 在 Studio 中新建 Chatflow 应用;
- 如需基于文档回答,先建立知识库,再在流程中加入知识检索节点并连接到 LLM 节点;
- 调试满意后发布为网页应用或获取 API 密钥。
项目地址
应用场景
- 智能客服:基于产品文档、FAQ 和故障排查手册回答用户问题。
- 企业内部知识门户:让员工用对话方式查询制度、流程和技术文档。
- 内容生成工具:根据指定背景资料批量生成报告、文章或邮件。
- 研究与分析:从论文、市场报告、法律文件等资料库中检索和总结信息。
- 给其他 AI 工具提供能力:把 Dify 应用发布为 MCP 服务端,供编程智能体或桌面助手调用。
常见问题
Dify 和 LangChain 是什么关系? 两者定位不同。LangChain 是写代码用的开发框架;Dify 是带可视化界面的应用平台,开箱即用地提供了编排、知识库、发布和监控能力。需要高度定制时可以用框架自己开发,希望快速搭建和交付时 Dify 更省事。
自部署和云端版怎么选? 数据需要留在自己服务器上、或者需要深度定制时选自部署;想快速上手、不想维护基础设施时选 Dify Cloud。
发布为 MCP 服务端安全吗? MCP 服务端地址中包含认证信息,官方提醒要像对待 API 密钥一样保管它;如果怀疑泄露,可以重新生成地址,旧地址会立即失效。
开源版可以商用吗? Dify 社区版的使用条件以 GitHub 仓库中的 LICENSE 文件为准,商用或对外提供服务前请仔细阅读其中的附加条款。