Dify AI智能体开发实战
  • 推荐0
  • 收藏0
  • 浏览45

Dify AI智能体开发实战

  • 书  号:9787121517549
  • 出版日期:2026-01-01
  • 页  数:
  • 开  本:
  • 出版状态:上市销售
  • 维护人:博文小编
《Dify AI智能体开发实战》旨在帮助读者掌握如何利用Dify快速构建AI智能体。全书分为四篇。
第1篇 初识:介绍了什么是AI智能体、什么是工作流,并对比Dify与Coze;介绍了本地部署Dify,为初学者奠定基础。
第2篇 基础应用:介绍了Dify如何集成各类大模型,并初步探索了Dify的5种应用。
第3篇 进阶应用:介绍了提示词设计与风格优化、Dify的节点与能力、Dify如何与外部系统进行通信、给Dify应用构建知识库、Dify多模态应用。
第4篇 行业综合实战:通过4个真实案例展示了Dify在多个领域的落地实践;介绍了如何发布Dify应用;介绍了Dify与MCP(模型上下文协议)的深度整合,指导读者如何通过MCP服务扩展应用能力。
无论是初学者还是有经验的开发者,都能通过本书快速上手Dify。
零基础起步,保姆级指引,从0到1的突破
李晨翔(@风间影月)
资深技术架构师与 AIGC 实战讲师,长期专注于 Java 架构、智能体开发、数字人技术、分布式系统 等前沿领域。拥有十余年一线研发与技术管理经验,擅长将复杂技术体系以通俗、工程化的方式呈现给读者。
深入浅出的讲解风格、强实战导向的教学体系,深受开发者社群的喜爱。曾主导过多个智能体机器人项目、数字人系统、中台与企业级架构落地方案,在项目拆解、系统设计与AI应用整合方面经验丰富。
为何写本书
随着生成式AI技术的爆发,构建AI智能体已成为企业数字化转型的核心需求。然而,许多开发者面临两大挑战:工具复杂与开发成本高。Dify作为新一代低代码AI智能体开发平台,通过可视化工作流、灵活的节点能力与丰富的集成生态,显著降低了AI智能体的开发门槛。
本书为开发者提供了一条从理论到实践的完整路径。无论你是想快速上手,还是希望深入掌握提示词优化、多模态处理、RAG知识库等高级技术,抑或通过电商、办公、数据分析等场景案例理解Dify的实际价值,本书都能为你提供系统性指导。
谁适合阅读本书
AI初学者:若你想快速入门,但缺乏系统指导,本书将为你奠定基础。
开发者与工程师:若你希望提升开发效率,减少编写重复性代码,本书可帮助你高效利用Dify的节点来实现。
企业技术负责人:若你正在寻找可快速落地的AI解决方案,推动业务自动化,本书的实战案例将为你提供参考。
本书的价值
技术全面性:本书覆盖Dify的核心功能,学完之后你可以应对大多数的应用需求。
实践导向性:本书包含了大量实战案例,你可以边看书边动手实践。
生态兼容性:结合飞书、阿里云、GitHub等主流平台,展示Dify在真实场景中的扩展能力。
如何使用本书
你可以按照本书的结构逐步学习,构建完整的Dify知识体系;也可以针对具体需求直接查阅对应章节;每章的代码示例可直接复用到实际项目中。
通过扫描封底的“读者服务”二维码加入本书读者群,可以获取本书配套资源。
致谢与展望
感谢Dify团队,以及所有贡献MCP服务与案例的开发者。
希望本书能成为你开发旅程中的“指南针”,助你在智能时代抢占先机。
未来,我们将持续关注Dify生态的演进,为读者带来更多、更新的实践分享。
让我们一起,用Dify释放AI的无限可能!


李晨翔
2025年9月

目录

第1篇 初识
第1章 AI智能体 2
1.1 什么是AI智能体 2
1.1.1 AI智能体的定义与核心特征 2
1.1.2 AI智能体的主要应用场景 3
1.1.3 AI智能体的核心架构 4
1.2 什么是工作流 6
1.3 对比Dify与Coze 6

第2章 本地部署Dify 8
2.1 线上公有化部署vs本地私有化部署 8
2.1.1 中小企业首选——线上公有化部署 8
2.1.2 数据安全优先——本地私有化部署 8
2.2 部署Dify 9
2.2.1 部署Dify前的环境准备 9
2.2.2 本地私有化部署Dify 9
2.3 【实战】升级Dify——让你的AI系统永远“保鲜” 19

