Dify:开源 LLM 应用开发平台,可视化编排搭 AI 应用

想搭一个 AI 客服、知识库问答、文案生成工具,过去往往要写一堆胶水代码——调模型、对接向量库、设计 Agent 工具链、接数据库、写后端 API。Dify 想把这套链路压成一个”画布”,让产品、运营也能参与 AI 应用的搭建。本文从功能、部署、对比三个角度聊一聊这个开源平台。

它是什么

Dify 是一款开源的 LLM 应用开发平台(仓库 langgenius/dify,采用 Apache 2.0 协议),核心思路是把 AI 应用的常见组件——模型调用、提示词编排、知识库检索、Agent 工具调用、可观测性——封装成可视化节点,用户在画布上拖拽连接就能产出可对外提供服务的应用。它同时提供 Cloud(托管版)和 Community Edition(自部署版)两种使用方式。

按官方说法,Dify 是”AI workflow + RAG pipeline + Agent capabilities + 模型管理 + LLMOps”的组合体,目标是从原型快速走到生产。对应的 README 也把这些能力列为核心卖点。

核心功能拆解

可视化编排:Workflow 与 Chatflow

Dify 提供两种画布:

  • Workflow:适合一次性任务,例如文档摘要、数据分类、批量处理;
  • Chatflow:带对话状态的编排,节点之间能保留多轮上下文,适合做客服 bot、问答机器人。

每个节点对应一类操作:LLM 调用、知识库检索、条件分支、代码执行、HTTP 请求、模板转换、变量赋值等。流程写完可以直接发布成 Web 应用、API 或者嵌入到现有系统。

Dify Chatflow 编排画布,包含开始节点、知识库检索节点、LLM 节点和结束节点-1

RAG 引擎

知识库问答的链路基本都在 Dify 内置里了:

  • 文档导入支持 PDF、PPT、Word、Markdown 等常见格式;
  • 提供自动分段、Embedding 向量化、检索召回整套流程;
  • 向量库兼容多种后端,包括 Weaviate、Qdrant、Milvus,以及基于 Postgres 的 pgvector;

> README 把 “Comprehensive RAG capabilities” 列为七大核心能力之一,覆盖文档摄入到检索的完整管线。

这意味着用户不用单独再搭一套召回服务。

Agent 能力

Dify 的 Agent 节点支持两种推理模式:Function Calling(基于模型原生工具调用)和 ReAct(思考-行动循环)。两者都可以挂载工具,Dify 自带了 50+ 工具,包括 Google Search、DALL·E、Stable Diffusion、WolframAlpha 等。用户也可以自定义工具,把企业内部 API 接进来。

模型无关

模型层 Dify 不锁死,兼容:

  • 闭源模型:OpenAI GPT 系列、Anthropic Claude、Google Gemini 等;
  • 国内模型:通义、文心等可通过 OpenAI 兼容协议或自定义 provider 接入;
  • 本地模型:Ollama、LM Studio 等通过本地 OpenAI 兼容接口对接。

官方文档里维护了一份完整的支持列表,覆盖几十家推理服务商。这意味着切换模型只需要改配置,不需要重写业务流。

Prompt IDE

提示词编辑器提供:变量插值、多模型对比运行、文本转语音等扩展插件、对话调试。同一段提示词可以并排比对不同模型的输出,方便做评估和回归。

LLMOps 与可观测性

已发布的应用会产生日志,Dify 后台能看到:

  • 每次请求的 prompt、模型输出、Token 消耗、耗时;
  • 用户反馈标注(点赞/点踩、修正答案);
  • 基于这些数据持续迭代提示词和数据集。

此外,Dify 还能把链路数据对接外部可观测平台:Opik、Langfuse、Arize Phoenix,做更细的链路追踪和评估。

Backend-as-a-Service

所有编排出来的应用都自动附带 REST API,可以直接被前端或其他后端服务调用,省去单独写接口的步骤。

部署与启动

社区版最省事的跑法是 Docker Compose。README 提到的最低硬件门槛是 CPU ≥ 2 Core、RAM ≥ 4 GiB。启动前确保机器装好了 Docker 和 Docker Compose,然后:

cd dify
cd docker
cp .env.example .env
docker compose up -d

docker/.env 里是基础配置,如果需要更细的开关项,分主题放在 docker/envs/ 下,按需启用。改完环境变量后,在 docker 目录下重新跑 docker compose up -d 即可。

启动后浏览器打开 http://localhost/install,按引导完成管理员账号初始化。

{{图:Dify 安装初始化页面,包含管理员邮箱、密码、用户名输入框}}

进阶部署选项

只跑 demo 用 Docker Compose 就够,真要进生产通常需要更高可用。下面这些是 README 里列出的社区方案,按部署方式分了几类:

部署方式 代表项目
Grafana 监控面板 bowenliang123/dify-grafana-dashboard(用 Postgres 做数据源)
Helm Chart LeoQuote、magicsong 等多个版本
K8s YAML Winson-030、wyy-holding、Zhoneym 等版本
Terraform Azure(nikawang)、Google Cloud(sotazum)
AWS CDK KevinZhao(EKS)、tmokmss(ECS)
阿里云 Computing Nest、DMS 一键部署

如果使用 Helm 或 K8s YAML,建议先看一眼对应仓库是否标注了兼容的 Dify 版本,避免版本不匹配踩坑。

{{图:Dify 部署架构示意图:API、Worker、Web 三类容器连接 Postgres、Redis、向量库}}

和 FastGPT 的区别

很多团队会把 Dify 和 FastGPT 放一起比较。两者都是开源、都强调 RAG、都提供可视化编排,但定位有差异:

  • Dify:定位偏”通用 AI 应用编排平台”。Workflow 节点丰富,模型无关做得彻底,Agent 工具链完整,更像”画布版 LangChain”。适合做多类型应用:客服 bot、文案生成、Agent 工具调用、内部 AI 助手等。
  • FastGPT:定位偏”知识库问答的深度工具”。在文档分段、检索策略、问答效果调优上做得更深,社区积累了大量行业模板,更适合纯知识库场景。

如果业务核心是”我想搭一个问答系统,让它读文档答得准”,FastGPT 上手更直接;如果想做的是”我有多种 AI 场景要落地,包括但不限于知识库”,Dify 的覆盖面更广。

适合谁用

  • 想快速验证 AI 创意的产品 / 运营:不用写代码就能搭 demo;
  • 中小团队自建 AI 中台:模型、向量库、Agent、API 一次配齐;
  • 企业内部 AI 平台:私有化部署,对接内部模型或私有云资源;
  • 学习 LLM 应用架构的开发者:可以下源码跑通整个流程,理解 RAG、Agent、LLMOps 怎么落地。

一些提醒

  • 模型 API Key、向量库密码、Redis 密码等敏感配置都写在 .env 里,生产环境务必单独管理,不要把带密钥的 .env 提交进仓库;
  • 自带 Postgres + Redis + 某一种向量库,资源占用不算小,README 给的 4 GiB 内存是底线,复杂场景建议 8 GiB 以上;
  • 社区版和企业版在能力上存在差异,如果有 SLA、合规、SSO 等需求,可以走 [email protected] 了解企业版细节;
  • 版本迭代较快,建议以 GitHub Releases 和官方文档为准,避免按老教程配置遇到不兼容。

如果只是想试一下,最快的路径是直接拉 Docker Compose 跑起来;如果有明确的生产目标,建议先在 Dify Cloud 上把流程跑通,再迁移到自托管环境,会少踩不少坑。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。