AI Agent 有哪些设计模式
系统梳理 AI Agent 的核心架构与开发设计模式,包括 ReAct、Plan-and-Execute、Reflection 等常见范式及其适用场景。
AI Agent 开发设计模式
核心架构模式
1. ReAct (Reasoning + Acting)
思考 → 行动 → 观察 → 思考 → ...
- 让 Agent 在行动前先推理,观察结果后再继续
- 适合需要多步骤推理的任务
2. Plan-and-Execute
Planner → [Task1, Task2, Task3] → Executor → 合并结果
- 先生成完整计划,再逐步执行
- 适合复杂、可分解的长任务
3. Reflection(反思模式)
生成输出 → 自我评估 → 修正 → 再评估 → ...
- Agent 对自己的输出进行批评和改进
- 提升输出质量,适合写作、代码生成
多 Agent 协作模式
4. Orchestrator-Subagent
Orchestrator
├── SubAgent A (专业任务)
├── SubAgent B (专业任务)
└── SubAgent C (专业任务)- 主 Agent 分发任务,子 Agent 专注执行
- Claude Code 本身就是这种架构
5. Supervisor(监督模式)
Supervisor
↕ 监控/纠正
Worker Agent- Supervisor 负责质量控制和错误纠正
- 适合需要高可靠性的生产系统
6. Peer-to-Peer / 辩论模式
Agent A ←→ Agent B
提案 反驳/完善- 多个 Agent 相互质疑、完善结论
- 适合需要多角度验证的决策场景
工具使用模式
7. Tool-Augmented Agent
tools = [search, calculator, code_exec, file_read]
agent.run(task, tools=tools)- Agent 按需调用外部工具扩展能力
- 核心是工具的选择与参数生成
8. RAG + Agent(检索增强)
用户问题 → 向量检索 → 注入上下文 → Agent 回答
- 解决知识时效性和长文档问题
- 适合企业知识库场景
流程控制模式
9. Chain(链式)
Step1 → Step2 → Step3 → 最终输出
- 每步输出作为下一步输入
- 简单、可预测,适合固定流程
10. Routing(路由模式)
输入 → Router → 专家 Agent A
→ 专家 Agent B
→ 专家 Agent C- 根据输入类型分发给最合适的专家
- 适合多领域客服、分类处理系统
11. Parallel(并行模式)
任务 → [Agent A | Agent B | Agent C] → 聚合结果
- 多个 Agent 同时处理,提升效率
- 适合独立子任务、多视角生成
12. Map-Reduce
大任务 → Map(分块) → [处理1|处理2|处理3] → Reduce(合并)
- 处理超长文档、大规模数据分析
记忆管理模式
13. Memory 分层架构
| 层级 | 类型 | 示例 |
|---|---|---|
| In-context | 短期 | 当前对话 |
| External | 长期 | 向量数据库 |
| Episodic | 情节 | 历史任务记录 |
| Semantic | 语义 | 用户偏好/知识 |
可靠性模式
14. Human-in-the-Loop
Agent 执行 → [高风险操作?] → 人工确认 → 继续
- 关键节点引入人工审核
- 平衡自动化效率与安全性
15. Guardrails(护栏模式)
输入验证 → Agent → 输出过滤 → 安全输出
- 在输入/输出层加安全检查
- 防止越权、注入、有害内容
16. Retry + Fallback
尝试 → 失败 → 重试(调整策略) → 失败 → Fallback方案
模式选择建议
| 场景 | 推荐模式 |
|---|---|
| 任务复杂度低 | Chain / Tool-Augmented |
| 需要高质量输出 | Reflection / Debate |
| 任务可并行 | Parallel / Map-Reduce |
| 多领域问题 | Routing / Orchestrator |
| 高风险操作 | Human-in-the-Loop + Guardrails |
| 长期记忆需求 | RAG + Memory 分层 |
现代框架对应
| 框架 | 主要模式 |
|---|---|
| LangGraph | 状态图、循环、条件路由 |
| AutoGen | 多 Agent 对话、Supervisor |
| CrewAI | 角色分工、Orchestrator |
| Claude Agents API | Managed Orchestrator-Subagent |
| Semantic Kernel | Plugin + Plan-and-Execute |
这些模式可以组合使用,实际项目中往往是多种模式的混合。你对哪个方向最感兴趣?