背景
Agent 指能够感知环境、根据感知做出决策以实现特定目标的系统;在大模型加持下,其能力更加突出。目前没有统一的 Agent 设计范式,但业界存在多种常见设计模式。本文选取三种最常用模式:Reflection(反思)、Tool Use(工具使用)、Planning(规划),并分别说明其含义与应用场景。
一、Reflection(反思)
含义
Reflection 指 Agent 能够对自己的行为与决策进行推理和分析,从而在后续决策中利用这些信息改进表现。本质是「执行 → 观察结果/错误 → 反思原因 → 修正后再执行」的闭环。
典型应用场景
- NL2SQL / 代码生成纠错:首次生成的 SQL 或代码执行报错时,将「问题 + 当前输出 + 报错信息」作为反思 prompt,让模型写出修正后的查询或代码,直到执行通过。
- 文案/报告自检与润色:生成初稿后,让模型以「审稿人」视角反思逻辑、事实一致性、语气,并输出修改建议或二稿。
- 对话式任务中的澄清与纠偏:用户反馈「这不是我想要的」时,基于反馈做反思,调整理解或策略后再次尝试。
二、Tool Use(工具使用)
含义
Tool Use 指 Agent 像人使用工具一样,调用外部工具与资源来扩展能力,例如计算器、搜索引擎、数据库、API、代码执行环境等,而不是仅依赖模型内部知识与推理。
典型应用场景
- 精确计算与实时数据:需要准确数值计算时调用计算器工具;需要最新信息时调用搜索或 Wikipedia 等工具,避免模型「心算错误」或知识截止带来的过时信息。
- 数据库/业务系统操作:通过封装好的 API 或数据库工具执行查询、写入、状态查询等,实现「查库存」「下单」「查订单」等具体业务动作。
- 代码执行与数据分析:在沙箱中执行代码、跑脚本、做数据可视化,用于数据处理、报表生成或算法验证。
三、Planning(规划)
含义
Planning 指 Agent 使用大模型自主决定要执行哪些步骤以完成更大任务:先将目标分解为若干子任务或子步骤,再按顺序(或带条件的顺序)执行,并根据中间结果决定是否调整后续步骤。
典型应用场景
- 主题调研与报告撰写:给定主题后,规划为「检索子主题 → 搜集资料 → 归纳整理 → 拟定大纲 → 撰写正文 → 审阅润色」等步骤,由 Agent 按步骤调用搜索、总结、写作等能力完成。
- 多步骤运维或自动化:例如「发布新版本」可规划为:拉取代码 → 跑测试 → 构建镜像 → 更新配置 → 灰度发布 → 健康检查,每步根据结果决定是否继续或回滚。
- 复杂问答与决策支持:用户问「是否适合在本市开咖啡店」时,规划为:查本地人口与消费数据 → 查竞品与选址 → 做简单成本收益分析 → 综合成结论与建议。
三者关系简述
- Reflection 侧重「做得对不对、要不要重做」——在单步或多步之后做自我检查与修正。
- Tool Use 侧重「用什么做」——通过外部工具弥补模型在计算、实时性、执行动作上的不足。
- Planning 侧重「先做什么、后做什么」——把大任务拆成可执行的子任务并排序。
实际系统中三者常组合使用:例如先 Planning 拆解任务,每步用 Tool Use 调用工具执行,再用 Reflection 检查结果并决定是否重试或调整计划。