60 秒回答模板

我理解 Agent 的计划模式,是在执行复杂目标前,先把用户目标拆成结构化步骤,并在执行过程中维护计划状态、工具调用和恢复点。它和普通一次性问答不同:普通 LLM 直接生成答案,计划模式会先识别目标、约束、资源和完成标准,然后生成任务列表或任务图,例如收集信息、调用检索、执行 API、校验结果、汇总输出。执行时 Agent 不是盲目连续调用工具,而是按计划选择工具,拿到 observation 后更新状态:这一步完成了吗,是否需要重试,是否发现新约束,是否要改计划。工程上通常需要一个状态模型,记录任务 id、步骤状态、输入输出、工具参数、错误、重试次数、检查点和人工确认点。这样即使中途 API 超时、模型输出参数错、权限不足或会话中断,也能从最近的步骤恢复,而不是从头再来。计划模式的价值是提升复杂任务的可控性、可解释性和可靠性,但代价是延迟、状态管理和错误恢复复杂度更高。适合多步骤、强依赖、需要工具和验证的任务;简单问答则不一定要开启。

考点 不是一次性回答
难度 真实面经题
回答目标 让候选人能把 Agent 计划模式讲成一个带计划对象、执行循环、工具契约、状态恢复和护栏的工程机制,而不是泛泛说先规划再执行。

深入解析

01

计划模式的定义

计划模式是 Agent 面对复杂目标时使用的一种执行控制方式:先把目标拆成步骤,再按步骤调用工具、观察结果、更新状态和必要时重规划。它不等同于暴露模型的思考过程,也不是简单让模型输出一段计划文本;关键是计划要能驱动后续执行,并能被系统记录、校验和恢复。

02

计划对象要结构化

一个可执行计划通常包含目标、约束、步骤、依赖、所需工具、输入输出、完成条件、失败处理和人工确认点。简单任务可以是线性 checklist,复杂任务可以是 DAG 或状态机。结构化的好处是系统可以知道当前执行到哪一步、下一步需要什么工具、哪些步骤可跳过、哪些失败需要回滚。

03

执行循环是计划到观察再重规划

计划模式的核心循环可以概括为 plan、act、observe、update、replan。Agent 先生成初始计划,按步骤调用工具,得到工具返回或环境观察,再判断步骤是否完成。如果返回信息改变了原假设,例如检索不到证据、API 参数缺失、用户权限不足,就要更新计划,而不是继续执行过期步骤。

04

工具调用要绑定步骤和契约

每个工具调用都应该服务于某个计划步骤,并带有明确输入、输出和验收条件。例如检索工具输出候选证据,API 工具输出业务对象或错误码,代码执行工具输出运行结果。模型生成的工具参数要经过 schema 校验和权限检查,工具结果也要被规范化后写回状态,避免后续步骤依赖一段不可解析的自然语言。

05

可恢复状态是工程关键

计划模式要可靠,必须持久化关键状态:用户目标、计划版本、步骤状态、工具调用记录、输入输出摘要、错误原因、重试次数、检查点和最终产物。这样会话中断、服务重启或某个工具失败后,系统能判断哪些步骤已完成、哪些可以重试、哪些需要人工介入,而不是让模型重新猜一遍。

06

护栏防止计划失控

计划模式容易出现过度拆解、循环调用、目标漂移和工具滥用,所以需要边界控制。常见护栏包括最大步骤数、最大重试次数、超时预算、工具 allowlist、敏感动作审批、计划变更审计、结果校验和终止条件。尤其是涉及写操作或外部 API 时,计划步骤不能直接绕过权限和确认。

07

适用场景和代价要讲清

计划模式适合长任务、多工具、多依赖、需要验证和可解释过程的场景,例如自动排查问题、数据分析、复杂检索、代码修改、业务流程办理。它的代价是更高延迟、更复杂状态存储、更难调试以及计划错误可能放大后续错误。简单 FAQ、短文本生成或单次检索任务,直接回答或轻量工具调用可能更合适。

易错点

  • 把计划模式理解成模型输出一段计划文案,却没有执行状态和工具绑定。
  • 把内部推理过程当成计划展示,忽略计划应是可执行、可校验的任务结构。
  • 计划生成后机械执行,不根据工具结果和新约束重规划。
  • 没有持久化步骤状态,失败或中断后只能从头开始,无法恢复。
  • 每一步工具调用都由模型自由决定,没有 schema、权限、预算和终止条件。
  • 过度使用计划模式,简单问答也拆成多步,增加延迟和失败点。
  • 忽略失败模式,例如循环调用、目标漂移、重复检索、过度拆解和敏感动作误执行。

面试官追问

计划模式和 ReAct 有什么区别?

ReAct 更强调推理和动作交替,计划模式更强调先形成可执行步骤和状态管理。实际系统可以结合两者:先规划整体步骤,再在每一步内用 observation 驱动下一次工具调用或局部重规划。

计划应该由模型生成,还是由规则系统生成?

通常是混合。开放任务的拆解可以由模型生成,但计划结构、工具权限、状态流转、重试和审批应由宿主系统约束。完全交给模型会不稳定,完全规则化又难覆盖开放目标。

如何判断需要重新规划?

当工具返回缺少必要信息、出现错误、发现新约束、用户目标变化、步骤完成条件无法满足或连续重试失败时,需要重新规划。重规划应保留已验证的事实和已完成步骤,而不是全盘重来。

如何避免 Agent 陷入无限循环?

设置最大步骤数、最大重试次数、时间和成本预算;对重复工具调用做去重;要求每轮状态必须产生新信息;连续无进展时触发停止、降级或人工确认。

计划模式的效果怎么评估?

可以看任务完成率、平均步骤数、工具调用成功率、重试率、恢复成功率、超时率、人工介入率、成本延迟和用户满意度。复杂任务还要看计划可解释性和失败后能否定位。