Dify简介

目录


Dify 发展历史

起源背景

Dify 是一款开源的 LLM 应用开发平台,由 LangGenius 团队开发。该项目诞生于 2023 年,正值大语言模型(LLM)技术快速发展和普及的时期。随着 GPT、Claude 等大模型的能力不断提升,企业和开发者迫切需要一个能够简化 AI 应用开发流程的工具平台。

发展历程

时间节点 里程碑事件
2023 年初 LangGenius 团队开始研发 Dify,定位为开源的 LLMOps 平台
2023 年 5 月 Dify 在 GitHub 上正式开源,首次发布 v0.1.0 版本
2023 年 7 月 获得 GitHub 趋势榜推荐,社区关注度迅速上升
2023 年 9 月 发布 v0.3.0 版本,引入 RAG(检索增强生成)和 Agent 能力
2023 年 11 月 获得 Pre-A 轮融资,加速产品迭代和商业化进程
2024 年 1 月 发布 v0.5.0 版本,支持 Workflow 编排和更多模型接入
2024 年 3 月 GitHub Stars 突破 10,000,成为热门开源项目
2024 年 6 月 发布 v0.6.0 版本,增强企业级功能和多租户支持
2024 年 9 月 发布 v0.7.0 版本,引入向量数据库集成和更强大的编排能力
2026 年 3 月 GitHub Stars 突破 130,000,社区生态进一步持续壮大

当前状态

截至 2026 年,Dify 已成为全球最受欢迎的开源 LLMOps 平台之一,在 GitHub 上拥有超过 130,000 Stars,被众多企业和开发者用于生产环境。项目持续活跃更新,社区贡献者来自世界各地。


Dify 流行原因

1. 开源免费

Dify 采用 Apache 2.0 开源协议,完全免费使用,且支持私有化部署。这使得企业和个人开发者可以在不支付高昂许可费用的情况下,构建自己的 AI 应用平台。

2. 低代码/无代码开发

Dify 提供了直观的可视化界面,用户无需编写大量代码即可构建复杂的 AI 应用。通过拖拽式的工作流编排,非技术人员也能快速上手。

3. 强大的模型集成能力

Dify 支持接入多种主流大语言模型,包括:

  • OpenAI(GPT-4、GPT-3.5-turbo)
  • Anthropic(Claude 系列)
  • Azure OpenAI
  • Google(Gemini)
  • Meta(Llama 系列)
  • Mistral AI
  • 国内模型(文心一言、通义千问、智谱 GLM、百川等)

4. 完整的 RAG 能力

Dify 内置了完整的 RAG(检索增强生成)框架,支持:

  • 多种文档格式上传(PDF、Word、TXT、Markdown 等)
  • 自动分块和向量化
  • 多种向量数据库集成(Weaviate、Qdrant、Milvus、PGVector 等)
  • 智能检索和重排序

5. 灵活的工作流编排

Dify 的 Workflow 功能允许用户通过可视化方式编排复杂的 AI 应用逻辑,支持:

  • 条件分支
  • 循环
  • 自定义节点
  • API 调用
  • 数据转换

6. Agent 能力

Dify 内置了 Agent 框架,支持构建具有自主决策能力的 AI 智能体,包括:

  • ReAct 模式
  • 函数调用(Function Calling)
  • 工具集成
  • 多智能体协作

7. 企业级特性

Dify 提供了丰富的企业级功能:

  • 多租户支持
  • 权限管理
  • API 密钥管理
  • 使用量监控和计费
  • 审计日志
  • SSO 单点登录

8. 活跃的社区生态

Dify 拥有活跃的开源社区,提供:

  • 丰富的文档和教程
  • 社区插件和模板
  • 快速的问题响应
  • 持续的功能迭代

9. 易于部署

Dify 支持多种部署方式:

  • Docker Compose 一键部署
  • Kubernetes 集群部署
  • 云服务集成

10. 优秀的用户体验

  • 现代化的 UI 设计
  • 流畅的交互体验
  • 完善的中文支持
  • 实时预览和调试

Dify 核心组件

1. 前端界面(Frontend)

  • 技术栈:React + TypeScript
  • 功能:提供可视化的应用构建界面,包括对话应用、工作流编辑器、知识库管理等

2. 后端服务(Backend API)

  • 技术栈:Python + FastAPI
  • 功能:处理所有业务逻辑,包括模型调用、工作流执行、数据管理等

3. 工作流引擎(Workflow Engine)

  • 功能:执行用户编排的工作流,支持节点编排、条件判断、循环等逻辑

