思考–决策–执行三段拆解
把 02 章 Agent Loop 里的"Decide"再切三段——这是给 agent 失败做定位诊断的坐标系。
Core Curriculum
Level 1 · 概念理解
阅读时间 · 9 分钟
练习 · 建议必做
低波动
Last reviewed · 2026-04-22
你将学会什么
- 理解《思考–决策–执行三段拆解》在 agent harness / coding agent 学习路径里的核心作用。
- 能用本页给出的判断法区分“概念、机制、边界、代价”。
- 知道这页内容之后会在哪一章被复用到源码阅读或动手实践里。
学习前提
建议先读《上下文窗口与限制》;如果你是跳读,至少先看本章索引与本页 TL;DR。
这页在课程中的位置
课程理论地基,用来建立后续所有判断语言。
本页 1 句话结论
把 02 章 Agent Loop 里的"Decide"再切三段——这是给 agent 失败做 定位诊断 的坐标系。
带走的判断法
先问控制流、动作空间、终止时机,再谈 agent 能力。
Source Policy
课程主线:稳定概念 + 经典论文 + 官方机制。
TL;DR
- 02 章把"Decide"当一个原子步骤;但实际上 LLM 在那一次 forward pass 里至少做了三件事:Plan(推断子目标)→ Decide(选 tool + 填参数)→ Execute(动作真实发生在外部)。
- 失败发生在不同段,修法完全不同。把它们混着调试 = 用错药。
- 这条三段坐标系也直接映射到进阶 Agent 框架的"加法":planning tool 修 Plan、tool schema/structured output 修 Decide、sandbox/permission/HITL 修 Execute。
- 调 agent 的工程纪律:每个失败先回答"它发生在 Plan / Decide / Execute 哪一段"。这一步省下的时间比你想象多得多。
1. 为什么要再拆"Decide"
02 章的 Agent Loop 长这样:
Perceive → Decide → Act → Observe → ...(loop)
把 "Decide" 放大:LLM 在那一步的 forward pass 里实际上同时完成了三件事,每件都可能错——
注意三段所在位置不同:Plan 与 Decide 都在 LLM 一次 forward pass 内(互相耦合),Execute 在 LLM 之外的 runtime + 工具实现里。"在 LLM 内 / 外" 是后面定位失败时最有力的二分。
2. Plan:从抽象意图到当下子目标
这一段回答:"给定当前 user 目标 + 历史,下一个该解决的子问题是什么?" 它通常在 LLM 输出里以两种形态呈现:
- 隐式:assistant message 的 content("我现在需要先确认 X"),即 ReAct 里的 "Thought"。
- 显式:模型调用一个 planner tool(如
write_todos),把子目标写成一份可被反复 read 的 markdown todos。
显式 planner 的关键作用不是替模型规划——LLM 内部仍在规划——而是把规划状态外化,让它不被新观察淹没。
| Plan 段的失败模式 |
典型症状 |
修法 |
Members only
解锁完整课时
订阅会员后可阅读本课全部内容,并访问课程内所有章节。