Dify:可视化搭建企业级 AI 应用的开源平台

Dify:可视化搭建企业级 AI 应用的开源平台

智能体

📖 简介

Dify 是开源 LLM 应用开发平台,集 RAG 引擎、Agent 框架、可视化工作流于一体。148k Stars,企业级 AI 开发的事实标准。

📝 详细介绍

Dify:把 LLM 应用从原型拖到生产环境,差的就是这个可视化编排层

如果你试过用 LangChain 或直接调 API 搭一个带 RAG 的聊天机器人,一定遇到过这几个坑:Prompt 调优全靠改代码、知识库文档处理要自己写 Pipeline、多模型切换得改配置重启服务。Dify 解决的就是这个问题——它把 LLM 应用开发中那些重复的“胶水代码”和运维逻辑,变成了可视化的编排界面和开箱即用的 API。

指标数据
Stars55k+(截至 2025.03)
语言Python / TypeScript
协议Apache-2.0
最近更新2025-03-20(持续活跃)

项目背景

Dify 由 LangGenius 团队开发,创始人是前腾讯工程师。团队发现 2023 年 LLM 爆发后,大量企业卡在“Demo 能跑但上线困难”阶段:没有统一的 Prompt 管理、知识库向量化需要自建 Pipeline、多模型切换成本高。Dify 的目标是做一个 LLMOps 平台,让开发者用拖拽和配置,就能把 GPT、Claude、开源模型组合成生产级应用,同时提供日志、标注、回测等运维能力。

核心功能解析

可视化 Workflow 编排

这是 Dify 最核心的能力。你可以在画布上拖拽节点来构建应用逻辑:LLM 调用、知识库检索、代码执行、条件分支、HTTP 请求等。每个节点可以独立配置 Prompt 和参数,节点之间通过变量传递上下文。这意味着你可以把复杂的 RAG 流程(先检索、再重排序、最后生成)变成一个可视化的 DAG,而不是在代码里写一堆 if-else。

# 实际效果:通过 API 调用编排好的 Workflow
curl -X POST https://your-dify.app/api/workflows/run \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"inputs": {"query": "公司去年的营收是多少?"},
"response_mode": "streaming"
}'

内置 RAG Pipeline

Dify 内置了完整的文档处理流程:上传 PDF/网页/API 文档后,系统自动完成文本清洗、分段、向量化,并存入内置的向量数据库(默认使用 Weaviate 或 Qdrant)。你不需要自己写 Embedding 调用和 chunk 逻辑。更实用的是,它支持在检索时设置 召回策略(如 Top-K、相似度阈值、重排序模型),这些在传统 RAG 框架里通常要手动实现。

注意:Dify 的 RAG 对中文分段的智能程度一般,建议对复杂文档手动调整 chunk 参数。

模型管理与监控

支持一键切换 GPT-4、Claude 3、Llama 3、通义千问等 20+ 模型,且每个应用可以独立配置模型和参数(temperature、max_tokens 等)。生产环境下,日志与标注功能非常关键:你可以查看每一次对话的完整 trace,包括 Prompt、模型输出、检索到的文档片段,并手动标注“好/坏”结果用于后续微调。

快速上手

Dify 官方推荐 Docker Compose 部署,一条命令启动所有服务(包含前端、后端、数据库、向量数据库):

# 克隆仓库
git clone https://github.com/langgenius/dify.git
cd dify/docker

# 复制环境变量模板
cp .env.example .env

# 启动所有服务(后台运行)
docker compose up -d

启动后访问 http://localhost:3000,注册账号即可开始创建应用。如果你已经有 OpenAI API Key,在设置中填入即可开始使用 GPT 模型。

技术亮点

Dify 的架构设计有几个值得深挖的点:

1. 插件化模型适配层:Dify 没有把模型调用写死,而是抽象了一层 ModelProvider 接口。每个模型(包括开源模型)只需实现 llm_chattext_embeddingrerank 等几个方法,就能接入系统。这意味着你可以用 Dify 的 UI 管理本地部署的 Llama 3,同时用云端 GPT-4 做兜底——这在企业场景里非常实用。

2. 工作流引擎的变量作用域设计:Dify 的工作流节点之间通过变量传递数据,但变量的作用域是严格隔离的。每个节点只能访问上游节点输出的变量和全局变量,这避免了大型 Workflow 中变量污染的问题。从实现上看,Dify 用 DAG 拓扑排序 来保证执行顺序,并支持并行节点(比如同时调用两个 LLM 再合并结果)。

3. 核心依赖极简:后端只用 Flask + Celery + PostgreSQL/Redis,没有引入 Kafka 或 ES 这类重型组件。向量数据库默认用 Weaviate(轻量、支持混合搜索),但可以通过环境变量切换到 Qdrant 或 Milvus。这种“够用就好”的设计降低了部署门槛,适合中小团队。

同类对比

项目定位可视化编排RAG 支持部署复杂度社区生态




DifyLLMOps 平台强(拖拽式)内置完整 Pipeline低(Docker 一键)活跃(55k Stars)
LangFlowLangChain 可视化中等(节点式)依赖 LangChain 组件中等
Flowise低代码 LLM 应用强(拖拽式)基础支持中等
FastGPT知识库问答弱(配置式)强(专注知识库)中等

对比来看:Dify 的强项在于“全栈”——它不像 LangFlow 那样依赖 LangChain 的生态,也不像 FastGPT 只聚焦知识库。如果你需要一个既能做 RAG 又能做 Agent 还能做 Workflow 的平台,Dify 是目前最均衡的选择。

总结

如果你团队正在从“调 API 写 Demo”转向“交付生产级 LLM 应用”,Dify 是目前开源社区里最值得投入时间研究的平台。它把 Prompt 管理、RAG Pipeline、Workflow 编排、模型切换、日志监控这些脏活累活都封装好了,让你能专注于业务逻辑。

适合人群:后端开发者(快速搭 API)、AI 应用架构师(设计复杂 Workflow)、产品经理(可视化调试 Prompt)。不适合:需要极致定制化底层模型训练的场景。

🚀

AI 项目推荐

智能体
标签
#AI平台 #RAG #工作流 #低代码
浏览
👁️ 11
发布日期
2026-07-19