4. 模型适配器(Model Adapter)

  • 功能:统一抽象不同大语言模型的接口,支持模型切换和负载均衡

5. 向量存储(Vector Store)

  • 支持:Weaviate、Qdrant、Milvus、PGVector、Chroma 等
  • 功能:存储和检索向量化的知识库内容

6. 知识库管理(Knowledge Base)

  • 功能:文档上传、解析、分块、向量化、检索等

7. Agent 框架(Agent Framework)

  • 功能:支持 ReAct、Plan-and-Solve、Function Calling 等多种 Agent 模式

8. 数据库(Database)

  • PostgreSQL:存储应用配置、用户数据、对话历史等
  • Redis:缓存和会话管理

9. 文件存储(File Storage)

  • 支持:本地存储、阿里云 OSS、AWS S3、MinIO 等
  • 功能:存储上传的文档、图片等文件

10. API 网关(API Gateway)

  • 功能:提供统一的 API 接口,支持密钥认证、限流等

Dify 架构图

外部服务

数据层

应用层

用户层

基础设施

Docker/Kubernetes

用户浏览器

前端界面
React + TypeScript

后端 API
FastAPI

工作流引擎

Agent 框架

模型适配器

PostgreSQL
应用数据

Redis
缓存/会话

向量存储
Weaviate/Qdrant/Milvus

文件存储
OSS/S3/MinIO

OpenAI API

Claude API

其他 LLM API

外部 API
HTTP/WebSocket

组件交互流程

LLM 服务 向量存储 模型适配器 工作流引擎 后端 API 前端 用户 LLM 服务 向量存储 模型适配器 工作流引擎 后端 API 前端 用户 alt [需要知识检索] 发起对话请求 调用 API 执行工作流 向量检索 返回相关文档 构建模型请求 调用 LLM API 返回模型响应 返回处理结果 返回工作流结果 返回 API 响应 展示对话结果

Dify 工作机制

1. 应用创建流程

  1. 选择应用类型

    • 对话型应用(Chatbot)
    • 文本生成应用(Text Generation)
    • Agent 应用
    • 工作流应用(Workflow)
  2. 配置模型

    • 选择基础模型(如 GPT-4、Claude)
    • 设置模型参数(温度、最大 token 数等)
    • 配置提示词模板
  3. 添加知识库(可选)

    • 上传文档
    • 系统自动解析和分块
    • 向量化存储
    • 配置检索策略
  4. 配置工具(可选)

    • 添加 API 工具
    • 添加内置工具(搜索、计算等)
    • 配置工具调用参数
  5. 测试和发布

    • 在预览界面测试
    • 调试和优化
    • 发布应用

2. 对话处理流程

用户输入
    ↓
[前端] 发送请求到后端
    ↓
[后端] 验证 API 密钥和权限
    ↓
[后端] 加载应用配置
    ↓
[工作流引擎] 执行工作流
    ↓
    ├─→ [知识检索] 向量检索相关文档
    ├─→ [工具调用] 执行外部 API
    └─→ [模型适配] 构建 Prompt
    ↓
[模型适配器] 调用 LLM API
    ↓
[LLM] 生成响应
    ↓
[后端] 处理响应结果
    ↓
[前端] 展示给用户

3. RAG 工作机制

  1. 文档处理

    • 上传文档(支持 PDF、Word、TXT、MD 等)
    • 文本提取和清洗
    • 智能分块(基于语义或固定长度)
    • 向量化(使用 Embedding 模型)
  2. 向量存储

    • 将向量存储到向量数据库
    • 建立索引以加速检索
  3. 检索阶段

    • 用户问题向量化
    • 相似度计算(余弦相似度等)
    • 返回 Top-K 相关文档片段
  4. 生成阶段

    • 将检索到的文档片段作为上下文
    • 构建增强的 Prompt
    • LLM 基于上下文生成回答

4. Agent 工作机制

Dify 支持多种 Agent 模式:

ReAct 模式
思考 (Thought) → 行动 (Action) → 观察 (Observation) → 循环
  1. Agent 分析用户意图
  2. 决定是否需要调用工具
  3. 执行工具并获取结果
  4. 基于结果继续思考或生成最终答案
Function Calling 模式
  1. LLM 识别需要调用的函数
  2. 系统执行函数调用
  3. 将结果返回给 LLM
  4. LLM 基于结果生成最终响应

5. 工作流编排机制

Dify 的工作流支持以下节点类型:

