Dify 安装、使用方法详细全解
目录
1. 项目概述
1.1 Dify 是什么
Dify(Dify.AI)是一个开源的大语言模型(LLM)应用开发与运维平台,由 LangGenius, Inc. 开发。
核心定位:“Production-ready platform for agentic workflow development”(面向生产环境的智能体工作流开发平台)
解决的核心问题:
- 降低构建 LLM 应用的技术门槛——无需编写胶水代码即可将 AI 模型、工具、数据源快速整合
- 提供从原型到生产的一站式开发环境
- 提供直观的可视化画布界面,让非程序员也能构建复杂的 AI 应用
1.2 核心特性
Dify 提供六大核心功能模块:
| Workflow(工作流引擎) | 可视化画布,支持多步骤编排、条件分支、循环、人机协作(HITL) |
| Comprehensive Model Support | 无缝集成数百种专有/开源 LLM,涵盖数十家推理提供商 |
| Prompt IDE | 提示词编辑界面,支持模型效果对比、TTS 等附加功能 |
| RAG Pipeline | 完整的 RAG 能力,涵盖从文档摄入到检索的全流程 |
| Agent Capabilities | 支持 Function Calling 或 ReAct 模式,50+ 内置工具 |
| LLMOps | 监控和分析应用日志与性能,可观测性集成 |
1.3 适用场景
- RAG 聊天机器人 / 知识库问答系统
- 内容生成自动化
- 智能客服与支持系统
- 多步骤 AI 业务流程编排
- 数据洞察与分析
- 潜在客户生成与营销自动化
- 企业搜索与知识管理
1.4 开源情况
| GitHub 仓库 | https://github.com/langgenius/dify |
| 许可证 | Dify Open Source License(基于 Apache 2.0 的修改版) |
| 主语言 | TypeScript(56%)、Python(47%) |
| 创建时间 | 2023-04-12 |
| 最新推送 | 2026-06-09(极其活跃) |
2. 安装部署
2.1 系统要求
| CPU | ≥ 2 核 | ≥ 4 核 |
| 内存 (RAM) | ≥ 4 GB | ≥ 8 GB(含向量数据库时建议 16 GB) |
| 磁盘 | ≥ 20 GB 可用空间 | ≥ 100 GB |
| Docker Engine | ≥ 19.03 | 最新稳定版 |
| Docker Compose | ≥ 2.24.0(硬性要求) | 最新稳定版 |
| 操作系统 | Linux / macOS / Windows (WSL2) | Linux (Ubuntu 24.04 LTS) |
2.2 Docker Compose 本地开发安装
前置依赖
# Ubuntu/Debian – 安装 Docker
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
# 安装 Docker Compose 插件 (V2)
sudo apt install docker-compose-plugin
# 验证版本
docker –version
docker compose version # 必须 ≥ 2.24.0
安装步骤
# 第 1 步:克隆仓库
git clone https://github.com/langgenius/dify.git
cd docker
# 第 2 步:复制环境变量文件
cp .env.example .env
# 第 3 步:编辑 .env 修改必要配置(SECRET_KEY、数据库密码等)
nano .env
# 第 4 步:启动服务
docker compose up -d
# 第 5 步:查看日志确认服务状态
docker compose logs -f
启动后访问
- 默认地址:http://localhost:80(Nginx 代理端口)
- 首次访问会引导创建管理员账户
核心服务容器清单
| api | langgenius/dify-api:1.14.2 | REST API 后端 |
| worker | langgenius/dify-api:1.14.2 | Celery 后台任务处理器 |
| worker_beat | langgenius/dify-api:1.14.2 | Celery Beat 定时任务 |
| api_websocket | langgenius/dify-api:1.14.2 | WebSocket 协作服务 |
| web | langgenius/dify-web:1.14.2 | Next.js 前端应用 |
| sandbox | langgenius/dify-sandbox:0.2.15 | 代码执行沙箱 |
| plugin_daemon | langgenius/dify-plugin-daemon:0.6.1 | 插件守护进程 |
| nginx | nginx:latest | 反向代理 |
| redis | redis:6-alpine | 缓存与消息队列 |
数据库与向量数据库选择
数据库选项(通过 DB_TYPE 选择):
- postgres(默认)— PostgreSQL 15
- mysql — MySQL 8.0
- oceanbase — OceanBase 4.3.5(国产数据库)
向量数据库选项(通过 VECTOR_STORE 选择,17+ 种):
- weaviate(默认)
- qdrant、milvus、pgvector、pgvecto-rs
- chroma、elasticsearch、opensearch
- redis、opengauss、myscale、matrixone 等
# .env 中设置
DB_TYPE=postgresql
VECTOR_STORE=weaviate
# 或使用 profiles 启动特定服务
docker compose –profile milvus –profile postgresql up -d
常用操作命令
# 停止服务
docker compose down
# 重启服务
docker compose restart
# 查看服务状态
docker compose ps
# 升级 Dify
cd /path/to/dify
git pull origin main
cd docker
docker compose pull # 拉取新镜像
docker compose up -d # 重启
# 环境变量同步工具(升级后使用)
chmod +x dify-env-sync.sh
./dify-env-sync.sh
SSL/TLS 配置(HTTPS)
# .env 中设置
CERTBOT_EMAIL=your@email.com
CERTBOT_DOMAIN=your-domain.com
NGINX_HTTPS_ENABLED=true
# 启动 certbot profile
docker compose –profile certbot up -d
2.3 关键环境变量配置
# ==================== 安全与密钥 ====================
SECRET_KEY=*** # ⚠️ 必须修改!
CODE_EXECUTION_API_KEY=*** # 沙箱 API 密钥
PLUGIN_DAEMON_KEY=*** # 插件守护进程密钥
# ==================== 数据库 ====================
DB_TYPE=postgresql
DB_USERNAME=postgres
DB_PASSWORD=*** # ⚠️ 必须修改!
DB_HOST=db_postgres
DB_PORT=5432
DB_DATABASE=dify
# ==================== Redis ====================
REDIS_HOST=redis
REDIS_PORT=6379
REDIS_PASSWORD=*** # ⚠️ 必须修改!
CELERY_BROKER_URL=redis://:password@redis:6379/1
# ==================== 向量数据库 ====================
VECTOR_STORE=weaviate # 17+ 种选择
# ==================== 存储 ====================
STORAGE_TYPE=opendal # opendal/s3/azure-blob/google-storage
OPENDAL_SCHEME=fs
OPENDAL_FS_ROOT=storage
# ==================== 运行时 ====================
DEPLOY_ENV=PRODUCTION
LOG_LEVEL=INFO
DEBUG=false
2.4 生产环境部署方案
方案一:Kubernetes + Helm Chart
社区 Helm Chart(BorisPolonsky/dify-helm):
# 添加仓库
helm repo add dify https://borispolonsky.github.io/dify-helm
helm repo update
# 基础安装
helm install dify dify/dify –namespace dify –create-namespace
# 使用自定义 values.yaml
helm install dify ./charts/dify –namespace dify –create-namespace -f custom-values.yaml
生产环境推荐配置:
api:
replicas: 3
resources:
requests: { cpu: 500m, memory: 1Gi }
limits: { cpu: 1000m, memory: 2Gi }
autoscaling:
enabled: true
minReplicas: 2
maxReplicas: 10
worker:
replicas: 2
resources:
requests: { cpu: 1000m, memory: 2Gi }
limits: { cpu: 2000m, memory: 4Gi }
方案二:AWS 部署
- AWS Marketplace — Dify Premium(官方云原生版本)
- Terraform + ECS Fargate:ECS + RDS Aurora PostgreSQL + ElastiCache Redis + S3
- 仓库:https://github.com/sonodar/dify-aws-terraform
方案三:GCP 部署
- Terraform + Cloud Run:Serverless + Cloud SQL PostgreSQL + Cloud Memorystore + Cloud Storage
- 仓库:https://github.com/DeNA/dify-google-cloud-terraform
方案四:Azure 部署
- AKS + Helm Chart:Azure Kubernetes Service
- 仓库:https://github.com/Ruiruiz30/Dify-helm-chart-AKS
部署方式对比
| 适用场景 | 开发/测试/演示 | 中大型生产 | AWS 生态 | GCP 生态 |
| 部署难度 | ⭐ 极低 | ⭐⭐⭐⭐ 高 | ⭐⭐⭐ 中 | ⭐⭐⭐ 中 |
| 可扩展性 | 差 | 优秀(HPA) | 良好 | 优秀(Serverless) |
| 高可用 | 不支持 | 原生支持 | 多AZ配置 | 原生支持 |
| SSL/TLS | 内置 Certbot | Ingress管理 | LB管理 | Cloud LB |
3. 使用方法
3.1 应用类型概览
Dify 支持四种主要应用类型:
| Chatbot(聊天机器人) | 多轮对话应用 | 对话模式,支持上下文历史 |
| Text Generator(文本生成器) | 单次输入-输出 | 完成模式(单轮) |
| Agent(智能体) | 自主推理+工具调用 | 对话模式 + 工具调用 |
| Workflow(工作流) | 可视化节点编排 | 一次性执行 |
| Chatflow(聊天工作流) | 对话触发的流程 | 对话模式 + 工作流 |
3.2 Prompt Engineering / 提示词编排
创建 Chatbot 应用
变量系统
在提示词中输入 / > 新建变量(New Variable) 快速插入:
| Short Text | 最多 256 字符 | 姓名、邮箱 |
| Paragraph | 无长度限制 | 详细描述、文章 |
| Select | 预设选项下拉 | 分类、语言选择 |
| Number | 仅接受数值 | 数量、评分 |
| Checkbox | 是/否选择 | 开关类选项 |
| API-based Variable | 运行时从外部 API 获取 | 实时天气、数据库记录 |
变量语法:{{variable_name}}
AI 辅助提示词生成
- 点击 Generate(生成) 按钮,让 LLM 帮助起草或优化提示词
- 在 Ideal Output(理想输出) 中添加示例以获得更精准结果
- 每次生成保存为一个版本,支持自由回滚
多模态支持
- Vision(视觉):图片处理,支持高/低分辨率配置
- Audio(音频):语音处理
- Document(文档):文档处理
模型对比调试
- 选择 “多模型调试” 可同时运行最多 4 个模型进行输出对比
- 模型参数调节:Temperature(0-1)、Top P、Frequency Penalty、Presence Penalty
- 预设模式:Precise(精确)、Balanced(平衡)、Creative(创意)
应用工具箱(App Toolkit)
| 对话开场 | 欢迎语 + 推荐问题 |
| 追问建议 | 每次回复后生成追问 |
| TTS(文字转语音) | 语音回复 |
| STT(语音转文字) | 麦克风输入 |
| 文件上传 | 用户文件上传 |
| 引用与归属 | 显示来源编号引用 |
| 内容审核 | 三种审核方式(OpenAI Moderation / 关键词 / API扩展) |
| 注释回复 | 预设 Q&A 优先于 LLM |
| 类似内容 | 生成替代输出 |
3.3 Agent 创建与配置
什么是 Agent
Agent 是聊天式应用,模型可以自主推理任务、决定下一步操作,并在需要时使用工具。
创建步骤
推理策略
| Function Calling | 原生工具调用,接收结构化 tool_calls | GPT-4、Claude 3.5 等 |
| ReAct | 提示词策略引导模型使用工具 | 不支持 Function Calling 的模型 |
内置工具(50+)
| 网页搜索 | Google Search、Bing、DuckDuckGo、Tavily |
| 图像生成 | DALL·E、Stable Diffusion |
| 计算 | WolframAlpha、Calculator |
| 代码执行 | Code Interpreter |
| 知识检索 | Wikipedia、arXiv |
| 天气 | OpenWeatherMap |
| 新闻 | Google News |
| 其他 | CurrentTime 等 |
自定义工具创建
3.4 工作流(Workflow)编排
工作流 vs Chatflow
| 执行模式 | 从开始到结束运行一次 | 每条用户消息触发 |
| 起始节点 | User Input 或 Trigger | User Input |
| 结束节点 | Output(可选) | Answer(必须) |
| 适用场景 | 自动化报告、数据处理 | 交互式助手、引导式问答 |
所有节点类型(26+ 种)
ROOT(入口节点)
| Start / User Input | 标准入口,定义输入变量 |
| Trigger Webhook | Webhook 触发 |
| Trigger Schedule | 定时/Cron 触发 |
| Trigger Plugin | 插件事件触发 |
EXECUTABLE(逻辑节点)
| LLM | 调用语言模型,支持结构化输出、记忆、Jinja2 模板 |
| Code | Python/JavaScript 沙箱代码执行 |
| HTTP Request | 连接外部 API,支持所有 HTTP 方法 |
| Knowledge Retrieval | 搜索知识库内容 |
| Template Transform | Jinja2 模板转换和格式化 |
| Tool | 调用 Dify 工具 |
| Parameter Extractor | LLM 提取结构化参数 |
| Document Extractor | 文档内容提取 |
| List Operator | 数组过滤、排序、选择 |
| Knowledge Index | 内容索引到知识库 |
| Agent | 在工作流中使用自主 Agent |
| Human Input | 暂停等待人工输入/审批 |
| Variable Assigner | 表达式赋值或转换变量 |
BRANCH(分支节点)
| If-Else | 条件分支,支持 IF → ELIF(多个)→ ELSE |
| Question Classifier | LLM 智能分类用户输入,路由到不同路径 |
If-Else 比较运算符:
- 文本:包含/不包含、以…开头/结尾、等于/不等于
- 数值:等于/不等于、大于/小于、≥/≤
- 通用:为空/不为空
- 逻辑组合:AND(所有条件为真)/ OR(任一条件为真)
CONTAINER(容器节点)
| Iteration(迭代) | 对数组每个元素执行相同步骤 |
| Loop(循环) | 基于前一次结果的重复执行 |
Iteration vs Loop 对比:
| 处理模式 | 独立处理每个元素 | 每次迭代依赖前一次结果 |
| 执行方式 | 顺序或并行(最多10项) | 仅顺序 |
| 状态管理 | 无跨迭代状态 | 变量在迭代间持久化 |
| 适用场景 | 数据转换、批量处理 | 内容精炼、问题解决 |
Iteration 内置变量:
- items[object]:当前元素
- index[number]:当前索引(从 0 开始)
错误处理: Terminate(终止)/ Continue on Error(出错继续)/ Remove Failed Results(移除失败结果)
RESPONSE(输出节点)
| Answer | Chatflow 专用,组合文本+变量创建动态回复 |
| Output | Workflow 专用,定义返回变量 |
UTILITY(工具节点)
| Variable Aggregator | 汇聚互斥分支输出为单个变量 |
| Variable Assigner | 管理 Chatflow 持久化会话变量 |
并行执行
- 从同一节点分出多条路径可同时运行
- 并行分支在汇聚点后合并
- 注意:并行节点无法读取彼此的变量,但汇聚点后下游节点可读取所有来源
错误处理
| Fail Branch(失败分支) | 节点失败时走替代路径,输出 error_message 和 error_type |
| Default Value(默认值) | 错误时返回预设默认值 |
| Abort(中止,默认) | 工作流在错误处停止 |
重试配置: 最多 10 次自动重试,可配置重试间隔(最大 5000ms)
Human-in-the-Loop (HITL)
Dify 1.13.0 引入 Human Input 节点:
- 传递方式:Web 应用 / 邮件(发送链接到成员或外部邮箱)
- 表单内容:Markdown 格式、动态变量引用、输入字段
- 用户操作:预定义决策按钮,每个按钮路由到不同路径
- 超时策略:默认 3 天,超时后走超时分支
典型场景:
LLM 生成内容 → Human Input(审批/修改)→ [批准 → 发布] / [修改 → LLM 重新生成]
变量和数据传递
- 变量引用语法:{{#node_id.field_name#}} 或 {{variable_name}}
- 工作流变量:仅在一次执行中存活
- 会话变量:在整个聊天会话中持久化(Chatflow)
调试与发布
- 右侧预览面板实时测试
- 多模型调试(最多 4 个模型对比)
- 完整执行日志查看(节点链路 + 变量值)
- 发布选项:WebApp / API / Workflow as Tool / Mermaid 图表导出
- 版本控制:每次发布创建新版本,支持回滚
3.5 RAG(检索增强生成)
RAG 管线工作流程
文档上传 → 数据清洗 → 文本分块 → 向量化 → 索引存储
↓
用户查询 → 向量化 → 向量检索 + 关键词检索 → Rerank → 上下文注入 → LLM 生成回答
分块策略(Chunking)
| 自动模式 | 按段落/句子边界自动分割 | 快速入门、简单文档 |
| 自定义分隔符 | 自定义分隔符(如 \\n\\n)精确控制 | 需要精确控制的文档 |
| 父子分块 | 先大粒度再小粒度,检索用小、返回用大 | 保留完整上下文 |
| QA 对模式 | LLM 自动生成问答对 | FAQ、知识库问答 |
| 表格模式 | 按行或表格块分割 | CSV/Excel 结构化数据 |
关键参数:
- 最大 chunk 长度(通常 100~1000 tokens)
- 重叠令牌数(Overlap Tokens)
- 分隔符(Separators)
检索策略
| 向量检索(Vector Search) | Embedding 语义相似度搜索 | 理解语义,适合同义查询 |
| 全文检索(Full-Text) | 倒排索引关键词匹配 | 精确匹配,速度快 |
| 混合检索(Hybrid) | 向量 + 全文组合 | 结合两者优势,通过权重混合打分 |
重排序(Rerank): 使用 Cross-Encoder 模型(如 Cohere Rerank、BGE Reranker)对候选 chunks 精细化打分排序。
Dify 官方博客表明,混合检索 + 语义重排序方案比 OpenAI Assistants API 的 RAG 效果高出 20%。
元数据过滤
- 为文档添加自定义元数据(作者、日期、分类等)
- 手动过滤:在检索节点设置元数据过滤规则
- LLM 自动过滤:LLM 分析用户查询,自动决定过滤哪些元数据
多模态 RAG(v1.11.0+)
- 多模态 Embedding:文本和图像同时向量化
- 自动图片提取:PDF/Markdown 中的图片自动提取并索引
- 跨模态搜索:文字查图、图片查文字
- 使用多模态 Embedding 的知识库标记为 Multimodal
3.6 数据集管理
创建数据集
三种方式:
支持的导入格式
| 文档类 | PDF, DOCX, DOC |
| 纯文本 | TXT, Markdown (.md) |
| 结构化数据 | CSV, Excel (.xlsx, .xls) |
| 演示文稿 | PPTX, PPT |
| 网页类 | HTML, WEBPAGE |
| 数据交换 | JSON, YAML, XML |
| 其他 | NOTION, URLs |
导入方法
| 文件上传 | 直接上传/拖拽上传 |
| 网页抓取 | 输入 URL 自动抓取,支持递归抓取子页面 |
| Notion 同步 | 授权连接 Notion,支持自动同步 |
| 文本导入 | 直接粘贴/输入文本 |
| API 导入 | 通过 REST API |
索引方式
| 高质量模式 | Embedding + 向量数据库 | 向量/全文/混合 + Rerank | 生产环境 |
| 经济模式 | 仅倒排索引,无需 Embedding | 仅关键词检索 | 低成本/测试 |
注意:高质量模式不能降级为经济模式。
文档管理
- 状态流转:waiting → parsing → cleaning → splitting → indexing → completed(失败则为 error)
- 在线编辑:可修改、合并、拆分 chunk
- 批量操作:支持多文档删除
- 分段管理:每个文档分割为多个 segment,可单独启用/禁用/删除
- API 查询进度:GET /v1/datasets/{id}/documents/{doc_id}/indexing-status
数据集权限
| ONLY_ME | 仅创建者 |
| TEAM | 团队所有成员 |
| ALL | 所有人 |
3.7 API 集成
API 分类
| Service API | /v1 | 调用 AI 应用 | App-level API Key |
| Console API | /console/api | 平台管理 | User-level API Key |
| Dataset API | /v1 | 知识库管理 | Dataset-level API Key |
Chat API
POST /v1/chat-messages — 创建聊天消息
curl -X POST https://api.dify.ai/v1/chat-messages -H "Authorization: Bearer {API_KEY}" -H "Content-Type: application/json" -d '{
"inputs": {},
"query": "你好,请介绍一下你的功能",
"response_mode": "streaming",
"user": "user-123456",
"conversation_id": "",
"files": []
}'
流式响应(SSE):
event: message
data: {"event":"agent_message","answer":"你好…","conversation_id":"xxx"}
event: message_end
data: {"event":"message_end","metadata":{"usage":{"total_tokens":123}}}
其他端点:
- GET /v1/conversations — 获取会话列表
- GET /v1/messages — 获取消息列表
- DELETE /v1/conversations/{id} — 删除会话
- POST /v1/messages/{id}/feedback — 消息反馈
Workflow API
POST /v1/workflows/run — 运行工作流
curl -X POST https://api.dify.ai/v1/workflows/run -H "Authorization: Bearer {API_KEY}" -H "Content-Type: application/json" -d '{
"inputs": {"input_param_1": "value1"},
"response_mode": "streaming",
"user": "user-123456"
}'
流式事件: workflow_started → node_started → node_finished → workflow_finished
其他端点:
- GET /v1/workflows/{run_id}/results — 获取执行结果
- POST /v1/workflows/{run_id}/stop — 停止执行
Completion API
POST /v1/completion-messages — 创建完成消息
curl -X POST https://api.dify.ai/v1/completion-messages -H "Authorization: Bearer {API_KEY}" -d '{
"inputs": {"text": "请帮我写一段介绍"},
"response_mode": "streaming",
"user": "user-123456"
}'
Dataset API(知识库 API)
# 创建数据集
curl -X POST https://api.dify.ai/v1/datasets -H "Authorization: Bearer {DATASET_API_KEY}" -d '{"name":"我的知识库","indexing_technique":"high_quality",…}'
# 创建文档(从文本)
curl -X POST https://api.dify.ai/v1/datasets/{id}/document/create-by-text -d '{"name":"示例文档","text":"文档内容…",…}'
# 创建文档(从文件)
curl -X POST https://api.dify.ai/v1/datasets/{id}/document/create-by-file -F "file=@document.pdf" -F 'data={"indexing_technique":"high_quality"}'
# 查询检索
curl -X POST https://api.dify.ai/v1/retrieval -d '{"query":"检索问题","retrieval_model":{"search_method":"hybrid_search","top_k":4,…}}'
HITL API
文件上传 API
POST /v1/files/upload
curl -X POST https://api.dify.ai/v1/files/upload -H "Authorization: Bearer {API_KEY}" -F "user=user-123456" -F "file=@image.png"
在消息中引用:
{
"files": [
{"type": "image", "transfer_method": "remote_url", "url": "https://example.com/image.png"},
{"type": "document", "transfer_method": "local_file", "upload_file_id": "xxx"}
]
}
音频 API
- POST /v1/audio-to-text — 语音转文字(STT)
- POST /v1/text-to-audio — 文字转语音(TTS)
SDK 可用性
| Python | dify-client | pip install dify-client |
| Python(知识库) | dify-knowledge-sdk | pip install dify-knowledge-sdk |
| Node.js | dify-client | npm install dify-client |
| Go | dify-go | go get github.com/kervinchang/dify-go |
| Rust | dify-client | cargo add dify-client |
| Dart | dify_api | pub add dify_api |
| Java | dify-spring-boot-starter | Maven/Gradle |
Node.js SDK 示例:
const { ChatClient } = require('dify-client');
const chat = new ChatClient('api-key');
const result = await chat.createMessage({ query: 'Hello', user: 'user-123' }, (data) => {
console.log(data);
});
3.8 模型配置
支持的模型提供商
Dify 支持数十家模型提供商,涵盖以下类型:
| OpenAI | GPT-4, GPT-3.5, text-embedding-3-small/large, TTS, STT |
| Anthropic | Claude 3.5 Sonnet/Opus/Haiku |
| Gemini Pro, Gemini Flash, text-embedding-004 | |
| Azure OpenAI | Azure 托管的 OpenAI 模型 |
| Cohere | Command 系列 + Embedding + Rerank |
| Hugging Face | HuggingFace 托管模型 |
| Replicate | Replicate 托管模型 |
| Ollama | 本地部署开源模型(Llama3, Mistral, Qwen 等) |
| vLLM | 自托管高性能推理 |
| AWS Bedrock | Claude, Llama, Titan 等 |
| Zhipu AI | GLM-4 等(智谱) |
| Baichuan | 百川大模型 |
| Tongyi | 通义千问(阿里) |
| Moonshot | Kimi(月之暗面) |
| MiniMax | MiniMax 模型 |
| 自定义 | 任何 OpenAI API 兼容的端点 |
模型类型支持:
- LLM — 大语言模型
- Text Embedding — 文本向量化
- Rerank — 重排序
- Speech-to-Text — 语音转文字
- Text-to-Speech — 文字转语音
- Moderation — 内容审核
- Speech-to-Text — STT
添加自定义模型
方式一:自定义提供商(Custom Provider)
在模型提供商页面 → 添加自定义提供商:
方式二:OpenAI 兼容端点
任何兼容 OpenAI API 的端点(如 vLLM、Ollama、本地部署的 Llama.cpp 等)均可直接接入。
方式三:插件系统
通过 Dify Marketplace 安装社区模型插件。
3.9 插件/扩展系统
架构
Dify 插件系统采用解耦架构,每个插件作为独立包运行:
- 独立开发、部署和维护
- 标准化的版本控制和安全管理
- 通过 Plugin Daemon 进行统一管理
插件类型
| 工具插件 | 扩展 Agent/工作流可用的工具 |
| 模型插件 | 接入新的模型提供商 |
| 扩展插件 | 扩展平台功能(如通知、集成) |
Dify Marketplace
- 网址:https://marketplace.dify.ai
- 社区插件库,包含自动审核机制
- 插件源码仓库:https://github.com/langgenius/dify-plugins
MCP 集成
Dify 支持 MCP(Model Context Protocol)标准,可接入 MCP 工具服务器。
3.10 团队协作与权限管理
工作区(Workspace)概念
Dify 的权限体系以 工作区(Workspace) 为中心。每个用户可属于多个工作区。
角色体系
| Owner(所有者) | 完整控制权,管理成员、账单、所有资源 |
| Admin(管理员) | 管理成员和应用,可管理模型提供商配置 |
| Editor(编辑者) | 创建和编辑应用、知识库 |
| Normal Member(普通成员) | 查看和使用应用 |
| Only Me | 仅访问自己创建的资源 |
邀请成员
3.11 日志与监控
内置分析
- 应用日志:查看每次对话/工作流执行的完整记录
- 性能指标:Token 消耗、响应时间、模型使用统计
- 标注功能:对 AI 回复进行标注,用于持续优化
- 版本对比:不同版本的应用使用效果对比
外部可观测性集成
| LangSmith | LLM 链路追踪 |
| LangFuse | LLM 可观测性 |
| Opik | 应用监控 |
| Weave | 模型评估 |
| Arize Phoenix | 向量搜索分析 |
| 阿里云 | 阿里云可观测性 |
Grafana 监控
通过 PostgreSQL 数据源接入 Grafana:
# Grafana 数据源配置
Host: <dify-postgres-host>
Port: 5432
Database: dify
User: <db-user>
SSL Mode: disable
日志级别配置
# .env 中设置
LOG_LEVEL=INFO # DEBUG / INFO / WARNING / ERROR
4. 生态系统与资源
4.1 官方资源
| 官网 | https://dify.ai |
| 官方文档 | https://docs.dify.ai |
| API 参考 | https://docs.dify.ai/api-reference |
| GitHub 仓库 | https://github.com/langgenius/dify |
| 文档源码 | https://github.com/langgenius/dify-docs |
| 插件市场 | https://marketplace.dify.ai |
| 插件仓库 | https://github.com/langgenius/dify-plugins |
| 官方博客 | https://dify.ai/blog |
4.2 社区资源
| Dify 论坛 | https://forum.dify.ai |
| Discord | https://discord.gg/dify(官方 Discord 社区) |
| Hello Dify | https://hellodify.com(中文教程站) |
| Usedify | 第三方教程分享站 |
4.3 教程与视频
| YouTube 官方频道 | Dify Tutorials Playlist |
| Hello Dify | 最全面的中文在线 Dify 教程 |
| LangBot + Dify | 集成 WeChat/QQ/Telegram 的教程 |
| Dify Workflow Skills | https://github.com/mango-svip/dify-workflow-skills |
4.4 第三方部署方案
| Helm Chart | https://github.com/borispolonsky/dify-helm |
| AWS Terraform | https://github.com/sonodar/dify-aws-terraform |
| GCP Terraform | https://github.com/DeNA/dify-google-cloud-terraform |
| AKS Helm | https://github.com/Ruiruiz30/Dify-helm-chart-AKS |
| Helm (KevinZhao) | https://github.com/KevinZhao/dify_helm |
5. 商业版 vs 开源版对比
5.1 三种部署模式
| 费用 | 免费 | 按用量付费(含 200 次免费 GPT-4 调用) | 自定义定价 |
| 许可 | Dify OSS License | 服务订阅 | 商业许可 |
| 部署 | 自托管(Docker/K8s) | 托管服务 | 自托管 + 企业支持 |
| 核心功能 | ✅ 完整(工作流/RAG/Agent/API) | ✅ 完整 | ✅ 完整 |
| 多租户 SaaS | ❌ 不允许 | — | ✅ |
| SSO/SAML | ❌ | ✅(高级计划) | ✅ |
| 自定义品牌 | ❌ | — | ✅ |
| 高级权限 | ❌ | — | ✅ |
| 负载均衡 | ❌ | — | ✅ |
| SLA 保障 | — | 标准 | 企业级 |
| 技术支持 | 社区 | 标准支持 | 专属支持 |
| AWS 市场 | — | — | Premium AMI |
| Azure 市场 | — | — | 企业版上架 |
5.2 许可证限制
Dify Open Source License 基于 Apache 2.0,附加两项限制:
5.3 版本发布频率
- 平均 每 1-2 周发布一个新版本
- 发布频率极高,更新非常活跃
最近版本:
| v1.14.2 | 2026-05-19 | 安全修复(租户隔离)、HITL 追踪、RAG 改进 |
| v1.14.1 | 2026-05-12 | 安全加固、自托管部署优化 |
| v1.14.0 | 2026-04-29 | HITL API、Agent 服务端架构 |
| v1.13.3 | 2026-03-27 | 维护更新 |
| v1.11.0 | 2026-01 | 多模态 RAG |
| v1.10.0 | 2025-11 | Webhook 工作流触发器 |
总结
Dify 是目前GitHub 上最受欢迎的开源 LLM 应用开发平台之一(14.4 万+ Star),核心优势包括:
推荐场景:需要快速构建 AI 应用、搭建企业知识库问答系统、编排复杂 AI 工作流的团队和个人开发者。