第2篇 基础应用
第3章 Dify集成各类大模型 24
3.1 Dify为什么要集成大模型 24
3.1.1 大模型是什么 24
3.1.2 大模型的分类与区别(文本/绘画/视频/音频) 24
3.1.3 线上大模型与本地大模型的区别 25
3.1.4 什么是大模型API 25
3.1.5 为什么要在Dify中集成大模型 26
3.2 在Dify中集成线上大模型 26
3.3 在Dify中集成本地大模型 28
3.3.1 本地部署大模型的环境准备 28
3.3.2 【实战】安装Ollama 29
3.3.3 【实战】安装DeepSeek和Qwen3 30
3.3.4 【实战】在Ollama中使用命令行与大模型对话 32
3.3.5 【实战】Dify通过Ollama插件集成本地大模型库 33
3.4 使用大模型的可视化UI工具 34
3.4.1 【实战】浏览器UI工具PageAssist 34
3.4.2 【实战】本地可视化工具Chatbox AI 35

第4章 初步探索Dify的5种应用 37
4.1 聊天助手——交互式对话类应用 37
4.1.1 聊天助手是什么 37
4.1.2 【实战】构建“旅游攻略达人”应用 38
4.2 Agent——交互式对话类应用 41
4.2.1 Agent是什么 41
4.2.2 【实战】构建将文字转语音的应用 42
4.3 文本生成应用——交互式对话类应用 43
4.3.1 文本生成应用是什么 43
4.3.2 【实战】构建“厨师养成”应用 43
4.4 工作流——流程自动化类应用 45
4.4.1 工作流是什么 45
4.4.2 【实战】构建“职业面试官”应用 45
4.5 ChatFlow——流程自动化类应用 48
4.5.1 ChatFlow是什么 48
4.5.2 ChatFlow和工作流的区别 48
4.5.3 【实战】构建“周报生成助手”应用 48
4.6 【实战】导入/导出Dify应用 50

第3篇 进阶应用
第5章 提示词设计与风格优化 54
5.1 3类提示词 54
5.1.1 用户提示词 54
5.1.2 系统提示词 55
5.1.3 助理提示词 55
5.1.4 【实战】构建会议流程设计助手 56
5.2 不同格式的用户提示词 56
5.2.1 自然语言格式 56
5.2.2 Markdown格式 57
5.2.3 结构化标识格式 58
5.2.4 XML格式 59
5.2.5 【实战】构建国际厨师专家应用(对比多种格式) 59
5.3 提示词生成器(用于自动优化与生成提示词) 61

第6章 Dify的节点与能力(一) 63
6.1 Dify支持的数据类型 63
6.1.1 字符串(String) 63
6.1.2 数字(Number) 64
6.1.3 对象(Object) 64
6.1.4 列表(List) 65
6.1.5 文件(File) 65
6.2 Dify工作流中的3种基础节点 66
6.2.1 “开始”节点 66
6.2.2 “LLM”节点 67
6.2.3 “直接回复”节点 68
6.2.4 【实战】使用基础节点构建“减肥小助手”工作流 68
6.3 Dify的问题分类能力 70
6.3.1 “问题分类器”节点 70
6.3.2 【实战】构建具有预判断能力的“导购助手”工作流 71
6.4 Dify的变量控制能力 72
6.4.1 会话变量 72
6.4.2 环境变量 73
6.4.3 会话变量与环境变量的区别 74
6.4.4 “变量赋值”节点 75
6.4.5 【实战】用“变量赋值”节点控制变量的值 75
6.5 Dify的逻辑判断能力 76
6.5.1 “条件分支”节点的运行逻辑 77
6.5.2 【实战】判断性别以进入不同的分支 78
6.6 Dify的文档读取能力 79
6.6.1 “文档提取”节点 79
6.6.2 【实战】提取文档内容并改写成童话故事 80

