前言#
最近阅读了 Antonio Gullí(Google)的新书《Agentic Design Patterns: A Hands-On Guide to Building Intelligent Systems》,这是一本关于如何构建智能代理(AI Agent)系统的实践指南。书中提出了 21 种核心设计模式,非常系统化,适合想要深入学习 Agent 技术的开发者。
这本书的核心理念是:构建智能系统就像在画布上创作一幅复杂的艺术作品,需要结构化的设计模式和经过验证的方法论。
一、什么是 AI Agent?#
1.1 Agent 的基本定义#
AI Agent(智能代理)是一种能够感知环境、制定计划并执行行动以达成特定目标的系统。与传统软件不同,Agent 具有:
- 自主性(Autonomy):无需持续人工干预即可执行操作
- 主动性(Proactiveness):主动朝着目标采取行动
- 反应性(Reactivity):对环境变化做出有效响应
- 工具使用能力(Tool Use):调用外部 API、数据库或服务
- 记忆能力(Memory):跨交互保留信息
1.2 Agent 的五步循环#
Agent 通过一个简单的五步循环来完成任务:
1. 获取任务(Get the mission)→ 你给它一个目标
2. 扫描环境(Scan the scene)→ 收集信息(读邮件、查日历等)
3. 思考推理(Think it through)→ 制定行动计划
4. 执行行动(Take action)→ 发送邀请、排会议、更新日历等
5. 学习改进(Learn and get better)→ 观察成功案例并适应plaintext1.3 从 LLM 到 Agentic AI 的演进#
LLM(基础语言模型)
↓
RAG(检索增强生成)
↓
Agentic RAG(代理增强的 RAG)
↓
Agentic AI(多代理协作系统)plaintext根据研究,到 2025 年初,96% 的大型 IT 公司正在积极使用 AI 代理。到 2024 年底,AI 代理创业公司已融资超过 20 亿美元,市场估值达 52 亿美元,预计到 2034 年将增长到近 2000 亿美元。
二、Agent 的四个复杂度级别#
Level 0:核心推理引擎#
LLM 本身不是 Agent,但可以作为推理核心。在此级别中:
- 无工具、无记忆、无环境交互
- 仅基于预训练知识响应
- 优势:强大的内部推理能力
- 局限:完全缺乏当前事件认知
Level 1:连接型问题解决者#
LLM 通过连接外部工具成为功能性 Agent:
- 可执行多步骤操作收集和处理信息
- 可调用搜索引擎、财务 API 等外部工具
- 从预训练知识扩展到实时信息获取
Level 2:战略型问题解决者#
Agent 能力显著扩展,具备:
- 战略规划:处理复杂多部分问题
- 上下文工程(Context Engineering):战略性地选择、打包和管理每个步骤最相关的信息
- 主动和持续运营:如旅行助手自动从冗长的确认邮件中提取关键信息
- 自我改进:通过反馈自动优化上下文工程流程
Level 3:协作式多代理系统#
重要范式转变:从追求单个超级 Agent 转向多代理协作系统。
类比人类组织结构,不同代理担任不同角色:
- 项目经理代理:中央协调者
- 市场研究代理:收集消费者数据
- 产品设计代理:开发概念
- 营销代理:制作推广材料
三、21 种核心设计模式#
第一组:基础结构模式#
1. Prompt Chaining(提示链)#
核心思想:将复杂任务分解为有序的子任务序列,每个子任务通过专门设计的提示词处理。
为什么需要:
- 单个复杂提示会导致指令忽略、上下文漂移、错误传播、幻觉
示例流程:
步骤 1:总结市场报告 → "你是一名市场分析师,请总结以下报告的关键发现:[文本]"
步骤 2:识别趋势 → "基于摘要,识别前三个新兴趋势并提取支持每个趋势的具体数据点"
步骤 3:撰写邮件 → "起草一封简明的邮件给营销团队,概述以下趋势及其支持数据"plaintext关键收益:
- 模块化和清晰度
- 每个步骤可独立优化
- 减少模型认知负荷
- 更准确、更可靠的最终输出
2. Routing(路由)#
核心思想:将不同类型的查询导向专门的处理路径或专门的代理。
应用场景:
- 客服系统:根据问题类型分流到不同专业代理
- 查询分类:判断意图后分配到对应处理流程
3. Parallelization(并行化)#
核心思想:将任务分解为可并行处理的独立子任务,提高效率和吞吐量。
示例:
- 同时从多个 API 收集信息
- 并行处理数据验证和分析
- 多模态内容同时生成
4. Reflection(反思)#
核心思想:Agent 在生成响应或采取行动前,进行自我评估和改进。
应用:
- 代码生成后进行自我审查
- 创意写作的迭代改进
- 复杂问题的策略规划
第二组:能力扩展模式#
5. Tool Use / Function Calling(工具使用)#
核心思想:Agent 能够调用外部工具和服务,突破预训练知识的限制。
工具类型:
- 搜索引擎(实时信息)
- 数据库(结构化查询)
- 计算服务(数学运算)
- 代码执行环境
- 第三方 API
关键框架示例:
# LangChain 工具调用示例
tools = [
Tool(name="Search", func=search_engine.search),
Tool(name="Calculator", func=calculator.compute),
Tool(name="Weather", func=weather.get_forecast)
]
agent = initialize_agent(tools, llm, agent="zero-shot-react-description")python6. Planning(规划)#
核心思想:Agent 能够制定和执行多步骤计划以实现复杂目标。
示例应用:
- Google DeepResearch:自动化深度研究任务
- OpenAI Deep Research API:复杂信息搜集和分析
7. Multi-Agent Collaboration(多代理协作)#
核心思想:多个专业代理协同工作,共同完成复杂任务。
CrewAI 示例:
# 创建代理团队
researcher = Agent(role="Market Research Analyst", ...)
writer = Agent(role="Content Writer", ...)
editor = Agent(role="Editorial Reviewer", ...)
# 组成团队
crew = Crew(agents=[researcher, writer, editor], tasks=[...])
result = crew.kickoff()python8. Memory Management(记忆管理)#
核心思想:跨交互保留和管理信息,使 Agent 能够维护长期上下文。
记忆类型:
- 会话记忆(Session Memory):跟踪每次对话
- 状态(State):会话的临时便签本
- 长期记忆(Long-term Memory):跨会话积累的知识
第三组:高级智能模式#
9. Learning and Adaptation(学习与适应)#
核心思想:Agent 从经验中学习并改进自身性能。
案例研究:
- SICA(自我改进编码代理):从反馈中学习如何更好地编写代码
- AlphaEvolve:通过 AI 生成和改进算法
- OpenEvolve:开放式的 AI 驱动发现
10. Model Context Protocol / MCP(模型上下文协议)#
核心思想:标准化的代理与外部工具/服务之间的通信协议。
MCP vs 工具调用:
- MCP:专门为代理设计,支持双向通信和复杂交互
- 工具调用:更简单的函数调用机制
示例架构:
代理 ←→ MCP Server ←→ 外部资源
↓
FastMCP / 其他实现plaintext11. Goal Setting and Monitoring(目标设定与监控)#
核心思想:Agent 能够设定目标、监控进度并处理偏差。
关键组件:
- 目标分解为可执行的子目标
- 进度跟踪机制
- 异常检测和纠正
12. Exception Handling and Recovery(异常处理与恢复)#
核心思想:系统性地处理错误并从失败中恢复。
策略:
- 优雅降级
- 自动重试机制
- 降级方案执行
第四组:安全与可靠性模式#
13. Human-in-the-Loop(人机协作)#
核心思想:在关键决策点引入人工审核和干预。
应用场景:
- 高风险操作前的审批
- 敏感信息处理
- 模型不确定时的澄清
14. Knowledge Retrieval / RAG(知识检索)#
核心思想:通过检索外部知识来增强 Agent 的知识库。
核心技术:
- 嵌入(Embeddings):将文本转为向量
- 向量数据库:高效相似性搜索
- 分块(Chunking):文档分割策略
- 图 RAG:利用知识图谱增强检索
Agentic RAG:将 RAG 与代理能力结合,实现动态检索和推理。
15. Inter-Agent Communication / A2A(代理间通信)#
核心思想:多个代理之间的标准化通信协议。
A2A vs MCP:
- A2A:代理与代理之间的协作通信
- MCP:代理与外部工具/资源的连接
16. Resource-Aware Optimization(资源感知优化)#
核心思想:根据可用资源动态优化代理行为。
策略:
- 动态模型切换
- 成本-效益平衡
- 性能-延迟权衡
第五组:推理与评估模式#
17. Reasoning Techniques(推理技术)#
核心技术:
- Chain of Thought (CoT):逐步推理
- Self-Consistency:自洽性
- Tree of Thoughts (ToT):思维树
- ReAct:推理+行动
缩放推理定律:更多推理计算 → 更好性能
18. Guardrails / Safety Patterns(安全护栏)#
核心思想:确保代理行为安全、可靠、符合预期。
实施层面:
- 输入验证
- 输出过滤
- 行为约束
- 审计日志
19. Evaluation and Monitoring(评估与监控)#
核心思想:系统性地评估代理性能和健康状况。
关键指标:
- 任务完成率
- 响应质量
- 代理轨迹分析
- 错误率统计
20. Prioritization(优先级)#
核心思想:根据重要性紧急度对任务排序。
应用场景:
- 多任务调度
- 资源分配优化
- 截止日期管理
21. Exploration and Discovery(探索与发现)#
核心思想:主动探索未知领域,发现新的解决方案。
案例:
- Google Co-scientist:AI 辅助科学研究
- AlphaFold:蛋白质结构预测
- AlphaGenome:基因组分析
四、关于 Agent 的五大未来假设#
假设 1:通用代理的出现#
AI 代理将从窄领域专家演变为能够管理复杂、模糊、长期目标的真正通才。
示例:你只需说”规划下季度在里斯本举办30人的公司团建”,Agent 就能管理整个项目数周,处理从预算审批到航班谈判的一切。
两条可能路径:
- 大型通用模型
- 小型专业模型的组合(“乐高式”概念)
假设 2:深度个性化与主动目标发现#
代理将成为高度个性化的主动伙伴:
- 从被动响应 → 主动预测需求
- 帮助你发现和追求尚未完全表达的目标
假设 3:具身化与物理世界交互#
代理将从纯数字领域突破,与机器人结合:
- 家庭代理执行实际维修任务
- 从制造业到养老服务
假设 4:代理驱动经济#
高度自主的代理将成为经济活动的主动参与者:
- 代理作为独立经济实体
- 自主运营电商业务
- 新型”代理经济”出现
假设 5:目标驱动的变形多代理系统#
代理系统将从显式编程转向声明式目标:
- 声明期望结果,系统自主确定实现方式
- 动态调整多代理拓扑结构
- 真正的自我改进能力
五、主流开发框架#
LangChain & LangGraph#
特点:
- 灵活链接语言模型和组件
- 适合构建复杂操作序列和图形
# LangGraph 状态机示例
from langgraph.graph import StateGraph
graph = StateGraph(AgentState)
graph.add_node("research", research_node)
graph.add_node("write", write_node)
graph.add_edge("research", "write")pythonCrewAI#
特点:
- 专为多代理角色和任务协调设计
- 适合协作代理系统
Google ADK#
特点:
- 完整的代理开发工具包
- 与 Google AI 基础设施深度集成
- 支持 Vertex AI 平台
六、关键要点总结#
-
设计模式是构建可靠 Agent 的基石:避免重复造轮子,利用经过验证的解决方案
-
上下文工程是关键技能:战略性地选择、打包和管理信息输入,防止模型过载
-
多代理协作是未来趋势:复杂任务需要多个专业代理协同工作
-
安全护栏不可或缺:在享受 Agent 便利性的同时,必须建立完善的防护机制
-
持续学习和适应:Agent 应能从经验中学习并自动改进
-
人机协作仍然重要:在关键决策点保持人工审核
结语#
《Agentic Design Patterns》这本书系统性地梳理了构建智能代理系统的 21 种核心模式,从基础的 Prompt Chaining 到高级的 Multi-Agent Collaboration,覆盖了从理论到实践的完整知识体系。
对于想要深入学习 Agent 技术的开发者来说,这是一本非常实用的参考书。书中的代码示例覆盖了 LangChain、LangGraph、CrewAI 和 Google ADK 等主流框架,可以直接动手实践。
Agent 时代已经到来,掌握这些设计模式将帮助我们更好地构建可靠、高效、智能的代理系统。
📚 参考书籍:Antonio Gullí, “Agentic Design Patterns: A Hands-On Guide to Building Intelligent Systems”, Springer, 2025