n8n多智能体怎么编排?用 AI Agent Tool 分派计算与回复任务

用主 AI Agent 委派两个 AI Agent Tool,分别计算和整理客户回复;包含连接图、参数表达式、系统指令、中间记录核对及固定流程与动态委派的适用边界。

n8n 的多智能体编排可以从一个主 Agent 和两个 AI Agent Tool 开始:主 Agent 接收问题并决定委派,计算 Agent 负责算式,回复 Agent 把已确认的数字整理成一句客户答复。重点是职责与传递的数据可核对,而不是在画布上多放几个聊天模型。

下面用“129 元买 3 件、运费 12 元”演示分工,预期金额为 399 元。它是依据 2026 年 10 月 1 日官方文档和项目源码整理的教学方案,未在真实 n8n 实例运行;不是已经验证的客户案例,也不保证模型每次按同一路径调用。

n8n多智能体怎么编排?用 AI Agent Tool 分派计算与回复任务

先画清楚连接关系

Chat Trigger → 主 AI Agent → 最终聊天答复
                 ├ Chat Model:主 Agent 的模型
                 ├ Tool:calculate_quote(AI Agent Tool)
                 │        ├ Chat Model:计算 Agent 的模型
                 │        └ Tool:Calculator
                 └ Tool:compose_reply(AI Agent Tool)
                          └ Chat Model:回复 Agent 的模型

两个 AI Agent Tool 都连接到主 Agent 的 Tool 接口,而不是排成两条普通主流程实线。每个子 Agent 都要有自己的 Chat Model 连接;它们可以选择同一个可用模型和相同凭证,但不能省略子节点的模型接口。

本文针对界面中能添加 AI Agent Tool 的近期节点版本。官方项目的Agent Tool v3 定义把聊天模型列为必要输入、工具列为可选输入,因此纯粹整理已知文本的回复 Agent 可以不再接外部工具。如果你的旧节点提示缺少工具,先核对并更新节点版本,不要随意加一个无关工具消除报错。

1. 配置只负责计算的子 Agent

  1. 在现有主 Agent 的 Tool 接口添加 AI Agent Tool,把节点名称改为 calculate_quote。
  2. 在它自己的 Chat Model 接口添加已验证可用、支持工具调用的聊天模型;在 Tool 接口添加 Calculator。
  3. 设置 Description:“根据明确提供的单价、数量、运费计算合计。适合金额核算;缺少数字时返回缺失字段,不编造折扣、税费或价格。”
  4. Prompt (User Message) 切为表达式,设置为下方 task 表达式。主 Agent 通过工具参数把计算任务交给子 Agent。
{{ $fromAI('task', '完整的计算任务,必须包含用户给出的单价、数量、运费以及限制', 'string') }}

在计算子 Agent 的 System Message 中写:

你只做金额计算。
有齐全数字时必须使用 Calculator;先算商品金额,再加运费。
返回三行:输入条件、计算表达式、合计金额。
没有提供的税费、折扣和费用一律不补。
缺少条件时返回“缺失信息:...”并列出缺失字段。

先不启用 Require Specific Output Format,以便直接查看三行文本;后续要写入数据库时,再单独增加输出解析和字段校验。工具参数填充方式可查$fromAI 官方说明。

2. 配置只负责整理答复的子 Agent

再从主 Agent 的 Tool 接口添加第二个 AI Agent Tool,命名为 compose_reply,接入它的 Chat Model。Description 写为:“仅根据已提供的计算结果写一段客户答复;不能查询价格、重新算数或承诺订单已创建。”

Prompt (User Message) 用下面的表达式,并设置对应系统指令:

{{ $fromAI('reply_context', '用户需求、已核对的计算表达式和金额;缺失信息也要原样包含', 'string') }}
把提供的已确认信息整理为一句简短答复。
保留金额、数量、运费,不增加新价格或新政策。
有“缺失信息”时只提出补充问题,不能给出合计。
这是演示报价,不说订单已经下单或库存已经锁定。

这里不是让两个 Agent互相聊天。父节点每次调用其中一个,拿到工具结果后决定下一步;任务与结果应出现在执行记录中。官方AI Agent Tool 文档说明了父 Agent 委派、Description、Prompt、System Message 与嵌套能力。

3. 让主 Agent 控制顺序与失败条件

主 Agent 接受 Chat Trigger 的 chatInput,系统指令设置为:

你是报价演示的主管。
涉及金额时,先把用户完整条件交给 calculate_quote,不自行计算。
拿到计算结果后,把用户需求和计算结果原样交给 compose_reply。
若计算工具返回缺失信息或调用失败,禁止继续给出报价。
确认最终答复保留计算工具返回的金额,没有新增费用。
返回 compose_reply 的简短答复,说明这是演示报价。
单纯问用途时直接说明,不需要强制调用两个工具。

在主 Agent 和计算子 Agent 的 Options 中开启 Return Intermediate Steps。调试过程中用它核对委派顺序。Max Iterations 是允许模型尝试的上限,不表示保证成功;先保留合理的默认值,出现反复调用时查任务描述,不要无限调高。

4. 检查每层做了什么

发送:“请给客户一段简短报价回复:单价 129 元,数量 3,运费 12 元,没有折扣。”本例希望看到如下过程,措辞不必逐字相同:

层级 预期行为 检查依据
主 Agent 先调用 calculate_quote 工具名与传入的 task 包含 129、3、12
计算 Agent 调用 Calculator 表达式 129 * 3 + 12,结果 399
主 Agent 把算式和 399 交给 compose_reply reply_context 中没有丢失运费或新增折扣
回复 Agent 给出含 399 元的演示报价 不声称下单成功、锁定库存或真实商店价格

再用“单价 129 元,买几件还没决定”测试缺失条件。应询问数量与运费条件,不能擅用之前的 3 件和 12 元。本例不配置记忆,每次把完整条件写进消息。

什么时候应改用固定工作流?

如果无论输入是什么,都必须按“计算 → 审核 → 回复”严格执行,普通节点顺序或子工作流调用更容易保证流程。AI Agent Tool 适合由主 Agent根据任务决定委派;提示词要求的顺序不等同于确定性流程控制。

也不要把多智能体数量当成效果指标。多一次模型调用通常增加耗时和用量,先对相同样本核对准确性、缺失输入处理与调用成本。批处理时还要注意:官方文档提醒子节点表达式通常解析第一条 item,不能把一批不同客户的输入直接当作已经隔离的任务。

如果最后金额不对,从最先变错的字段开始查:原始输入是否完整、task 是否丢字段、Calculator 是否真的执行、reply_context 是否传错。主节点参数与工具行为可再对照Tools Agent 文档和Calculator 文档。

Ai菜鸟网。发布者:AI小管家,转载请注明出处:https://www.alyyhw.com/30180.html

赞 (0)
AI小管家的头像AI小管家
AI 编程测试工具怎么用?用 Copilot 给 Python 函数补测试并运行
上一篇 9小时前
AI 代码审查工具怎么用?在 GitHub PR 请求 Copilot 审查并复核建议
下一篇 9小时前

相关推荐

联系我们

联系我们

1

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
关注微信
分享本页
返回顶部