【 LLM】Agent Planning 完全指南:8 种纯 LLM 范式 + 8 种混合规划模式详解(一)

发布时间:2026/10/31 13:33:43

【 LLM】Agent Planning 完全指南:8 种纯 LLM 范式 + 8 种混合规划模式详解(一) 核心摘要Planning 是 Agent 面对任务时决定“怎么做”“先做什么后做什么”“用什么工具做”的核心过程。本文系统梳理 8 种纯 LLM 规划范式与 8 种混合规划模式每种均配有直观流程图、适用场景与工程实现要点助你根据实际需求选择最合适的方案。上一篇文章讲解了 Agent 的四大核心组件感兴趣可以在专栏中查看今天专门深入聊聊组件之一的Planning规划。Planning 的本质就是让 Agent “会规划任务”。它的实现方式多样从纯 LLM 自主规划到代码与 LLM 协同的混合规划各有其适用边界。别一上来就追求最复杂的方案够用、有效才是最优解。一、LLM-based Planning纯大模型规划这种方式的核心思想是任务分解、步骤生成、工具选择全部由 LLM 自主完成。代码仅负责执行 LLM 输出的指令不参与规划逻辑本身。1. CoTChain-of-Thought让 LLM 展示推理过程CoT 是最基础的规划方式核心是通过 Prompt 引导 LLM 显式输出中间推理步骤而非直接给出答案。案例数学题“小明有 15 个苹果给出去 7 个又买了 5 个还剩几个”不用 CoTLLM 可能直接输出“13 个”易出错用 CoTLLM 输出“15 - 7 88 5 13”再给出答案“13 个”┌─────────────────────────────────────────┐ 代码 → 发送 Prompt请一步步思考小明有15个苹果给出去7个 又买了5个还剩几个展示你的推理过程。└─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ LLM 返回 推理15 -788 513答案13 └─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ 代码 → 直接输出结果结束 无循环单次调用 └─────────────────────────────────────────┘维度说明适用场景数学、逻辑、常识推理等需要显式推理的任务优点简单直接Token 成本低缺点单次调用无迭代改进空间2. ReActReasoning Acting思考-行动-观察循环ReAct 是目前最主流的规划方式核心是让 LLM 交替进行Thought → Action → Observation循环直到生成Final Answer。案例“查北京今天天气然后建议穿衣”LLM Thought“需要先查天气” → Actionsearch(北京天气)代码执行搜索返回 Observation“北京 25 度晴天”LLM Thought“天气晴朗温暖” → Final Answer“建议穿短袖带件薄外套”┌─────────────────────────────────────────┐ 代码 → 发送 Prompt第1轮你可以使用工具search(query) 任务查北京今天天气然后建议穿衣。 请按以下格式回答 Thought: [你的思考分析需要什么信息] Action: 工具名 Observation: [等待系统返回结果不要编造] 开始└─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ LLM 返回 Thought: 我需要先查天气 Action: search(北京天气)└─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ 代码 → 解析 Action调用搜索工具 代码 → 获取 Observation晴天25°C 代码 → 拼接回 Prompt └─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ 代码 → 发送 Prompt第2轮 Thought: 我需要先查天气 Action: search(北京天气)Observation: 晴天25°C 继续生成 └─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ LLM 返回 Thought: 天气晴朗温暖 Final Answer: 建议穿短袖带件薄外套 └─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ 代码 → 检测到Final Answer终止循环 代码 → 输出最终答案 └─────────────────────────────────────────┘工程实现要点循环控制器解析 LLM 输出的 Action判断是否继续工具执行器调用真实工具获取 Observation状态管理器拼接 ThoughtActionObservation 到对话历史终止判断器检测到Final Answer或达最大步数时停止维度说明适用场景工具调用、实时查询、多步交互任务优点灵活能基于观察结果纠正错误缺点需要代码实现循环控制Token 消耗随轮次增加3. ToTTree of Thoughts生成多个思路评估后选择最优ToT 的核心是生成多个候选思路 → 评估打分 → 选择最优路径继续探索类似树搜索算法。案例用 4、5、6、7 四个数字得到 26生成 3 个候选算式A(7-5)48B6530C(64)*550评估离 26 的距离A6分B8分C3分选择最高分 B30继续从该节点扩展30-426 ✓┌─────────────────────────────────────────┐ 代码 → 发送 Prompt扩展调3次当前可用数字4,5,6,7 请生成一个算式尝试得到26 只输出一个具体的算式尝试不要解释不要评估 例如(7-5) * 6 4 16temperature0.7独立调用3次 └─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ LLM 返回3个候选 候选A:(7-5)*48候选B:6*530候选C:(64)*550└─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ 代码 → 发送 Prompt评估请评估以下算式离26的距离1-10分 A8, B30, C50└─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ LLM 返回 A:6分, B:8分, C:3分 └─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ 代码 → 选最高分B30作为当前节点 代码 → 检测是否等于26否继续循环 └─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ 代码 → 发送 Prompt从B扩展调3次当前已有30剩余数字可用4,7 请生成新算式└─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ LLM 返回 候选D:30-426✓ └─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ 代码 → 检测到26终止 代码 → 输出路径6*5-426└─────────────────────────────────────────┘工程实现要点候选生成器调 LLM 多次生成temperature0获取多样思路评估函数可以是规则如“含数字 26 得 10 分”或另一个 LLM树搜索算法BFS/DFS/Beam Search决定扩展哪个节点、何时回溯选择器基于评估分数选择最优路径继续或输出维度说明适用场景谜题、创意生成、多方案决策优点能探索多种可能性避免陷入局部最优缺点需要评估函数Token 成本高4. GoTGraph of Thoughts图结构推理GoT 是 ToT 的进阶版核心是多源信息聚合、精炼、循环改进支持节点间的合并、拆分、回溯等图操作。案例分析 AI 对教育的影响生成三个观点A技术、B社会、C伦理判断可聚合性发现 A 与 B 矛盾先生成调和观点 E将 E、B、C 聚合成综合结论 D┌─────────────────────────────────────────┐ 代码 → 发送 Prompt扩展请从技术、社会、伦理3个角度 分析AI对教育的影响└─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ LLM 返回 观点A技术AI实现个性化学习 观点B社会加剧教育资源不平等 观点C伦理数据隐私风险 └─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ 代码 → 创建节点A、B、C存入图结构 代码 → 发送 Prompt判断这3个观点能聚合吗有矛盾吗 输出JSON{可聚合:true/false, 矛盾:[]}└─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ LLM 返回{可聚合:true,矛盾:[A与B]}└─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ 代码 → 解析JSON决策先调和再聚合 代码 → 发送 Prompt调和观点A说AI降本观点B说加剧不平等请调和这个矛盾└─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ LLM 返回 调和观点EAI降本但需政策保障公平分配 └─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ 代码 → 创建节点E画边 A→E, B→E 代码 → 发送 Prompt聚合请将E、B、C聚合成综合结论└─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ LLM 返回 综合观点DAI教育需技术创新政策调控隐私保护 └─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ 代码 → 创建节点D画边 E→D, B→D, C→D 代码 → 检测D的质量分8是 → 终止 否 → 回到精炼步骤 └─────────────────────────────────────────┘工程实现要点图结构管理维护节点和边的关系可聚合、可循环聚合操作器将多个节点输入 LLM要求合并共同之处精炼循环器检测需要改进的节点触发 LLM 重新生成遍历控制器决定扩展、聚合还是精炼维度说明适用场景复杂信息整合、多维度分析、报告生成优点比 ToT 更灵活支持信息融合与迭代优化缺点实现复杂调试困难Token 成本高5. Reflexion执行后评估迭代改进Reflexion 的核心是生成 → 外部评估 → 反思改进 → 再生成的闭环强调从失败中学习。案例写一段快速排序代码生成代码版本 1运行测试3 通过 / 2 失败LLM 反思“边界条件处理不当” → 改进方案“增加空列表判断”生成代码版本 2运行测试5 全部通过 ✓┌─────────────────────────────────────────┐ 代码 → 发送 Prompt生成请写一段快速排序代码└─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ LLM 返回[代码版本1]└─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ 代码 → 执行测试用例 代码 → 获取结果3个通过2个失败 └─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ 代码 → 检测全部通过否发送Prompt反思测试失败了请分析问题并给出改进方案└─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ LLM 返回 问题边界条件处理不当 改进增加空列表判断 └─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ 代码 → 发送 Prompt改进请按改进方案重写代码└─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ LLM 返回[代码版本2]│ └─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ 代码 → 执行测试用例 代码 → 获取结果5个全部通过 ✓ 代码 → 检测通过是 → 终止输出版本2 否 → 继续循环最多5轮 └─────────────────────────────────────────┘工程实现要点外部评估器执行测试、规则检查或调 LLM 打分记忆存储器保存历史尝试和失败经验迭代控制器设置最大反思次数防止无限循环结果比较器对比多版输出选择最优维度说明适用场景代码生成、高精度任务、可验证输出优点能持续改进质量从失败中学习缺点依赖外部反馈信号迭代成本高6. ReWOOReasoning w/o Observation先规划所有步骤再批量执行ReWOO 的核心是一次性规划所有工具调用 → 批量并行执行 → 最后总结避免 ReAct 的多轮交互开销。案例查 5 个城市的天气LLM 生成完整计划[search(北京), search(上海), ...]代码并行执行 5 个搜索获取所有结果LLM 基于所有结果生成对比分析┌─────────────────────────────────────────┐ 代码 → 发送 Prompt规划请一次性规划查5个城市天气需要的所有工具调用└─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ LLM 返回[search(北京),search(上海),search(广州),search(深圳),search(杭州)]└─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ 代码 → 解析工具列表 代码 → 批量并行执行5个搜索 代码 → 获取所有结果 └─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ 代码 → 拼接结果到 Prompt总结北京25°C上海28°C广州32°C 深圳30°C杭州26°C 请给出对比分析└─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ LLM 返回 最热的城市是广州32°C建议... └─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ 代码 → 输出最终结果 无循环只调2次LLM规划总结 └─────────────────────────────────────────┘工程实现要点计划解析器从 LLM 输出中提取工具调用列表批量执行器并行或串行执行所有工具调用结果注入器将工具返回替换到 Prompt 的 Observation 位置最终生成器调 LLM 一次基于所有结果生成答案维度说明适用场景低成本、确定性高、可并行的任务优点Token 消耗低执行效率高缺点无中途纠正能力依赖规划准确性7. Plan-and-Execute先全局规划再分步执行Plan-and-Execute 的核心是先生成全局计划 → 逐步执行 → 异常时触发重规划兼顾全局视野与局部适应性。案例制定从北京到上海出差的完整计划LLM 生成全局计划订机票 → 订酒店 → 参加会议执行步骤 1订机票→ 成功执行步骤 2订酒店→ 失败满房触发重规划换酒店 → 调整会议时间继续执行至完成┌─────────────────────────────────────────┐ 代码 → 发送 Prompt规划请制定从北京到上海出差的完整计划└─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ LLM 返回 步骤1订机票 步骤2订酒店 步骤3参加会议 └─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ 代码 → 解析步骤列表 代码 → 执行步骤1订机票 → 成功 └─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ 代码 → 执行步骤2订酒店 → 失败满房 └─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ 代码 → 检测异常是触发重规划 代码 → 发送 Prompt重规划酒店满了请重新规划剩余步骤└─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ LLM 返回 新步骤2换另一家酒店 步骤3调整会议时间 └─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ 代码 → 执行新步骤2 → 成功 代码 → 执行步骤3 → 成功 代码 → 全部完成输出最终行程 └─────────────────────────────────────────┘工程实现要点计划解析器将自然语言计划解析为结构化步骤列表步骤执行器按顺序执行每一步监控执行状态异常检测器判断执行结果是否偏离预期重规划触发器异常时将状态目标传给 LLM 重新制定计划状态同步器更新已完成步骤、当前资源、剩余任务维度说明适用场景复杂多步骤任务、长流程自动化优点全局视野 局部调整适应性强缺点实现复杂重规划增加 Token 成本8. LATSLanguage Agent Tree Search蒙特卡洛树搜索决策LATS 的核心是将MCTS蒙特卡洛树搜索应用于 LLM 决策通过模拟、评估、回溯选择最优动作序列。案例围棋对弈UCB 公式选择节点生成 3 个候选动作对每个动作快速模拟rollout5 步评估终局得分回溯更新树节点统计值选择 UCB 最高的节点继续扩展循环直至选出最优动作┌─────────────────────────────────────────┐ 代码 → UCB公式选择节点初始只有根节点 └─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ 代码 → 发送 Prompt扩展调3次当前局面围棋第50手黑棋优势 请生成3个可能的下一手temperature0.7独立调用3次 └─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ LLM 返回3个候选动作 动作A占角胜率预估55% 动作B守边胜率预估52% 动作C打入胜率预估48% └─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ 代码 → 对每个动作快速模拟rollout 代码 → 随机走5步评估终局结果 代码 → 获取评分A60,B55,C50└─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ 代码 → 回溯更新树A访问1累计分60 代码 → UCB计算A得分最高 代码 → 选择A作为下一轮扩展节点 └─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ 代码 → 检测A是否达到目标胜率如90% 否 → 回到扩展步骤继续循环 是 → 终止输出A为最优动作 └─────────────────────────────────────────┘工程实现要点UCB 计算器实现公式平衡探索/利用节点管理器维护树结构记录访问次数、得分、父子关系模拟 rollout快速执行评估终局结果回溯更新器反向传播更新路径上所有节点统计值选择执行器多轮迭代后选择得分最高的动作维度说明适用场景复杂工具调用、博弈、多步决策优点决策质量高能探索长期最优策略缺点Token 成本极高实现复杂度最高纯 LLM 规划选型速查表任务特征推荐范式核心理由简单推理、低成本CoT / ReWOO单次或两次调用Token 消耗最低工具调用、实时交互ReAct业界标准灵活可靠多方案探索、创意ToT / GoT支持多路径搜索与信息融合可验证输出、高精度Reflexion从失败中迭代改进复杂多步骤、长流程Plan-and-Execute全局规划 动态重规划博弈、长期决策LATSMCTS 保证决策质量⚠️选型原则没有银弹优先从简单方案开始仅在简单方案无法满足需求时才升级复杂度。下一篇讲继续讲 Planning 的Hybrid Planning混合规划内容。我刚开源的 ThinkLoop 工具就是采用了 Reflexion 的设计思路让各大厂商的 web 端大模型问答更加精准降低 web 端单模型的幻觉问题感兴趣可以看一下这篇文章。免费直连 Kimi/千问/DeepSeek还能自动质检和横向对比这个开源项目做到了
延伸阅读

