如何在 Dify 工作流中配置多个 LLM 节点实现串联调用?

文章导读
在 Dify 工作流中配置多个 LLM 节点实现串联调用,核心是通过连接线将前一个 LLM 节点的输出变量传递给后一个节点,形成依赖关系。
📋 目录
  1. 快速处理思路
  2. 为什么会这样
  3. 分步处理
  4. 怎么验证是否生效
  5. 常见坑
  6. 常见问题
  7. 参考来源
A A

在 Dify 工作流中配置多个 LLM 节点实现串联调用,核心是通过连接线将前一个 LLM 节点的输出变量传递给后一个节点,形成依赖关系。

先说结论:串联调用依赖节点间的连线配置与变量引用,确保数据按顺序流转。

  • 适合:需要多阶段推理、内容润色或分步处理的场景
  • 先准备:明确每个 LLM 节点的输入输出变量名称
  • 验收:运行测试并检查每个节点的输入输出日志

快速处理思路

无需编写代码,直接在可视化画布上操作:从左侧节点库拖拽多个 LLM 节点,用连线将上一个节点的输出端连接到下一个节点的输入端,并在提示词中引用上游变量。

为什么会这样

Dify 工作流基于有向无环图(DAG)机制执行,节点间的连线定义了数据流向与执行依赖。只有当前置节点执行完毕并输出数据后,后续节点才会被触发,天然支持串联逻辑。若节点间无连线或变量未绑定,后续节点无法获取上下文,导致流程中断或结果偏离。

分步处理

第一步:添加节点
在工作流画布中,从左侧节点库拖拽第一个 LLM 节点,配置模型与提示词。再次拖拽第二个 LLM 节点,放置在第一个节点下方或右侧。

如何在 Dify 工作流中配置多个 LLM 节点实现串联调用?

第二步:建立连接
鼠标点击第一个 LLM 节点的输出锚点,拖拽连线至第二个 LLM 节点的输入锚点。连线代表执行顺序与数据通路。

第三步:配置变量
编辑第二个 LLM 节点的提示词模板,使用 Jinja2 风格语法引用上游输出,例如{{node_1_output}}。确保变量名与上游节点输出字段一致。

第四步:设置依赖
检查节点配置面板,确认第二个节点的执行条件依赖于第一个节点的完成状态,避免并行误配。

怎么验证是否生效

点击画布右上角的“测试”按钮,输入测试问题。观察执行过程,每个节点会亮起表示执行状态。点击已执行的节点查看输入输出详情,确认第二个节点接收到了第一个节点的正确输出数据。

如何在 Dify 工作流中配置多个 LLM 节点实现串联调用?

常见坑

输入输出格式不兼容:前一个 LLM 输出 JSON 对象,后一个期望字符串,需中间加代码节点转换。
上下文传递失败:中间变量未正确绑定到后续节点提示词中,导致生成结果偏离原始意图。
响应超时:外部模型接口响应超过默认阈值,导致节点报错流程终止。

常见问题

如何在提示词中引用上一个 LLM 的输出?

在第二个 LLM 节点的提示词编辑区,点击变量插入按钮,选择上游节点的输出字段,系统会自动生成类似{{node_id.output}}的引用语法。

串联调用会影响执行速度吗?

会,串联意味着后续节点必须等待前序节点完成,总耗时约为各节点耗时之和,适合对顺序有强要求的场景。

可以在串联中混合使用不同模型吗?

可以,每个 LLM 节点可独立配置模型提供商,例如第一个节点用 GPT-4 做推理,第二个节点用本地模型做润色。

参考来源

  • Dify 工作流配置实战手册:从零搭建高可用 LLM 应用流水线的 7 个关键节点
  • 三步入门:利用 Dify 可视化工作流连接 LLM 与工具
  • Dify 工作流如何连接多个 AI 模型?