Dify:可视化搭建 AI 应用的终极平台(149k+ Stars)

发布时间:2026/9/15 1:25:06

Dify:可视化搭建 AI 应用的终极平台(149k+ Stars) **一句话**拖拽搭 RAG、编排工作流、创建 AI Agent — 不写一行代码10 分钟从零到生产。一、项目简介Dify是一个开源Apache 2.0的 LLM 应用开发平台口号是从原型到生产快 10 倍。它将 AI 应用开发的常见组件 — 模型接入、Prompt 工程、RAG 管道、Agent 能力、工作流编排、监控分析 — 全部集成到一个可视化 Web 界面中。项目信息详情官网https://dify.aiGitHubgithub.com/langgenius/dify⭐Stars149,000协议Apache 2.0可免费商用技术栈Python TypeScript PostgreSQL Redis部署Docker Compose / K8s / 源码️最新版本1.16.0-rc1Agent 沙箱等架构总览二、安装部署2.1 Docker Compose 一键部署推荐# 前置条件确保已安装 Docker Docker Compose ​ # 克隆项目 git clone https://github.com/langgenius/dify.git cd dify/docker ​ # 复制环境配置 cp .env.example .env ​ # 启动所有服务 docker compose up -d ​ # 查看启动状态 docker compose ps ​ # 查看日志 docker compose logs -f api2.2 各容器说明启动后会运行 6 个容器容器端口CPU/内存用途dify-web3000轻量前端界面Nginx 静态文件dify-api5001中等后端 API 服务dify-worker—中等Celery 异步任务执行器db(PostgreSQL)5432视数据量主数据库redis6379轻量缓存 消息队列weaviate8080中等向量数据库默认2.3 环境变量配置# .env 关键配置 ​ # 密钥必改用于加密 Session SECRET_KEYyour-secret-key-here ​ # 数据库默认使用内置 PostgreSQL DB_USERNAMEpostgres DB_PASSWORDdifyai123 DB_HOSTdb DB_PORT5432 DB_DATABASEdify ​ # 向量数据库可选 Qdrant / Milvus / PGVector VECTOR_STOREweaviate # VECTOR_STOREqdrant # QDRANT_HOSTqdrant # QDRANT_PORT6333 ​ # Redis REDIS_HOSTredis REDIS_PORT6379 REDIS_PASSWORD ​ # 存储 STORAGE_TYPElocal # STORAGE_TYPEs3 # S3_BUCKET_NAMEdify-storage # S3_REGIONus-east-12.4 Kubernetes 部署# Helm Chart helm repo add dify https://langgenius.github.io/dify-helm helm install dify dify/dify \ --set service.typeNodePort \ --set ingress.enabledtrue三、模型提供商配置Dify 不包含 LLM需要配置外部模型。支持100 模型提供商。3.1 配置步骤访问http://localhost:3000注册第一个账号自动成为管理员Settings → Model Provider点击你的模型提供商 → 填入 API Key → Save3.2 推荐配置方案# 方案一生产级质量优先 LLM: - OpenAI: gpt-4o # 主要推理 - Anthropic: claude-sonnet-5 # 长文档 Embedding: - OpenAI: text-embedding-3-small Rerank: - Cohere: rerank-v3.5 ​ # 方案二混合性价比优先 LLM: - DeepSeek: deepseek-chat # 日常推理极低价 - OpenAI: gpt-4o-mini # 复杂任务 Embedding: - Ollama: nomic-embed-text # 免费本地嵌入 ​ # 方案三完全本地 LLM: - Ollama: qwen2.5-coder:7b - Xinference: qwen3:14b Embedding: - Ollama: nomic-embed-text Rerank: - Xinference: bge-reranker-v23.3 模型管理功能功能说明模型权重为每个模型设置不同权重如 gpt-4o 权重 10贵、deepseek 权重 1便宜限制访问限制特定模型只能被指定用户/角色使用自定义模型接入任何 OpenAI 兼容的 APIOllama/vLLM/LocalAI 等动态切换工作流中不同节点可用不同模型四、核心功能一聊天助手4.1 创建聊天助手创建应用→ 选择聊天助手填写应用名称和描述配置系统提示词你是 XX 公司的智能客服助手。 ​ ## 行为准则 - 基于知识库内容回答问题 - 如果知识库中没有相关信息礼貌告知暂时无法回答 - 回答简明扼要控制在 200 字以内 - 对敏感问题引导联系人工客服 ​ ## 能力边界 - 可以查询订单状态、退换货政策、产品信息 - 不支持价格修改、订单取消、账户注销选择模型如gpt-4o可选绑定知识库 → 发布4.2 功能增强配置功能配置位置说明知识库检索添加知识库并设置召回策略基于私有文档回答️工具调用添加内置或自定义工具查询天气、执行代码、搜索网页记忆设置对话变量记住用户信息文件上传开启文件上传开关支持图片/文档/代码分析语音开启 TTS/STT语音对话开场白设置开场白建议问题引导用户提问4.3 发布方式创建完成后可以方式说明Web App生成独立可访问的 URL分享给用户嵌入式 iframe嵌入到现有网站API通过 REST API 集成到任何应用小程序导出为微信/企业微信小程序五、核心功能二RAG 知识库5.1 创建知识库左侧导航知识库→创建知识库上传文档支持 PDF、DOCX、TXT、Markdown、Excel、HTML 等Dify 自动完成文本分段 → 向量化 → 索引配置检索策略5.2 分段策略策略默认说明分段标识符\n\n按段落切分最大分段长度500 tokens每段的最大 token 数重叠长度50 tokens相邻段重叠保持上下文规则自动分段/自定义按分隔符、标题等5.3 检索策略重要模式召回方式适用场景推荐度向量检索语义相似度top-K开放式问答、模糊匹配⭐⭐⭐⭐全文检索BM25 关键词匹配精确条文、编号查询⭐⭐⭐混合检索向量 全文 Rerank大部分场景首选⭐⭐⭐⭐⭐N选1路由Rerank 后选最优段精确问答每问只需一段⭐⭐⭐⭐推荐设置检索策略: 混合检索 召回数量(top-K): 4 Rerank 模型: Cohere / BGE 相似度阈值: 0.55.4 知识库增强功能# 预处理选项 grammar_check: true # 自动纠正错别字 keyword_extraction: true # 提取关键词 summary: true # 分段自动摘要 image_ocr: true # 图片文字提取 ​ # 检索增强 hybrid_search: true # 混合检索 rerank_enabled: true # 重排序 rerank_model: bge-reranker-v2-m3 ​ # 多数据源 external_database: false # 外部数据源如 Airtable api_datasource: false # API 数据源六、核心功能三工作流Dify 的王牌6.1 工作流 vs 聊天助手对比聊天助手工作流复杂度一问一答多步编排流程控制无条件/循环/并行/等待节点数1 个LLM60 种节点适用场景简单 QA、客服文档处理、分析报告、多步骤 Agent6.2 所有节点类型输入/输出节点用途开始接收用户输入变量结束定义最终输出人工输入暂停执行等待用户输入1.13回答直接输出给用户的文本AI 节点节点用途LLM大模型推理可自定义 Prompt知识库检索从知识库检索相关文档问题分类自动将问题分类到不同分支关键词提取从文本中提取关键词流程控制节点用途条件分支If/Else 条件判断循环重复执行直到条件满足变量聚合合并多个并行分支的变量等待等待指定时间代码执行 Python/JavaScript 代码模板转换使用 Jinja2 模板转换变量工具节点节点用途工具调用调用 50 内置工具或自定义工具Agent嵌入一个独立 Agent 节点1.16HTTP 请求发送 HTTP 请求调用外部 API代码执行器Python 沙箱执行代码变量/数据节点用途变量赋值设置工作流变量参数提取从结构化数据中提取字段列表操作对列表进行 map/filter/reduce迭代器循环处理列表中的每个元素6.3 完整工作流示例智能客服# 智能客服工作流 节点序列: 1. [开始] 接收用户问题 2. [问题分类] 判断问题类型 - 条件: 订单问题 → 转订单处理分支 - 条件: 产品咨询 → 转产品答疑分支 - 条件: 投诉建议 → 转人工分支 3a. [知识库检索] 订单分支: 检索订单相关文档 3b. [知识库检索] 产品分支: 检索产品文档 4a. [LLM] 生成订单相关回答 4b. [LLM] 生成产品相关回答 5. [条件分支] 判断用户满意度 - 满意 → [结束] - 不满意 → [人工输入] 转人工客服 6. [结束] 返回最终回答6.4 人机协同1.13 新功能Dify 的Human-in-the-Loop功能让关键节点由人工审批配置在工作流画布添加人工输入节点配置审批表单字段fields: - name: decision type: select options: [批准, 驳回, 升级] - name: comment type: text设置通知方式Web App / 邮件执行到该节点时自动暂停等待人工审批七、核心功能四Agent7.1 Dify Agent1.16 新功能Dify Agent 是运行在Linux 沙箱中的独立 AI Agent具有完整工具调用能力# Agent 配置 system_prompt: | 你是一个数据分析 Agent可以 - 执行 Python 代码分析数据 - 搜索知识库获取信息 - 调用外部 API 获取实时数据 ​ tools: - python_code_executor # 代码执行 - web_search # 网页搜索 - knowledge_search # 知识库检索 - custom_api # 自定义工具 ​ memory: enabled: true window: 10 # 最近10轮对话7.2 50 内置工具工具分类工具搜索Google Search、Bing Search、Web scraping数据处理Python 执行器、图表生成、文本处理网络HTTP 请求、RSS 读取、网页抓取️地图高德地图、百度地图计算数学计算、时间日期文件文件读取、文件写入、CSV 处理️图片DALL-E 绘图、Stable Diffusion音频语音转文字、文字转语音7.3 自定义工具通过 OpenAPI 规范接入任何 API# openapi.yaml openapi: 3.0.0 info: title: 内部订单查询 API version: 1.0.0 paths: /api/orders: get: summary: 查询订单详情 parameters: - name: order_id in: query schema: type: string responses: 200: description: 订单信息在 UI 中上传此 yaml 文件 → Dify 自动解析为可在工作流中使用的工具。7.4 MCP 集成Dify 也支持 MCP 协议Settings → MCP → 添加 MCP Server → 输入 MCP 服务地址 → 工具自动加载到 Agent 工具箱八、监控与 LLMOps每个应用发布后Dify 内置完整的监控分析8.1 日志对话日志: 搜索、筛选、标注 标注方式: 赞/踩、自定义标签、人工修正 导出: CSV / JSON8.2 分析指标指标说明总对话数时间段内对话量活跃用户独立用户数Token 消耗按模型分解⏱平均响应时间用户等待时长⭐反馈统计赞/踩比率❌失败率API 错误、超时比例8.3 成本管理可以设置预算限制、日调用量限制、特定模型限流防止 API 费用失控。九、API 参考Dify 的所有功能都可通过 REST API 调用适合嵌入到现有系统9.1 聊天 APIimport requests ​ # 发送消息 response requests.post( http://localhost:5001/v1/chat-messages, headers{Authorization: Bearer app-xxxxx}, json{ query: 年假怎么休, user: user-123, response_mode: streaming, conversation_id: }, streamTrue ) ​ for line in response.iter_lines(): if line: print(line.decode())9.2 工作流 API# 触发工作流 response requests.post( http://localhost:5001/v1/workflows/run, headers{Authorization: Bearer app-xxxxx}, json{ inputs: {text: 上传的文档内容...}, response_mode: blocking, user: user-123 } ) print(response.json())9.3 知识库 API# 创建文档 requests.post( http://localhost:5001/v1/datasets/{id}/document/create-by-text, headers{Authorization: Bearer app-xxxxx}, json{ name: 公司政策.docx, text: 文档正文内容... } )十、效果实测场景传统开发Dify提速搭建 RAG 知识库对话1-3 天10 分钟50-100x多步工作流编排2-5 天30 分钟20x接入新模型1-2 小时1 分钟100x人机审核流程1-2 天5 分钟50xAgent 工具开发2-3 天10 分钟20x对话数据分析1-2 天内置即开即用十一、适用场景角色能做什么‍产品经理不依赖开发验证 AI 功能设想‍开发者快速搭建 AI 功能原型再通过 API 嵌入系统企业 IT内部知识库、智能客服、文档处理创业者几天内发布 AI 产品 MVP研究人员快速对比不同模型、检索策略效果十二、常见问题问题解答Dify 免费吗社区版完全免费Apache 2.0可以商用需要编程吗基础功能不需要高级功能需要少量 Python/API 知识支持中文吗完全支持中文界面 中文文档Dify vs LangChainLangChain 是 Python 库Dify 是可视化平台两者可以互补数据安全性自部署版本数据完全在自己服务器云版数据在 Dify 服务器能处理多少并发取决于服务器配置可以通过 Celery workers 横向扩展十三、总结优势不足✅ 可视化操作10 分钟上手❌ 复杂场景不如手写代码灵活✅ 100 模型接入❌ 自部署资源消耗较大至少 4GB 内存✅ 内置 RAG 工作流 Agent❌ 高级调试能力还在完善✅ 人机协同 (HITL)❌ 超大并发需要架构优化✅ Apache 2.0可免费商用✅ 社区活跃官方文档齐全一句话如果你想把 AI 集成到业务中又不想从零写 RAG 管道和 Agent 编排Dify 就是最正确的选择。十分钟搭建、一天上线、持续迭代。
延伸阅读

