Agent 任务规划

Agent 任务规划
1. 复杂任务为什么必须先拆解?
1. 模型一次推理的工作记忆有限,十几个步骤的任务硬扛,中途丢目标、漏步骤是必然事件。
2. 拆解把大目标变成一串小验证点,每步做完都有明确的完成判据,错在哪个子步骤一查便知。
3. 拆解后的子任务才能并行,独立的部分同时开工,总时长从串行叠加变成最长链。
4. 拆解让上下文更聚焦,每个子任务只带自己需要的信息,避开大杂烩上下文的注意力稀释。
5. 成本也可控了,简单子任务用便宜模型,复杂的才上旗舰,整体账单能降一档。
6. 面试加分点:强调拆解质量决定任务成败的天花板,拆错了方向,后面执行得再好也是白干。
7. 常见误区是把拆解当万能起点,简单任务过度拆解反而引入协调开销,两三步能干完的别拆。
2. 任务分解的粒度怎么把握?
1. 粒度下限是可验证,每个子任务完成后能客观判断做没做成,没法验收的拆法等于没拆。
2. 粒度上限是单步可执行,一个子任务用一次调用加一两个工具能完成,还要拆就继续分。
3. 依赖结构决定切法,按阶段切、按对象切、按产出物切都行,关键是切完后依赖关系清晰。
4. 拆出三到九个一级子任务是常见的健康区间,超过十个说明该分层,先分阶段再分步。
5. 子任务之间的接口要先定义,产出什么格式、交给谁,接口模糊是拆解后协调混乱的根源。
6. 拆解不是一次到位,允许执行中发现粒度不适再调整,规划是滚动的过程不是一次性图纸。
7. 面试加分点:能给出自检清单,每个子任务问三句——产出什么、怎么验收、依赖谁,答不上就重拆。
3. 子任务之间的依赖怎么表达和管理?
1. 依赖关系用显式结构表达,列表、有向图都行,关键是机器可判定,别让依赖关系活在描述文字里。
2. 区分硬依赖和软依赖,硬依赖是必须等结果,软依赖是有更好没有也行,调度策略完全不同。
3. 按依赖图做拓扑排序定执行序,无依赖的批次并行跑,执行计划自动生成。
4. 依赖图的环要检测和打破,出现循环依赖说明拆解有问题,合并或重构相关子任务。
5. 执行中动态维护依赖状态,某子任务失败时,下游依赖它的任务要联动挂起而不是继续空跑。
6. 共享资源的依赖容易漏,两个子任务都要写同一文件,这种冲突依赖要加锁或串行化。
7. 面试加分点:依赖管理本质是小型项目管理的功课,做过真实多步系统的候选人才会答出冲突处理。
4. 计划做得太死板怎么留弹性?
1. 计划分层表达,总体路线定方向不锁细节,子任务内部让执行者自行决定手段。
2. 给计划标注假设条件,每个子任务写清基于什么前提,前提塌了就是触发重估的信号。
3. 预留替代路径,关键子任务准备一个备选方案,主路失败不用从头规划。
4. 计划里标注可并行和可跳过的部分,执行时按实际情况裁剪,快路径慢路径都能走。
5. 设里程碑重估点,每完成一个阶段回头校准方向,避免在错误的路上越走越远。
6. 弹性和纪律要平衡,弹性不是随意改计划,每次变更要有理由并记录,否则计划形同虚设。
7. 面试加分点:好计划的特征是关键路径刚性、非关键路径弹性,答出这个区分说明有真实施工经验。
5. 执行中和计划冲突了,重规划怎么触发?
1. 先定义冲突信号,子任务连续失败、产出与验收不符、环境前提变化,都是重规划的合法触发。
2. 小冲突局部处理,单个子任务换方法重试,不动整体计划,避免过度反应。
3. 结构性冲突才升级重规划,依赖图要改、目标要调整、多个子任务连环失败,这时局部修补没用。
4. 重规划要带上下文,把已完成的进展、失败的教训、剩余的资源一并交给规划者,别从零再画。
5. 重规划有次数预算,频繁重规划说明拆解或执行有系统性问题,治本比再规划重要。
6. 重大重规划要过确认,改动方向性的内容最好有人或上层智能体拍板,防止越改越偏。
7. 面试加分点:重规划的本质是计划的版本管理,每次重规划是一次版本发布,要有记录和可回滚意识。
6. 有哪些成熟的计划表示方式?
1. 任务清单是最简单的形态,编号步骤加状态标记,轻量直观,适合线性任务。
2. 依赖图结构化最强,节点带产出和验收,边表达依赖,机器可调度可检测环。
3. 分层计划用阶段套步骤的树形结构,宏观和微观分开看,汇报和执行两用。
4. 假设式计划在步骤上带前提和备选,天生适合不确定环境,重规划时直接换分支。
5. 计划表示的选择要匹配消费方式,给人看的要可读,给调度器看的要可解析,最好两者兼得。
6. 表示不是越复杂越好,能覆盖任务依赖关系的最简表示就是最优解,过度结构化是负担。
7. 面试加分点:能现场给一个中型任务的计划表示示例,比背名词更能证明实操能力。
7. 多步计划怎么防止中途丢失全局目标?
1. 目标和硬约束常驻上下文头部,每轮决策都能看到,这是最基本的锚。
2. 计划全文随行而不是只记当前步,模型随时知道自己处在哪、还剩什么没做。
3. 里程碑处做目标复读,完成一个阶段就重新陈述总目标,对齐后再进下一阶段。
4. 给每个子任务标注它服务于哪个总目标,局部动作和全局意图保持可追溯。
5. 防目标漂移的检测器,监控当前动作与计划的偏离度,偏离超阈值就提醒或纠偏。
6. 用户目标中途被修改时要显式更新计划并归档旧目标,避免新旧目标混战。
7. 面试加分点:目标漂移是长任务的头号杀手,能主动讲出锚定机制说明踩过坑也爬出来过。
8. 计划质量怎么在执行前评估?
1. 完整性检查,对照原始目标逐条核对,每个需求点都有对应子任务覆盖,无遗漏。
2. 可行性检查,每个子任务的工具、数据、权限是否具备,不具备的计划再漂亮也是空中楼阁。
3. 依赖一致性检查,依赖图无环、接口对齐、产出格式衔接得上。
4. 风险预演,走查一遍失败场景,每个子任务失败有没有预案,高风险步骤有没有兜底。
5. 成本预估,按子任务的调用量算总开销,超预算先优化计划再开工。
6. 用评审模型给计划打分,从分解合理、顺序正确、风险覆盖几个维度出结构化意见。
7. 面试加分点:执行前评估的投入产出比极高,几分钟能省几小时的无效执行,这是计划文化的核心。
9. 交互式任务和批处理任务的规划差异?
1. 批处理任务计划定完就自动跑,规划重心在依赖排序、并行度和失败恢复。
2. 交互式任务的计划要给人留位置,关键节点等用户输入、模糊处主动提问,节奏由双方共同控制。
3. 交互式任务要做增量确认,阶段性产出先给用户过目再继续,方向错了及时掉头。
4. 批处理可以激进优化,最大化并行和自动化;交互式优先体验,宁可串行也要可控。
5. 交互式计划的粒度更细,因为每次交互都是一次校准机会,步子小一点纠偏成本就低一点。
6. 混合场景要设计模式切换,自动执行段和等待确认段在计划里显式标出。
7. 面试加分点:交互式规划的核心是打断成本管理,什么时候该停下来问,比怎么自动跑更考验设计。
10. 规划失败的典型模式有哪些?
1. 模式一是过度自信的扁平拆解,二十步任务拆成三步,每步都大到没法执行。
2. 模式二是忽视依赖的乐观排程,把强依赖的任务当独立任务并行,结果互相等、互相踩。
3. 模式三是无验证点的黑箱计划,干完才知道对错,中途没有纠偏机会。
4. 模式四是幻觉能力,把模型做不了、工具没有的事排进计划,执行时才发现此路不通。
5. 模式五是计划一刀切,不同类型的子任务用同一套假设,比如把探索性任务排得像确定性流程。
6. 模式六是没有资源视图,时间预算、调用配额从没进过规划,跑一半没钱了。
7. 面试加分点:每种失败模式对应一条预防设计,能把失败模式和防线一一配对就是完整的方法论。
11. 规划能力怎么单独增强?
1. 提示层面给规划骨架,明确的分解步骤模板加自查清单,能让规划的规范度上一个台阶。
2. 少样本示例喂优秀计划,同领域的好计划案例是最直接的模仿素材,比抽象原则管用。
3. 规划与执行解耦训练,单独收集规划质量的对比数据,知道什么样的计划成功率高。
4. 失败计划入库复盘,把执行失败追溯到规划缺陷,形成反例库指导后续生成。
5. 用评审模型做规划反馈回路,生成计划先评审再执行,迭代几轮质量明显提升。
6. 模型层面选择规划强的模型或推理模型承担规划角色,执行则交给成本友好的模型。
7. 面试收尾观点:规划是智能体里杠杆最大的能力,规划好一分,执行省十分,这也是为什么规划值得单独评测、单独优化。

包含的内容比较多,这里只做了简单的截图介绍,需要拿来学习的小伙伴查看下方图片!
📚 大模型面试题系列 · 持续更新
INTRO_REMOVED
长按识别二维码,添加微信好友
获取完整版面试题合集,注明 「面试」 通过好友申请
更多推荐
所有评论(0)