多个智能体一起工作时,最容易被低估的是消息怎么走。如果没有明确的路由规则, 很容易出现同一个任务被重复执行、消息在几个智能体之间来回转发的情况。

按角色分发

给每个智能体一个明确的职责边界,路由层只根据任务类型选择接收者,而不是让智能体自己去找下一个。 常见角色包括:规划、检索、执行、审核。规划负责拆任务,检索负责取资料, 执行负责调用工具,审核负责检查结果。

用共享状态避免重复

每完成一步,就把结果写入一份共享状态,并记录这一步的标识。路由层在分发前先检查状态, 已经完成的步骤直接跳过。这样即使某个消息被重复投递,也不会重复调用工具。

超时与回退

每个智能体都要有超时。超时后把任务交回主流程,由主流程决定是重试、换一个执行者, 还是标记为部分完成。不要让整个流程卡在一个节点上等下去。

几点经验

  • 消息里带上足够的上下文,但不要把整段历史都转发,越长越容易跑偏。
  • 路由规则尽量简单可读,复杂的分支逻辑一旦出问题很难排查。
  • 给每一步打日志,出了问题能还原整条链路。