更多相关文章

2026/9/1 15:04:29

网盘直链下载助手:技术原理与多平台应用深度解析

网盘直链下载助手:技术原理与多平台应用深度解析 【免费下载链接】baiduyun 油猴脚本 - 一个免费开源的网盘下载助手 项目地址: https://gitcode.com/gh_mirrors/ba/baiduyun 在云存储服务普及的今天,用户面临着下载速度限制和跨平台兼容性的双重…

2026/9/6 12:12:29

AI智能体运营工程师:职业前景与技能解析

1. 项目背景与行业趋势 最近在重庆举办的"智能体来了(西南总部)"活动正式推出了AI智能体运营工程师就业班,这标志着智能体技术从实验室走向产业化的重要一步。作为一名跟踪AI行业多年的从业者,我观察到几个关键趋势&…

2026/9/15 1:21:20

航空航天数据可视化实战:从技术选型到实时监控大屏

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/15 1:21:20

医疗数据清洗实战:OpenRefine、Kettle与本地大模型方案对比

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/15 1:21:20

SpringBoot+Vue3+MyBatis汽车租赁系统全栈实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/15 1:21:20

Flutter与OpenHarmony开发书籍管理应用实战

1. 项目概述:Flutter与OpenHarmony的跨界融合这个实战项目将Flutter框架与OpenHarmony操作系统相结合,开发一个书籍管理记录应用,核心功能是实现"想读清单"的数字化管理。Flutter作为跨平台开发框架,其优势在于一套代码…

