M5-091M5: NLP & Large Language ModelsAgents & Tool UseMedium
Mastery:
Agents & Tool Use: 解释 Agent 的规划(planning)与任务分解。
📐 Mathematical Definition
⚡ Executive Summary
Core Concept: 先把目标分解为子任务(显式计划),再逐步执行;比'边想边做'更能处理长任务与依赖关系。
📌 Key Takeaways
- •显式计划:先分解为子任务(含依赖关系)
- •对比 ReAct 的'边想边做':计划更全局、少迷路
- •需支持重规划(执行中发现问题则调整计划)
📐 Mathematical Derivations
数学机理:<strong>规划的必要性</strong>——纯 ReAct 是'贪心的'(每步只看眼前),在长任务中容易 (a) <strong>迷路</strong>(偏离目标);(b) <strong>重复</strong>(忘记做过什么);(c) <strong>无法处理依赖</strong>(子任务有先后顺序)。<strong>规划(planning)</strong> 的做法:先让 LLM 把目标 g <strong>分解为子任务</strong> {s_1, …, s_k}(显式的计划),再逐步执行;执行中可<strong>重规划(replan)</strong>。<strong>分解的粒度</strong>——(a) <strong>太粗</strong>(如'完成任务')——无指导作用;(b) <strong>太细</strong>(如'按第一个键')——过于机械、无法适应意外;<strong>合适的粒度</strong>是'有意义的、可独立验证的步骤'(如'搜索 X 的定义'、'比较 A 与 B')。<strong>依赖关系</strong>——子任务之间可能有<strong>顺序依赖</strong>(必须先 A 后 B)或<strong>可并行</strong>;显式记录依赖可 (a) 并行化可并行的部分、(b) 避免顺序错误。<strong>架构模式</strong>:(1) <strong>Plan-and-Execute</strong>——先生成完整计划,再逐步执行(执行器可以是简单 Agent);优点:全局视野、成本可控(计划一次);缺点:计划可能不适用(环境变化时需重规划)。(2) <strong>ReAct(无显式计划)</strong>——边想边做;优点:灵活适应;缺点:长任务易迷路。(3) <strong>混合</strong>——先粗粒度计划,执行时用 ReAct 处理每个子任务('计划 + 反应');这是当前的推荐做法。(4) <strong>层级规划</strong>——递归分解(大计划 → 子计划 → 原子步骤)。(5) <strong>搜索式规划</strong>——在动作空间搜索(如 LATS 的 MCTS);更强但更贵。<strong>重规划(replan)</strong>——执行中若发现 (a) 子任务失败、(b) 环境变化、(c) 新信息与假设不符,则<strong>重新生成计划</strong>(可保留已完成的步骤)。<strong>与'工作记忆'的关系</strong>——计划本身就是工作记忆的核心内容(显式记录'要做什么、做到哪了')。<strong>评估</strong>——(a) <strong>计划的可行性</strong>(子任务是否可执行);(b) <strong>计划的完整性</strong>(是否覆盖所有必要步骤);(c) <strong>执行成功率</strong>。
🏭 Production Trade-offs
深度剖析与工程权衡:① <strong>'显式计划'解决长任务的'迷路'问题</strong>——它是 Agent 从'玩具'到'可用'的关键;面试中能对比'Plan-and-Execute vs ReAct'的适用场景是加分。② <strong>'计划太细'是常见错误</strong>——过度细化的计划无法适应执行中的意外(因为每步都被固定);故计划应留出'执行时的灵活空间'(粗粒度计划 + 细粒度执行)。③ <strong>'重规划'是必需能力</strong>——现实任务中计划必然需要调整(工具失败、信息不符);故架构需支持'边执行边修正计划'。④ <strong>'成本结构'的差异</strong>——Plan-and-Execute 的计划只需一次 LLM 调用(便宜),执行阶段可用简单模型;ReAct 每步都需推理(更贵)。故对'结构化的长任务',Plan-and-Execute 更经济。⑤ <strong>与'多智能体'的关系</strong>——'规划者 + 执行者'的多 Agent 架构是规划思想的一种实现;但也可在单 Agent 内完成(先生成计划再执行),无需真正的多 Agent(避免通信开销)。⑥ <strong>面试要点</strong>——被问'Agent 如何规划',应给出'<strong>显式分解(粒度适中)+ 依赖关系 + 重规划 + Plan-and-Execute 与 ReAct 的对比与混合</strong>',并强调'<strong>计划太细反而有害</strong>'与'<strong>长任务需要显式计划防迷路</strong>';这是 Agent 架构类问题的深度回答。
⚠️ Common Interview Pitfalls
- ✕计划过于细化(无法适应意外)
- ✕不支持重规划(环境变化时计划失效)
🎯 Interviewer Follow-ups
- ?计划太细或太粗有什么问题?
- ?Plan-and-Execute 与 ReAct 如何结合?
📚
Associated Knowledge Base Guides & Mindmaps
Explore the comprehensive technical article, exam cards, and global architecture tree.