GitHub: langgenius/dify
Stars: 145,000+ | Language: TypeScript (52.2%), Python (43.6%) | License: Dify Open Source License (基于 Apache 2.0)
官网: dify.ai
目录
项目速览
Dify(取”Do It For You”之意)是 LangGenius 团队打造的开源 LLM 应用开发平台,定位为 “Production-ready platform for agentic workflow development”。截至 2026 年 6 月,项目在 GitHub 上已获得超过 145,000 颗 Star,是 AI 应用平台领域增长最快的项目之一。
Dify 的核心理念是”让 AI 应用开发民主化”:通过可视化工作流构建器、内置 RAG 引擎和 Agent 系统,将 LLM 应用的开发门槛从专业开发者降低到业务人员和领域专家。它将 AI 工作流(Workflow)、RAG 管道(Pipeline)、Agent 能力、模型管理和可观测性整合到一个统一界面中。
2025 年,Dify 发布了 v1.0 版本,引入了插件生态系统(Plugin Marketplace)和 Agent 策略节点(ReAct、Function Calling、Chain-of-Thought 等)。v1.9.0 进一步升级为基于队列的图引擎(Queue-Based Graph Engine),支持工作流暂停/恢复/终止和流式响应协调。Dify 提供云服务(SaaS)、社区版(自托管 Docker)和企业版三种部署方式,兼具开发者友好的 API-First 架构和业务用户友好的可视化界面。
功能概述
可视化工作流构建器
Dify 的 Web UI 基于 React Flow(xyflow)实现拖拽式画布,用户通过连接节点构建 AI 应用逻辑。支持的节点类型包括:
- LLM 节点:调用大语言模型(支持 100+ 模型提供商)
- 知识检索节点:从向量知识库检索相关文档
- 代码节点:在安全沙箱中执行 Python/JavaScript 代码
- HTTP 请求节点:调用外部 API
- 条件分支节点:基于条件判断进行流程分支
- 变量聚合节点:合并多个上游节点的输出
- Agent 节点:智能决策中心,支持 ReAct / Function Calling 等策略
构建完成后,前端将画布序列化为 JSON,后端解析并构建 DAG(有向无环图),通过拓扑排序确定执行顺序。
插件生态系统(Plugin Marketplace)
Dify v1.0 将模型、工具和扩展从核心平台中解耦为可热插拔的插件,提供 120+ 官方和社区插件:
- 模型提供商插件:OpenAI、Anthropic、Google Gemini、DeepSeek、Llama 等
- 工具插件:Perplexity 搜索、Slack、Firecrawl、邮件、日历等
- Agent 策略插件:ReAct、Function Calling、Chain-of-Thought、Tree-of-Thoughts
- 扩展插件:自定义节点类型、数据处理逻辑等
插件由独立的 dify-plugin-daemon 运行时管理,支持热插拔,无需重启平台。
RAG 知识库引擎
Dify 内置完整的 RAG 管道,可视化配置每一步:
- 文档摄取:支持 PDF、Word、Excel、网页、Notion 等格式批量上传
- 文档解析:自动分段清洗,支持 Q&A 分段模式(v1.9.0 新增)
- 向量嵌入:对接 OpenAI、Cohere、本地模型等嵌入提供商
- 混合检索:向量检索(ANN)+ 关键词检索(BM25),加权融合
- 重排序(Rerank):Cross-Encoder 模型将 Top-20 候选压缩为 Top-5
- 上下文压缩:抽取式句子级压缩,控制在 2-3k token 预算内
- 引用标注:每个 answer 块绑定源文档元数据,内联引用可追溯
Agent 策略系统
Dify 的 Agent 节点支持两种主要推理策略:
- Function Calling:一次性规划多个函数参数,并行执行,适合高效、确定性的多工具任务
- ReAct(Reasoning + Acting):Think-Act-Observe 循环,适合需要迭代探索的复杂推理任务
Agent 节点可以嵌入工作流或对话流(Chatflow)中的任意位置,作为智能决策中心动态调用工具、切换策略和控制流程。
LLMOps 可观测性
Dify 提供生产级的监控和日志能力:
- 实时日志:每次 LLM 调用的输入/输出、Token 消耗、延迟
- 标注与改进:对模型输出进行人工评分和标注,持续优化
- A/B 测试:在 Prompt IDE 中同时对比多个提示词变体的效果
- Langfuse / LangSmith 集成:对接外部追踪和评估平台
- 成本追踪:按应用、按模型的 Token 消耗和费用统计
适用场景
智能客服系统
Dify 最适合快速搭建企业级智能客服。通过知识库上传产品文档和 FAQ,配置 RAG 检索,使用 Chatflow 设计对话流程,加入条件分支实现意图识别和转人工逻辑。可视化界面让客服主管而非工程师即可迭代优化问答质量。
企业知识管理
将公司内部文档(制度、流程、技术文档等)上传到 Dify 知识库,构建内部知识助手。支持多知识库管理、权限控制和元数据过滤,确保不同部门的员工只能检索到授权范围内的文档。
数据分析与报告自动化
Dify 的代码节点支持在安全沙箱中执行 Python 代码,可以连接数据库查询数据,使用 Pandas 进行分析,生成图表和报告。LLM 节点将分析结果转化为自然语言解读,形成端到端的数据分析应用。
API 后端服务
Dify 的 API-First 架构意味着所有可视化构建的应用都会自动暴露为 REST API 端点。其他系统可以通过 API 调用这些 AI 应用,实现将 AI 能力嵌入现有业务流程。
内容生成流水线
通过工作流串联多步内容生成:选题研究(Web 搜索工具)→ 大纲生成(LLM 节点)→ 正文撰写(LLM 节点+知识库参考)→ SEO 优化(条件分支)→ 格式排版(代码节点)。整个过程可视化编排,非技术团队也能管理。
快速上手
环境要求
- Docker 和 Docker Compose
- 至少 4GB 可用内存
Docker Compose 部署(最快方式)
# 克隆仓库 |
服务启动后,Docker 会运行以下核心容器:
| 服务 | 端口 | 说明 |
|---|---|---|
| Web Frontend | 3000 | React 前端界面 |
| API Server | 5001 | FastAPI 后端服务 |
| Plugin Daemon | 5003 | 插件管理运行时 |
| PostgreSQL | 5432 | 主数据库 |
| Redis | 6379 | 缓存和队列 |
| Weaviate | 8080 | 默认向量数据库 |
快速构建第一个应用
- 配置模型提供商:登录后进入”设置 → 模型供应商”,填入 OpenAI(或其他)API Key
- 创建知识库:上传一份测试文档(PDF/TXT),系统自动分片和向量化
- 创建应用:选择”聊天助手”模板,关联刚创建的知识库
- 发布测试:点击”发布”,在预览界面测试问答效果
- API 调用:发布后自动生成 API 端点,可复制 cURL 命令供外部系统调用
源码架构
Dify 采用前后端分离的微服务架构:
dify/ |
- **api/core/workflow/**:Dify 的心脏——基于队列的图执行引擎。负责解析前端 JSON、构建 DAG、拓扑排序、节点分发、流式响应协调和错误处理(指数退避重试、错误分支、补偿回滚)。
- **api/core/rag/**:RAG 管道实现,涵盖文档摄取、分块清洗、向量嵌入、混合检索、重排序和上下文压缩的完整流程。
- **api/core/agent/**:Agent 策略实现,支持 ReAct、Function Calling、CoT、ToT 等多种推理模式。
- **web/app/components/workflow/**:基于 React Flow 的可视化画布,支持拖拽节点、连线、配置参数,最终序列化为工作流 JSON。
- dify-plugin-daemon:独立的插件运行时进程,管理模型、工具、策略等插件的生命周期,支持本地和 serverless 两种运行时模式。
实操 Demo
下面展示如何利用 Dify API 创建知识库、上传文档并实现智能问答。
""" |
运行前提:
# 1. 启动 Dify |
同类对比
| 特性 | Dify | LangChain | Open WebUI |
|---|---|---|---|
| 定位 | 低代码 AI 应用平台 | 通用 Agent 工程框架 | LLM 交互 Web 界面 |
| Stars | 145,000+ | 139,000+ | 42,000+ |
| 可视化 | 拖拽式工作流画布 + Prompt IDE + 知识库管理 | 无内置可视化(依赖 LangSmith / LangGraph Studio) | 提供聊天界面和基础模型管理 |
| RAG 能力 | 内置完整 RAG 管道,可视化配置,混合检索+重排序 | 通过链组合实现,灵活但需要编码 | 基础 RAG 支持,文档上传和检索 |
| Agent 模式 | Agent 节点 + 策略插件(ReAct/FC/CoT) | create_agent + LangGraph + Middleware | 基础工具调用,不支持复杂 Agent |
| 部署方式 | Docker 一键部署、云服务、企业版 | Python 库,需自行搭建服务 | Docker 部署 |
| 适合用户 | 非技术人员和全栈团队均可 | 以开发者为中心 | 想要开箱即用界面的个人/小团队 |
分析:Dify 的最大差异化优势在于”低代码 + 全栈”——它不只是一个框架,而是一个从可视化构建到 API 发布到运维监控的完整平台。与 LangChain 相比,Dify 牺牲了一定的定制灵活性,换来了极低的入门门槛和更快的交付速度。与 Open WebUI 相比,Dify 在工作流编排、RAG 精度和 Agent 复杂度方面远超后者。对于需要快速验证想法、让非技术人员参与 AI 应用构建的团队,Dify 是目前最佳选择。但如果你需要极致的定制化和程序化控制,LangChain 的灵活性更有优势。
参考资源
- 官方文档: https://docs.dify.ai/
- GitHub 仓库: https://github.com/langgenius/dify
- Dify Cloud: https://cloud.dify.ai/
- 插件市场: https://marketplace.dify.ai/
- v1.0 发布博客: https://dify.ai/blog/dify-v1-0-building-a-vibrant-plugin-ecosystem
- Discord 社区: https://discord.gg/dify