2026/9/15 1:21:20

HTML5原生video/audio标签实战:从基础用法到自定义播放器

HTML里的 <video> 和 <audio> 是一对被很多人低估的标签。平时做网页&#xff0c;提到放视频&#xff0c;第一反应往往是去复制B站、优酷的iframe嵌入代码&#xff0c;或者找一套第三方播放器插件&#xff1b;提到放音频&#xff0c;又总想着要接个什么库。实际…

2026/9/15 1:16:20

YOLOv7姿态估计实战:从推理训练到ONNX部署与评估

简介&#xff1a;基于YOLOv7的人体姿态估计示例工程&#xff0c;面向正在学习目标检测与关键点识别的Python开发者&#xff0c;涵盖预训练模型加载与关键点推理示例。压缩包内含可运行的pose-estimate.py脚本及配套模块&#xff0c;其中utils目录封装了数据增强、损失计算、锚框…

2026/9/14 2:17:50

拯救者Y7000黑屏故障排查与维修实战指南

1. 项目概述&#xff1a;一台黑屏的拯救者Y7000&#xff0c;到底卡在哪一步&#xff1f; 联想拯救者Y7000系列笔记本&#xff0c;从2018年第一代搭载i5-8300H开始&#xff0c;到后来的i7-9750H、i7-10750H、i5-11400H&#xff0c;再到2023年款的R7-7840HS&#xff0c;它始终是学…

