低代码平台 ------ Dify
Dify 是一个开源的 LLM 应用开发平台。提供从 Agent 构建到 AI workflow 编排 、RAG 检索 、模型管理 等能力,轻松构建和运营生成式 AI 原生应用。
Dify 提供五种应用类型:
- 聊天助手: 基于 LLM 构建对话式交互的助手。
- 文本生成应用: 面向文本生成类任务的助手,例如撰写故事、文本分类、翻译等。
- Agent: 能够分解任务、推理思考、调用工具的对话式智能助手。
- 对话流(Chatflow): 适用于设计复杂流程的多轮对话场景,支持记忆功能并能进行动态应用编排。
- 工作流(Workflow): 适用于自动化、批处理等单轮生成类任务的场景的应用编排方式,单向生成结果。
Dify平台跟Coze平台都属于低代码平台!
本地部署的 Dify 与 Coze 区别:
- 插件数量: 本地部署Coze是没有插件的,本地部署Dify是自带一批好用的插件。
- 费用: Coze在企业内使用是要收费的,差不多200万人民币;Dify是开源的,大部分企业都在使用Dify。
- 背景: Coze是字节跳动研发,有大厂背书,所以有企业花钱部署使用;Dify是小型AI公司,主要依赖开源为主题来抢占市场。
打开 云端Dify 或者打开本地部署的Dify,如下图所示:

应用创建
最开始进来都是空白页,没有任何应用,需要你进行创建应用:
step1:首页 - 创建空白应用

step2:选择创建应用的类型,以及填写应用基础信息

在 Dify 平台中,有 Chatflow 和 Workflow 两种核心的应用编排工具,它们分别服务于不同类型的 AI 应用场景:
- Chatflow (对话流): 专为构建交互式、多轮对话的 AI 应用而设计。它更侧重于模拟人类对话的模式,能够记忆上下文,并根据用户的输入进行多步骤的逻辑处理和回复。
- Workflow (工作流): 主要面向自动化、批处理或单次任务执行的场景。它适合处理那些不需要实时对话交互,但可能涉及复杂数据处理、分析、内容生成或与其他系统集成的任务。
Dify 的Workflow(工作流) 与 Coze 的 Workflow(工作流) 理论与使用是差不多的,我就不在这多做讲解,大家感兴趣可以去看 # Coze:从入门到精通。
这里简单讲下 Dify 内的 Chatflow (对话流) :
- 对话式交互: 支持多轮对话,能够理解上下文,并根据之前的交流内容进行回应。
- 记忆能力 (Memory): 内置对话历史记录功能,使得 AI 应用能够"记住"用户之前的发言。
- 动态响应: 强调在对话过程中逐步构建和输出响应,可以使用户获得更自然的交流体验。
- 专属节点: 拥有如 "Answer" (回复) 节点,用于在流程的中间步骤流式输出文本内容。
- 用户交互功能: 通常包含开场白、下一步问题建议、文件上传(用于对话中)、引用归属等增强用户对话体验的功能。
- 适用场景: 智能客服、语义搜索、AI 助教、需要引导用户完成特定任务的对话机器人等。
大家看本章节,最好先看下 # Coze:从入门到精通 ,可以更方便大家理解低代码平台,了解为什么我们要写低代码平台,并且低代码平台又为我们做了什么贡献?
我这里讲解 Dify 平台,直接通过案例来讲解,更能让大家知道 Dify 的原理以及实用技巧。
案例:LLM联网搜索
我个人觉得,想学习Agent应用 ,最核心的是思维 ,比如这个案例 ------ LLM联网搜索 ,我们要先梳理清楚,input是什么?output是什么?中间过程有什么?为了确保高质量输出output,我们的示例又是什么?
首先我们要知道input、output才能知道中间的工作流要做什么?
简单来说,就像我们研发团队一样,项目过来了:
- 开发需要知道产品经理的需求文档/PRD/UX/UI什么时候提供,这就是input;
- 开发还需要知道项目最终要做成什么样的,这就是output;
- 最后,开发通过测试样例进行功能/性能测试,才能高质量输出output,测试样例就是示例。
只有知道input 、output ,开发人员才知道他们要怎么做,才能把input 通过一些系列的研发工作,结合测试样例进行,高质量高效率的输出output。
在Agent应用内:
- input: 用户输入的问题;
- output: 大模型通过搜索给用户答案;
- 中间过程: 工作流/插件;
- 示例: 测试样本。
LLM联网搜索 的中间过程:通过LLM模型 ,提取用户输入问题的关键字(input) ,并且把关键字 总结成可以搜索的关键词 ,搜索的关键词 输入到搜索节点(TavilySearch) ,搜索节点(TavilySearch) 把搜索到的信息 ,输出给LLM模型 进行内容总结 ,LLM模型 内容总结完毕后,就会output展示给用户。

第三方插件配置
我们先进行Tavily插件准备:
Tavily:一个强大的原生AI搜索引擎和网页内容提取工具,提供高度相关的搜索结果和网页原始内容提取。
step1:在 Tavily网站 内获取API_KEYS。

step2:在Dify平台内安装插件。

step3:搜索Tavily插件。

step4:安装插件

step5:使用插件,进行API_KEY设置。


设置好插件后,如图所示:

模型配置
step1:在设置内配置模型插件

step2:按照Qwen模型,这里你可以根据自己需求进行选择模型

step3:配置模型的API_KEY


step4:配置完成后,是有绿点

应用实战
step1:创建应用


step2:用户输入设置input属性