更多相关文章

2026/10/25 21:51:45

“这是我想要的人生,还是别人定义的人生?”

人生最深的迷茫,很多时候不是不知道去哪,而是不确定:眼前这条路,到底是不是自己真正想走的。第一层:为什么会出现“别人的人生”? 人从小就在接受各种定义: 什么叫成功。 什么叫优秀。 什么叫体…

2026/10/29 20:17:52

VirtualBox虚拟化实战:一机双系统搭建与优化指南

1. 项目概述:一机双系统的魅力与挑战最近在折腾电脑的朋友,可能都听过“一机双系统”这个玩法。简单来说,就是在一台物理电脑上,同时安装并运行两个独立的操作系统。这听起来有点像科幻电影里的场景,但今天&#xff0c…

2026/10/30 11:28:23

macOS前端开发环境配置全攻略

1. 为什么需要专门配置macOS前端开发环境?作为一个长期在macOS上工作的前端开发者,我深刻体会到原生系统与高效开发环境之间的差距。macOS虽然预装了不少开发工具,但想要打造一个真正顺手的前端工作流,必须进行系统性的环境配置。…

2026/10/31 13:29:14

K-means算法在电力系统电压分区调节中的应用与实践

1. 项目背景与核心价值 电力系统电压调节一直是电网运维的核心难题。传统集中式调节方式在面对大规模分布式电源接入时显得力不从心,而基于集群划分的分布式调节策略正成为行业新趋势。这个项目巧妙地将机器学习中的K-means算法应用于IEEE 33节点系统的电压分区&…