2026/9/15 0:01:16

AI英语单词APP开发:自适应学习算法与移动端优化实践

1. 项目概述 作为一名在移动应用开发领域摸爬滚打多年的老手&#xff0c;我最近完成了一个AI英语单词APP的开发项目。这个项目将传统单词记忆方法与现代AI技术相结合&#xff0c;打造了一款能够智能适应不同用户学习习惯的英语学习工具。 市面上大多数单词APP都存在一个通病&a…

2026/9/15 0:01:16

Flutter与OpenHarmony结合开发手语学习APP实战

1. 项目背景与核心价值作为一名同时接触过Flutter和OpenHarmony的开发者&#xff0c;最近我完成了一个基于Flutter for OpenHarmony的手语学习APP实战项目。这个项目最大的特点在于实现了跨平台框架与国产操作系统深度结合的创新实践——用Flutter开发的应用能完美运行在OpenHa…

2026/9/15 0:01:16

六个月成为机器人工程师:从ROS2到SLAM的实战路径

1. 六个月的紧迫感从哪来&#xff1a;先搞清楚你要成为哪种机器人工程师说实话&#xff0c;六个月的期限并不是一个宽松的时间线。市面上任何一本正经的机器人学教材都超过五百页&#xff0c;ROS2的官方文档可以翻到你怀疑人生&#xff0c;再加上ABB、KUKA这些工业机器人厂家动…

