前言
你是否觉得让大型语言模型处理复杂任务有点头疼?比如,既要理解用户意图,又要查询数据库,还要结合历史对话生成个性化回复?直接用一个提示词搞定这一切,不仅对提示词技巧要求高,模型也可能“力不从心”。(文章出自微信公众号:dify实验室)
别担心,Dify 的工作流功能就是来帮你解决这个问题的!
核心思想:化繁为简,像搭积木一样构建 AI 应用
想象一下,你要完成一个复杂的项目。你是倾向于一口气做完,还是把它拆分成一个个小步骤,按部就班地进行?大多数人会选择后者,对吧?
Dify 工作流的核心思想正是如此:它把一个复杂的人工智能任务,分解成一系列更小、更易于管理和理解的步骤(我们称之为“节点”)。这些节点像积木一样,你可以按照需要的逻辑顺序把它们连接起来,形成一个完整的处理流程。
为什么工作流对新手如此友好?
使用工作流构建 AI 应用,有以下几个显著的好处,特别适合刚接触 Dify 的朋友:
- 降低复杂度
再复杂的任务,拆解成小步骤后,每个步骤的目标都变得清晰简单。你只需要关注当前节点的功能,而不用一下子考虑全局。
- 减少对“炼丹术”的依赖
你不再需要绞尽脑汁去写一个极其复杂、完美的提示词。工作流允许你在不同节点使用不同的、更简单的提示词,或者干脆使用非 LLM 的功能节点(如代码执行、知识库检索等)。
扫描二维码关注公众号,回复: 17631189 查看本文章 - 提升 AI 性能
对于多步骤的复杂任务,工作流引导模型一步步思考和执行,往往能比单个大模型推理获得更准确、更可靠的结果。
- 看得懂,更好修
整个处理流程一目了然。如果结果不如预期,你可以清晰地看到是哪个节点出了问题,方便调试和修正。这大大提高了系统的可解释性。
- 更稳定,容错强
即使某个节点偶尔出错,也可能只影响当前流程的一小部分,而不是导致整个应用崩溃。后续还可以设计容错机制(比如重试、切换分支)。
两种工作流类型:满足不同场景需求
Dify 提供了两种主要的工作流类型,你需要根据你的应用场景来选择:
-
Chatflow (对话流):
- 对话特性
内置了处理对话历史的能力,能记住之前的聊天内容;支持给机器人的回复打标签(方便后续分析);有专门的“回答”(Answer)节点来组织最终输出。
- 问题理解
包含帮助理解用户自然语言输入意图的节点,让机器人更“懂你”。
- 目标场景
专门为对话类应用设计。想象一下智能客服、能理解上下文的问答机器人、需要多轮交互才能完成任务的聊天应用等。
- 对话特性
-
Workflow (工作流):
- 强大的逻辑控制
提供了丰富的逻辑节点,如代码节点(可以直接写 Python 代码执行特定逻辑)、IF/ELSE 节点(根据条件走不同分支)、模板转换节点(格式化数据)、迭代节点(处理列表数据中的每一项)等。
- 自动化触发
未来还将支持定时触发(例如每天早上 9 点执行)和事件触发(例如当收到一封新邮件时自动启动),让你的流程真正自动化起来。
- 目标场景
更侧重于自动化处理和批量任务。比如,批量翻译文档、定时分析数据生成报告、根据模板自动写邮件、处理一系列内容生成请求等。
- 强大的逻辑控制
工作流都能做什么?(文末附DSL文件)
让我们看看工作流在实际中是如何大显身手的:
- 智能客服
- 流程示例
:
用户提问
->[Chatflow 节点:理解意图]
->[节点:搜索知识库]
->[节点:LLM 生成初步答案]
->[节点:结合历史对话优化答案]
->[Answer 节点:回复用户]
- 流程示例
- 内容创作助手
- 流程示例
:
输入主题/大纲
->[节点:LLM 撰写初稿]
->[节点:LLM 润色/扩展]
->[节点:格式化输出]
->得到博客文章/产品描述
- 流程示例
- 任务自动化
(比如和钉钉、飞书、Slack 集成):
- 流程示例
:
在聊天工具中输入:“帮我创建一个给张三的任务,明天截止”
->[Chatflow 节点:提取任务信息]
->[代码节点:调用任务管理工具 API 创建任务]
->[节点:回复用户“任务已创建”]
- 流程示例
- 数据分析与报告
- 流程示例
:
上传数据文件
->[节点:读取数据]
->[代码节点/LLM 节点:分析数据、识别趋势]
->[节点:LLM 生成摘要/报告]
->[节点:输出报告]
- 流程示例
- 邮件自动化
- 流程示例
:
收到新销售线索邮件(触发器)
->[节点:提取邮件信息]
->[模板转换节点:准备个性化邮件内容]
->[LLM 节点:生成完整邮件]
->[节点:发送邮件/存为草稿]
- 流程示例
如何开始你的第一个工作流?
上手 Dify 工作流并不难,按照以下步骤来:
- 创建工作流
登录 Dify,选择创建一个新的应用,然后在类型中选择 “Chatflow” 或 “Workflow”。你可以从一个空白画布开始自由搭建,也可以选择一个系统预设的模板,在模板的基础上修改,这样更快上手。
- 熟悉基础操作
- 添加节点
在画布上点击右键或加号,选择你需要的节点类型(如 LLM、知识库、代码、IF/ELSE 等)。
- 连接节点
用鼠标从一个节点的输出端口拖拽到另一个节点的输入端口,建立数据流动的路径。
- 配置节点
点击每个节点,在右侧面板中设置它的具体参数(比如 LLM 节点需要选择模型、填写提示词等)。
- 调试运行
在编辑界面,你可以点击“调试与预览”按钮,输入测试数据,看看工作流是否按预期运行,检查每一步的输出。
- 查看运行历史
对于已发布运行的工作流,可以在“日志与标注”中查看详细的运行记录和每个节点的输入输出,方便排查问题。
- 添加节点
- 保存与发布
当你对工作流满意后,记得点击右上角的“发布”按钮。只有发布后,你的工作流才能在应用中真正被用户使用或被 API 调用。
- 使用工作流
发布成功后,你可以在 Dify 提供的应用预览界面直接与你的 Chatflow 互动,或者通过 API 将你的 Workflow 集成到其他系统或程序中去调用。
总结
Dify 工作流是一个强大的工具,它通过将复杂的 AI 任务分解为简单的步骤,极大地降低了构建高级 AI 应用的门槛。无论你是想做一个智能对话机器人 (Chatflow),还是想自动化处理繁琐任务 (Workflow),它都能帮你更有条理、更高效地实现目标。
往期工作流文章
10分钟构建基于 Dify 的智能文章仿写工作流:配置指南,效率飙升300%!
20分钟从零到一构建Dify智能客服工作流教程(附DSL文件下载)
更多工作流案例,请到公众号主页查看
dify相关资源
如果对你有帮助,欢迎点赞收藏备用。
回复 DSL 获取公众号DSL文件资源
回复 入群 获取二维码,我拉你入群
回复 tk 获取免费token资源
你又不打算赞赏,就点赞、在看吧