跳到主要内容
技术WHITEHOLE

智能体的三段式设计:规划、工具与反思

智能体的执行通常分三段:规划决定先做什么,工具决定能做什么,反思决定要不要重做。三段各自解决不同问题,也各自带有代价 —— 反思尤其消耗时间与调用次数。本文说明三段的职责、工具契约该怎么写,以及什么时候不该加反思

技术Agent智能体

智能体的执行通常被拆成三段:规划决定先做什么,工具决定能做什么,反思决定要不要重做。这个划分的价值在于,它把想、做、检查三件事分开,出问题时可以先判断卡在哪一段,而不是笼统地归因于模型不行

三段各自解决什么

  • 规划:把一个目标拆成有先后顺序的步骤,明确每一步要拿到什么才算完成。
  • 工具:把步骤落到具体动作上,例如查询订单、生成文档或调用审批接口。
  • 反思:在执行后检查结果是否满足目标,不满足时决定重做、换路径或放弃。

三段中最容易被跳过的是规划。跳过规划直接让模型边想边做,在处理简单任务时看不出差别,一旦步骤超过三五步,就会出现顺序颠倒、重复执行与中途失去目标的情况。

工具契约怎么写

工具是智能体与真实系统之间唯一的接触面,它的描述质量直接决定调用成功率。写得含糊的工具,模型会反复试错,而这些试错在企业系统里可能产生真实后果。

  • 说明用途:这个工具解决什么问题、什么情况下该用它,而不是只给一个函数名。
  • 说明边界:它不能做什么、失败时会返回什么,比成功路径更重要。
  • 参数可枚举:能枚举的参数就枚举,不要让模型自由填写关键标识。
  • 幂等性明确:重复调用会不会造成重复写入,必须在描述里写清。
  • 读取与写入分开:查询类与变更类接口分开提供,避免用同一个工具承担两种目的。

反思的代价

反思是这三段里成本最高的一段,因为它几乎必然带来额外的调用与等待。更重要的是,反思的质量取决于判据是否明确:没有明确完成标准的任务,反思只会让模型反复修改措辞,而不是真正改进结果。

  • 延迟增加:每多一轮检查,使用者就要多等一轮时间。
  • 成本增加:调用次数上升,开销往往成倍增长而不是线性增长。
  • 可能越改越差:缺乏明确判据时,反复修改会把原本可用的结果改坏。

什么时候不该加反思

当任务有客观的校验方式时,不必让模型自我反思,直接校验并给出明确错误更可靠。例如字段格式、金额是否平衡、必填项是否齐全,这类检查应当用确定性的规则完成。反思适合留给那些没有标准答案、但可以判断是否更接近目标的环节。

三段是职责划分,不是固定流程

这三段是职责划分,不是必须依次执行的流水线。简单任务可以跳过规划直接调用工具;确定性任务可以跳过反思,改用规则校验。把三段理解成能力清单而不是流程图,才不至于为了走完流程而增加无谓的环节。

验收口径

  • 一次失败的执行能定位到是规划、工具还是反思环节的问题。
  • 工具描述里写明了副作用与失败返回,而不只有成功示例。
  • 确定性校验用规则完成,没有交给模型自行判断。
  • 反思带来的额外调用次数有上限,不会无限循环。

FAQ

常见问题

与这篇相关、并且被问得最多的几个问题

反思是不是越多越好
不是。没有明确判据时,反复修改容易把可用结果改坏,同时明显增加延迟与成本。反思应当限定在少数关键环节
工具是不是越多越好
不是。工具越多,选择成本越高,误用的概率也越大。常用的少量工具加上清晰的描述,通常比铺开几十个工具更好用
规划需要人工确认吗
涉及变更类操作时建议确认。只读类查询可以自动执行,写入与对外发送类动作应当保留人工确认环节