节点类型 功能
开始节点 工作流的入口,定义输入变量
结束节点 工作流的出口,定义输出变量
LLM 节点 调用大语言模型
知识检索节点 从知识库检索相关内容
条件分支节点 根据条件执行不同分支
代码节点 执行自定义 Python 代码
HTTP 请求节点 调用外部 API
模板转换节点 使用 Jinja2 模板转换数据
变量提取节点 从文本中提取结构化数据
迭代节点 对列表进行循环处理

Dify 应用场景

1. 企业知识库问答

场景描述:企业内部积累的大量文档、手册、FAQ 等知识资源,通过 Dify 构建智能问答系统,员工可以快速获取准确信息。

实现方式

  • 上传企业文档到知识库
  • 配置 RAG 检索策略
  • 构建对话型应用
  • 集成到企业内部系统

优势

  • 准确性高,基于企业真实数据
  • 支持多轮对话
  • 可追溯答案来源
  • 易于维护和更新

2. 客户服务智能助手

场景描述:为企业客户提供 7×24 小时的智能客服,自动回答常见问题,提升服务效率。

实现方式

  • 导入客服话术和 FAQ
  • 配置多轮对话流程
  • 集成工单系统
  • 支持人工接管

优势

  • 降低人工客服成本
  • 提升响应速度
  • 统一服务标准
  • 支持多语言

3. 内容生成与营销

场景描述:自动生成营销文案、产品描述、社交媒体内容等,提高内容生产效率。

实现方式

  • 设计 Prompt 模板
  • 配置品牌风格参数
  • 批量生成内容
  • 人工审核和编辑

优势

  • 快速生成大量内容
  • 保持风格一致性
  • 支持多种内容类型
  • 降低创作门槛

4. 数据分析与报告

场景描述:通过自然语言查询数据,自动生成分析报告和可视化图表。

实现方式

  • 连接数据源(数据库、API)
  • 配置 Text-to-SQL 能力
  • 构建数据分析 Agent
  • 生成结构化报告

优势

  • 降低数据分析门槛
  • 支持自然语言交互
  • 自动生成报告
  • 实时数据更新

5. 代码辅助开发

场景描述:帮助开发者生成代码、解释代码、调试代码等。

实现方式

  • 配置代码生成模型
  • 集成代码执行环境
  • 添加代码分析工具
  • 构建多轮对话流程

优势

  • 提高开发效率
  • 支持多种编程语言
  • 代码质量较高
  • 学习成本低

6. 教育培训辅助

场景描述:为学生提供个性化学习辅导、答疑解惑、作业批改等服务。

实现方式

  • 上传教材和课件
  • 构建学科知识库
  • 配置教学风格
  • 添加练习题库

优势

  • 个性化学习路径
  • 即时反馈
  • 24 小时可用
  • 降低教育成本

7. 法律文档处理

场景描述:辅助律师处理合同审查、法律文书起草、案例分析等工作。

实现方式

  • 建立法律知识库
  • 配置合同审查模板
  • 构建案例分析 Agent
  • 支持文档比对

优势

  • 提高工作效率
  • 降低遗漏风险
  • 知识沉淀和复用
  • 支持多法域

8. 医疗健康咨询

场景描述:提供基础的健康咨询、症状分析、用药指导等服务(需专业审核)。

实现方式

  • 建立医学知识库
  • 配置问诊流程
  • 添加风险提示
  • 支持医生复核

优势

  • 初步筛查和分流
  • 健康知识普及
  • 减轻医生负担
  • 提高患者满意度

9. 金融理财建议

场景描述:为客户提供理财咨询、投资建议、风险评估等服务。

实现方式

  • 接入金融数据
  • 配置风险评估模型
  • 构建理财规划 Agent
  • 支持个性化推荐

优势

  • 降低服务成本
  • 提高覆盖面
  • 标准化服务流程
  • 数据驱动决策

10. 多模态应用

场景描述:结合图像、音频、视频等多模态输入,构建更丰富的应用。

实现方式

  • 集成图像识别模型
  • 添加语音识别/合成
  • 配置多模态工作流
  • 支持文件上传

优势

  • 更自然的交互方式
  • 丰富的应用场景
  • 提升用户体验
  • 技术创新空间大

总结

Dify 作为一款开源的 LLMOps 平台,通过其低代码/无代码的设计理念、强大的模型集成能力、完整的 RAG 框架和灵活的工作流编排,极大地降低了 AI 应用开发的门槛。无论是个人开发者还是企业用户,都可以利用 Dify 快速构建和部署生产级的 AI 应用。

随着大模型技术的持续发展和社区生态的不断壮大,Dify 将在 AI 应用开发领域发挥越来越重要的作用。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