step3:添加LLM模型,进行提取用户输入的问题关键字,并且进行总结为可以搜索的关键词。

step4:进行LLM插件设置


step5:添加 Tavily Search 插件,把LLM1的搜索关键词进行联网查询

step6:配置 Tavily Search 参数

step7:添加LLM模型插件,把搜索到的信息进行内容总结

step8:LLM模型进行参数配置

step9:添加输出插件

step10:输出插件进行配置output参数

step11:最后把output信息展示给用户

案例:智能客服ChatFlow
设置3个分类:营销专员 + 投诉专员 + 其他
- 营销专员: 配置证券知识库,实现对证券产品介绍、交易规则等高频问题的自动化解答;
- 投诉专员: 配置了用户行为数据,用户标签,方便进一步查找关于用户行为、资产等情况,给用户提供产品使用中的问题解答
- 其他问题: 抱歉,这些问题我无法回答
知识库配置
step1:创建知识库

step2:创建文件

step3:文件切片/分段,使用默认配置

step4:上传文件信息到Dify云服务器内

step5:文件上传完后,会在知识库内展示

应用实战
step1:创建应用

应用创建成功:

step2:删除无用节点,对 用户输入 节点进行配置

step3:添加 问题分类器 节点

step4:配置 问题分类器 参数,根据用户提的问题,进行分类判断,接下来要走哪些业务流程

step5:添加 知识检索 节点,如果是营销咨询,先直接走证券知识库,在知识库内查找相关信息

step6: 知识检索 节点 配置 知识库

step7:知识检索 节点 下游 添加 LLM 节点,知识库找的到信息给到LLM模型,进行内容总结,然后回复给用户

step8:LLM节点 参数配置

step9:LLM节点 下游 添加 直接回复 节点

step10:直接回复 节点 参数配置

step11:分类2 下游 添加 LLM2节点,如果是投诉任务,先使用LLM模型把用户问题的关键字进行提取

step12:LLM2节点 参数配置

step13:LLM2节点 下游 添加 知识检索2 节点,并且进行 知识检索2节点参数配置,把关键字给到知识库,查找相关信息

step14:知识检索2节点 下游 添加 LLM3 节点,在知识库内找到相关信息后,先把内容总结,再拟人化回复用户

step15:LLM3 节点配置

step16:LLM3 节点 下游 添加 直接回复 节点,并进行参数配置


step17:分类3 下游 添加 直接回复 节点,并进行参数配置


step18:用户进行一次请求

低代码平台(Coze、Dify)API 调用
Coze API 实战
step1:登录 个人访问令牌 - 扣子 创建 个人访问令牌

step2:个人访问令牌 参数配置

step3:Agent应用发布要勾选中 API 选项,进行发布,Agent网页上会有botId,botId要给后续程序调用

step4:Vibe Coding编程,使用Trae Idea, 基于 cozepy 的 Coze API 客户端用于与Coze智能体进行交互,编写代码,然后把Coze API参数配置好

Dify API 实战
Agent API 要被外部调用的化,该Agent必须是发布状态!
step1:在Agent应用内,访问API页面找到 Base URL 与 创建 API密钥

step2:创建 API 密钥

step3:把Agent的访问API页面数据给Trae做参考,让它帮你编写Dify 请求代码

step4:配置Agent API 参数,并且进行运行,效果如下图所示

本地部署
Dify 的本地化部署主要有两种方式:Docker Compose部署(推荐) 和 源代码部署!
建议部署设备的配置:内存16G,CPU4核!
虽然官网说,设备的内存 >= 4G, CPU >= 2核,但是会你使用4G内存、2核CPU真的会卡死。
如何使用 Docker Compose 进行部署?
Docker Compose 部署是通过 Docker 容器来运行 Dify 的各个组件,隔离了环境依赖,部署和管理都相对简单。
前提条件:
- 安装 Docker 和 Docker Compose: https://www.docker.com 选择适合操作系统的 Docker Desktop
- 安装 Git: 用于克隆 Dify 的代码仓库。
安装流程
step1:克隆 Dify 代码仓库
打开你的终端 (Terminal) 或命令行工具,执行以下命令:
git clone https://github.com/langgenius/dify.git
# 如果网络不稳定,建议执行浅克隆
git clone --depth 1 https://gitee.com/dify_ai/dify.git
step2:进入 Docker 目录并配置
cd dify/docker
copy .env.example .env
这一步会复制一个环境变量配置文件的模板。你需要根据自己的需求修改 .env 文件。
关键配置项包括:
- APP_URL:你的 Dify 访问地址,本地部署通常是 http://localhost 或 http://你的IP地址。
- 数据库相关配置 (如果使用外部数据库)。默认情况下,它会使用 Docker 内置的数据库。
- 模型供应商的 API Keys (例如 OpenAI, Anthropic, Qwen 等),这里需要配置你的 API 密钥。
step3:启动 Dify 服务
在 dify/docker 目录下,执行以下命令来启动 Dify
# 参数 -d 表示在后台运行
docker compose up -d
step4:访问 Dify
启动成功后,等待几分钟让所有服务完全启动。然后你就可以在浏览器中访问 Dify 了。
管理员初始化页面: 首次访问 http://你的IP地址/install 来设置管理员账户。
Dify 主页面: 初始化完成后,访问 http://你的IP地址 即可开始使用 Dify。
如何更新 Dify?
在 dify/docker 目录下,拉取最新的代码和 Docker 镜像
git pull
docker compose pull
如何重新启动服务?
docker compose up -d