2026/10/31 13:29:14

K-means聚类在电力系统电压调节中的应用与优化

1. 项目背景与核心思路 电力系统电压调节一直是电网运维中的关键挑战。在IEEE 33节点这样的典型配电网模型中,传统集中式电压控制方法往往面临响应速度慢、调节精度不足的问题。我们团队尝试将机器学习中的K-means聚类算法引入电压调节领域,通过智能化的…

2026/10/31 13:29:14

从TTS接口到自托管配音管线:批量声音克隆合成实战指南

去年年底那段时间,我被一批批量配音的需求折磨得够呛。手头有几百条本地化文案要转成音频,内容不算复杂,但胜在量大。一开始我直接往云端文本转语音接口上堆,结果账单嗖嗖涨,而且想调声音细节的时候总有种隔靴搔痒的感…

2026/10/31 13:29:14

openrig:用铝型材搭建可无限扩展的桌面工作站支架

很多人第一次听到 openrig 这个名字,第一反应是“又一个开源硬件项目”。确实,它沾点开源的边,但本质上它不是一块开发板,也不是一套固件,而是一套 开放式设备支架系统 ——用铝型材、T型螺母、角件这些标准件&#…

2026/10/31 13:29:14

Flink Print SQL Connector:实时数据流调试利器

1. Flink Print SQL Connector 调试利器解析 在 Flink SQL 开发过程中,调试数据流转一直是个痛点。传统的调试方法往往需要将数据写入外部存储系统再查看,不仅耗时还增加了复杂度。而 Print SQL Connector 作为 Flink 内置的调试工具,可以直接…