第7章 Dify的节点与能力(二) 81
7.1 Dify的批量处理能力 81
7.1.1 “迭代”节点 81
7.1.2 【实战】批量读取文档并让LLM生成内容 82
7.2 Dify的编程支持能力 85
7.2.1 “代码执行”节点 86
7.2.2 【实战】构建小型计算器 86
7.3 Dify的中断控制能力 90
7.3.1 “循环”节点 90
7.3.2 【实战】实现随机数筛选 91
7.4 Dify的数据转换能力 94
7.4.1 “模板转换”节点 94
7.4.2 Jinja表达式 95
7.4.3 【实战】用HTML优化输出的内容 95
7.5 Dify的聚合能力 97
7.5.1 “变量聚合器”节点 97
7.5.2 【实战】合并多个分支 98
7.6 Dify的精准提炼能力 100
7.6.1 “参数提取器”节点 100
7.6.2 【实战】将非结构化的用户输入数据转化为结构化数据 102
7.7 Dify的数据过滤能力 103
7.7.1 “列表操作”节点 104
7.7.2 【实战】使用“列表操作”节点对数据进行过滤和排序 105
7.8 Dify的插件能力 107
7.8.1 插件介绍 107
7.8.2 Dify插件的分类与功能 108
7.8.3 【实战】构建一个“查询手机归属地”的ChatFlow 108
7.9 Dify的注释能力 111
7.9.1 注释的作用 111
7.9.2 如何使用注释 111

第8章 Dify如何与外部系统进行通信 113
8.1 Dify网络通信的基本原理 113
8.1.1 为何Dify需要与外部系统进行通信 113
8.1.2 理解常见网络术语 114
8.1.3 HTTP网络请求中包含哪些内容 114
8.2 拆解HTTP网络请求 115
8.2.1 URL的构成 115
8.2.2 HTTP网络请求的方法 115
8.2.3 服务器的状态码 116
8.3 如何让Dify“带话”给外部系统 116
8.3.1 问号式参数 116
8.3.2 路径式参数 117
8.3.3 请求体参数 117
8.3.4 隐藏头参数 118
8.4 【实战】Dify智能体与外部系统进行通信 118
8.4.1 “HTTP网络请求”节点的作用 118
8.4.2 构建模拟服务器 119
8.4.3 使用“通义灵码”快速生成API代码 120
8.4.4 使用Dify的“HTTP网络请求”节点来调用外部服务 125

第9章 给Dify应用构建知识库 128
9.1 知识库的原理 128
9.1.1 知识库是什么 128
9.1.2 RAG原理1——向量检索 129
9.1.3 RAG原理2——关键词检索 129
9.2 【实战】给Dify应用构建本地文档知识库 130
9.2.1 一张图看懂构建知识库并进行智能问答的流程 130
9.2.2 构建知识库 131
9.2.3 构建基于知识库的ChatFlow 137
9.3 【实战】爬取网页以建立Dify应用的知识库 139
9.3.1 同步网页数据 139
9.3.2 构建网页知识库 142

第10章 Dify多模态应用 144
10.1 多模态方案 144
10.1.1 多模态是什么(文件/图片/音频) 144
10.1.2 多模态的应用场景 144
10.1.3 如何启用多模态功能 145
10.2 【实战】智能批卷达人 145

第4篇 行业综合实战
第11章 Dify综合实战 150
11.1 【实战】构建文档内容生成器——生成内容并保存 150
11.1.1 创建飞书应用 152
11.1.2 配置飞书云文档插件 153
11.1.3 开发ChatFlow集成飞书云文档 156
11.2 【实战】电商智能客服系统解决方案 159
11.2.1 开发智能客服系统的售前与售后分支 161
11.2.2 开发智能客服系统的订单查询分支 163
11.3 【实战】飞书机器人AI智能助手 165
11.3.1 部署AstrBot 165
11.3.2 配置AstrBot——接入Dify 166
11.3.3 配置AstrBot——接入飞书 167
11.3.4 配置飞书机器人的事件与权限 169
11.4 【实战】从Excel文档中提取数据并进行汇总和分析 171
11.4.1 上传Excel文档 171
11.4.2 提取Excel文档中的数据 172
11.4.3 生成图表 174

第12章 发布Dify应用 176
12.1 发布Dify应用的模式 176
12.2 独立运行模式 177
12.3 Web集成模式 179
12.4 API模式 184

第13章 MCP应用 186
13.1 什么是MCP 186
13.2 获取MCP资源的途径 188
13.3 【实战】集成高德地图的MCP服务 188
13.4 【实战】把MCP服务接入Dify的Agent应用 191
13.5 【实战】把MCP服务接入Dify的ChatFlow应用 193
13.6 【实战】把Dify应用发布为MCP服务 195

读者评论