2026/9/14 11:59:31

USB Type-C PCB布局分区设计:电源、高速信号与PD协议全攻略

做硬件这行&#xff0c;Type-C接口算是典型的“看着简单&#xff0c;做起来全坑”的东西。光引脚就24个&#xff0c;高低速信号、电源、控制线全部塞在一个小小的连接器里&#xff0c;如果PCB布局不做规划&#xff0c;打样回来基本就是“插上没反应”、“高速掉线”、“静电一打…

2026/9/14 13:53:59

系统编程学习原型如何补齐稳定性边界

系统编程学习原型如何补齐稳定性边界预算有限时&#xff0c;我先优化明显多余的复制&#xff0c;而不是猜测性地换容器。用借用传递只读数据通常就能减少分配&#xff1a; fn parse(line: &str) -> Result<Item, Error> { /* ... */ }用基准确认热点确实在分配&am…

2026/9/14 11:22:57

雨花区哪家财务公司代理记账比较好?

在雨花区&#xff0c;企业处理财税事务常常面临诸多挑战&#xff0c;选择一家靠谱的财务公司至关重要。湖南巨勤财务管理咨询有限公司就是本地正规实体财税服务机构&#xff0c;深耕本地工商财税行业多年&#xff0c;熟悉当地工商局、税务局最新政策与申报流程。主营公司注册、…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
咨询二维码