Skip to content
阅读进度

如果让你手写一个 Agent,关键模块和状态机如何设计? ​

返回 工程项目复盘 目录

标准回答 ​

Agent 的受控循环由应用程序负责:向模型提供任务与状态,取得下一步动作,校验并执行工具,记录结果,再继续或结束。Harness 在这里指承载这些执行、权限、记录和恢复能力的运行框架,不是某一种模型。

  • 维护目标、步骤、工具结果和结束条件。
  • 执行前校验动作,执行后更新状态,处理超时、取消与重试。
  • 用状态机或图表达复杂分支,持久化关键状态并记录轨迹。

通俗例子 ​

任务状态写着“待审批”时,模型即使要求提交也不能执行;审批通过后执行一次,记录结果,重启后从状态恢复而不是从头重复操作。

深入解释 ​

**Harness 具体管什么:**这里指 Agent 的执行环境与控制代码:调用模型、组织工具、保存任务状态,管理权限、预算、错误与恢复。它不是另一个负责思考的模型,也不是单一固定协议。

**循环怎样停下来:**每一步检查是否已达到目标、是否需要补信息、是否耗尽预算或遇到不能执行的操作。只有检查允许才调用工具,并先记录结果,再决定是否进入下一轮。

易混淆点 ​

框架能提供编排与持久化能力,但不会替你定义业务正确性和副作用边界。

参考资料 ​

内容来源 ​

用完整回答理解机制,用真实证据解释项目。