2026/10/31 13:24:14

从硬编码到动态决策:Agent工具选择策略的演进与落地

上周有个朋友过来找我聊,说他负责的 Agent 项目要从 20 多个工具里做选择,代码里全是 if-else,每次加新需求都得把整棵规则树翻一遍,改完还要担心把旧分支打坏。他说想换成动态决策,但又怕结果不可控。这个纠结我太熟悉…

2026/10/30 20:55:10

全国计算机二级C语言真题PDF高效刷题指南

简介:这份PDF是全国计算机二级C语言考试的试题与答案解析,专为备考二级C语言的考生准备。内容涵盖C语言特点与设计理念、程序基本组成单位、main函数执行流程、函数嵌套调用规则、标识符命名规范、整型实型字符型数据类型、八进制十六进制数合法形式、运…

2026/10/30 20:55:10

requests+BeautifulSoup:爬虫抓取h1标题的入门实战指南

简介:一份以实战为导向的Python爬虫入门资源,面向具备基本编程基础、希望快速掌握网络数据抓取的初学者,可解决从零编写简单爬虫的常见困惑。实例以requests库发送HTTP请求、BeautifulSoup解析HTML文档,完整演示从网页中提取 标题…

2026/10/30 20:55:09

递推最小二乘参数辨识MATLAB编程:二阶系统与渐消记忆实现

简介:这是一篇面向控制系统、信号处理与机器学习等领域学习者的最小二乘参数辨识程序说明文档。资源共包含一个docx格式文档,压缩包大小七十八KB,内容围绕递推最小二乘算法和渐消记忆最小二乘算法展开:先构造一个极点位于单位圆内…

2026/10/31 0:02:41

猫狗目标检测数据集:VOC/COCO/YOLO三格式一体化实战包

简介:本资源是一套面向计算机视觉初学者与YOLO目标检测实践者的猫狗图像数据集及配套开发工具包,专为快速上手目标检测模型训练而设计。资源包含1000张真实场景高清猫狗图片,标注质量高,同时提供VOC(XML)、…

2026/10/31 0:02:41

HDU2017多校标程复现:算法竞赛工程化真题沙盒

简介:本资源为2017年HDU多校联合训练第一场官方配套资料,面向ACM程序设计竞赛备赛学生、算法爱好者及高校编程集训队成员,旨在提供权威解题参考与完整测试验证环境。压缩包共40个文件,含15份C标程(覆盖全部赛题&#x…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