「Mac畅玩AIGC与多模态19」开发篇15 - 判断节点与工具节点联动示例
一、概述
本篇在引入工具节点的基础上,进一步结合判断节点(条件分支),实现根据用户输入内容动态控制是否调用外部接口。通过构建“用户是否需要天气信息”的条件逻辑,开发人员将掌握如何在 Dify 工作流中通过条件判断联动工具节点,提升流程智能性与可控性。
二、环境准备
- macOS 系统
- Dify 平台已部署并可访问
- 接口地址:https://wttr.in/{{city}}?format=3
三、在 Dify 中创建工作流
1. 新建工作流应用
- 登录 Dify 后台
- 点击「工作室」
- 点击「创建空白应用」
- 填写应用信息:
- 应用名称:判断与工具节点联动示例
- 应用类型:工作流
- 模型:glm-4-flash
2. 配置开始节点并添加输入变量
- 点击「开始」节点
- 添加两个输入变量:
- 名称:
need_weather
- 描述:是否需要查询天气(是/否)
- 类型:下拉选项(Dropdown),选项为:是、否
- 名称:
city
- 描述:城市名称(英文)
- 类型:文本(Text)
- 名称:
- 保存节点配置
3. 添加判断节点(是否查询天气)
-
添加节点类型:「判断」
-
条件设置:
- 若
need_weather
等于 “是” → True 分支 - 否则 → False 分支
- 若
4. True 分支:调用工具节点查询天气
-
在 True 分支添加工具节点:
- 工具名称:
get_weather
- 请求方式:GET
- 接口地址:
https://wttr.in/{{city}}?format=3
- 响应格式:纯文本
- 工具名称:
-
工具节点后接执行 LLM 节点:
用户选择查询天气,以下是 {{city}} 当前天气:{{get_weather}}
请用一句简洁的中文话术回应。
5. False 分支:添加提示节点
- 在 False 分支添加执行 LLM 节点:
用户选择不查询天气,请生成一句温和的提示回应。
6. 汇总至结束节点
- 将两个分支均连接至一个「结束」节点(End)
- 输出字段统一选择:
text
7. 发布
-
点击「发布」,完成部署
四、测试工作流效果
示例 1:
- 输入:需要天气 → 是,城市 → Tokyo
- 输出:东京当前天气为多云 ☁️,温度约 23°C。
示例 2:
- 输入:需要天气 → 否
- 输出:好的,随时都可以查询天气哦~
五、总结
通过本案例,掌握了:
- 判断节点的条件配置方式
- 如何根据条件控制工具节点是否执行
- 分支输出结果的统一汇总逻辑
本案例作为流程控制进阶版,结合判断与工具调用,为构建更智能、灵活的业务处理流程提供了实战范例。