精读 Anthropic《Building Effective Agents》2025 更新版
2026-03-23 精读 Anthropic《Building Effective Agents》2025 更新版
写在前面
2024 年 12 月,Anthropic 发布了《Building Effective Agents》。一年多过去,Agent 领域变化很快:2025 年 9 月,Claude Code SDK 升级为 Claude Agent SDK,文章本身也做了更新,而当初提出的核心原则在实践中基本站住了。
本文基于官方原文的最新版本,结合 2025-2026 年的行业实践,重新梳理构建高效智能体的几条主线。
核心观点没有变:效果好的智能体实现,往往不靠复杂框架,而是靠简单、可组合的模式搭起来。
核心概念辨析
智能体 vs 工作流
Anthropic 对"智能体"和"工作流"的区分,到 2025 年反而更值得强调:
| 概念 | 定义 | 特点 | 典型工具 |
|---|---|---|---|
| 工作流 | 通过预定义代码路径协调 LLM 和工具 | 可预测、可控制 | LangChain, Vellum |
| 智能体 | LLM 动态指导自己的工作过程和工具使用 | 灵活、自主 | Claude Agent SDK |
2025 年的趋势:行业重心从"工作流编排"转向"自主智能体"。LangChain 创始人甚至判断,2026 年会是"Agent 工程"的分水岭。
增强型 LLM:构建基石
文章把"增强型 LLM"作为所有智能体系统的基本构建模块:
增强型 LLM = 基础模型 + 检索能力 + 工具调用 + 记忆系统
关键更新:2025 年 Anthropic 发布了 Model Context Protocol(MCP),给工具集成定了一套标准。有个比喻很贴切:MCP 之于 AI 工具,有点像 USB 之于外设——插上就能用。
Skills:2025 年的新范式
2025 年底,Anthropic 推出了 Claude Skills 开放标准,Vercel 随后推出了 skills.sh 这个技能分发平台。
# 一行命令为 AI 助手添加技能
npx skills add <skill-name>
Skills vs MCP:
- Skills 让 AI 学会"怎么做"(包含指令、脚本、资源的文件夹)
- MCP 让 AI 知道"用什么做"(工具连接协议)
两者配合,AI 才算有了"专业技能 + 顺手工具"的完整工作方式。
五种核心工作流模式
1. 提示词链(Prompt Chaining)
核心思想:将复杂任务分解为固定步骤,每步 LLM 调用处理前一步的输出。
输入 → 步骤 1 → 检查点 → 步骤 2 → 检查点 → ... → 输出
适用场景:
- 任务可清晰分解为固定子任务
- 牺牲速度换取更高准确性
实践案例:
营销文案生成 → 翻译成多语言 → 格式化输出
文档大纲生成 → 检查是否符合标准 → 撰写完整文档
我的思考:提示词链是最容易实现也最容易出问题的模式。关键在于检查点的设计——如何在中间步骤验证流程是否正确。
2. 路由(Routing)
核心思想:对输入分类,引导至专门的处理流程。
┌─→ 流程 A(专门处理 A 类问题)
输入 → 分类器 → ────┼─→ 流程 B(专门处理 B 类问题)
└─→ 流程 C(专门处理 C 类问题)
适用场景:
- 存在明显不同的输入类别
- 不同类别需要不同的处理策略
实践案例:
- 客服系统:一般问题、退款请求、技术支持分别路由
- 成本优化:简单问题路由到 Haiku,复杂问题路由到 Sonnet
2025 年更新:随着模型成本下降,路由更多用于质量优化,而不是省钱。
我的思考:路由的本质是关注点分离。一个 Prompt 处理所有场景往往顾此失彼,不如让每个专家各司其职。
3. 并行化(Parallelization)
核心思想:同时处理多个任务,聚合输出结果。
两种关键形式:
分段(Sectioning):
任务 → 分解为子任务 A、B、C → 并行执行 → 聚合结果
投票(Voting):
任务 → 多个模型实例并行处理 → 投票/综合 → 最终结果
适用场景:
- 子任务相互独立,可并行执行
- 需要多视角验证,提高置信度
实践案例:
- 内容审核:一个模型处理用户请求,另一个并行筛选敏感内容
- 代码审查:多个提示从不同角度检查漏洞
我的思考:并行化是用空间换时间。在延迟敏感的场景中,这是提升用户体验的有效手段。
4. 协调器 - 工作者(Orchestrator-Workers)
核心思想:中央 LLM 动态分解任务,分配给工作者 LLM,综合结果。
┌─→ Worker 1
输入 → Orchestrator ─┼─→ Worker 2 → 综合结果
└─→ Worker 3
与并行化的关键区别:子任务不是预定义的,而是由协调器根据具体输入动态确定。
适用场景:
- 无法预先预测子任务的情况
- 编程任务(文件数量、修改内容取决于具体问题)
实践案例:
- 代码重构:根据需求动态决定修改哪些文件
- 信息检索:从多个来源收集和分析信息
2025 年案例:Anthropic 在 SWE-bench 上的智能体就用了这个模式,可以根据 PR 描述自动处理 GitHub issue。
我的思考:这是最接近人类团队协作的模式。项目经理拆解任务,团队成员各司其职,最后汇总成果。
5. 评估器 - 优化器(Evaluator-Optimizer)
核心思想:一个 LLM 生成响应,另一个 LLM 提供评估和反馈,形成迭代循环。
┌──────────────────────────────┐
↓ │
输入 → 生成器 → 输出 → 评估器 → 反馈 ──┘
↓
满足标准 → 最终输出
适用场景:
- 有明确的评估标准
- 迭代改进能带来可衡量的价值
- LLM 能提供有价值的反馈
实践案例:
- 文学翻译:评估器捕捉细微差别,指导优化
- 复杂搜索:评估器判断是否需要继续搜索
我的思考:这类似于人类的"草稿 - 审阅 - 修改"循环。关键在于评估器的能力——它必须比生成器更"懂"什么是对的。
自主智能体(Agents)
当 LLM 具备以下能力时,真正的智能体成为可能:
- 理解复杂输入:解析模糊、多义的指令
- 推理和规划:分解目标,制定步骤
- 可靠使用工具:正确调用 API、执行操作
- 从错误中恢复:遇到问题能调整策略
智能体的核心循环:
while not task_complete:
observation = get_environment_feedback()
plan = llm.plan(current_state, observation)
action = execute(plan)
evaluate(action)
关键设计要点:
- 清晰的工具集设计和文档
- 适当的检查点和人工干预机制
- 停止条件(如最大迭代次数)
2025 年重大进展:
Claude Code:终端中的 AI 软件工程师
2025 年 Anthropic 推出 Claude Code,定位是"AI 软件工程师"。和 Cursor 这类 IDE 插件不同,它直接跑在命令行里:
# 配置并启动 Claude Code
export ANTHROPIC_BASE_URL=http://localhost:8000/v1
export ANTHROPIC_API_KEY=your_key
claude
核心能力:
- 直接操作文件系统和终端
- 执行代码并查看结果
- 自主调试和修复错误
- 多步骤任务规划
Agentic Coding:智能体编程时代
2026 年,苹果与 Anthropic 联合宣布,Xcode 26.3 首次原生集成 Claude Agent,支持以 Agentic Coding 方式开发。这标志着智能体正式进入主流开发工具。
三个核心原则
Anthropic 总结了构建智能体的三个核心原则,在 2025 年显得更加重要:
1. 保持简单
"成功的实现通常只是 LLM 在循环中基于环境反馈使用工具。"
不要过度设计。简单的架构更容易调试、更容易理解、更容易维护。
2025 年的教训:多智能体系统烧 Token 烧得厉害。不少团队发现,单个强智能体往往比一堆弱智能体协作更有效。
2. 优先透明度
让智能体的规划步骤清晰可见:
- 显示当前正在执行什么
- 解释为什么选择这个行动
- 展示中间结果
透明度建立信任,也便于调试。
3. 精心设计 ACI
Agent-Computer Interface(ACI) 与 HCI 同等重要:
- 工具定义要清晰,包含使用示例和边界情况
- 参数命名要直观,像给初级开发者写文档
- 防错设计(Poka-yoke),让错误难以发生
实战案例:Anthropic 发现模型在使用相对路径时会出错,改为强制要求绝对路径后,表现显著提升。
2025 年新洞察:
- Skills 的设计应遵循"渐进式披露"原则
- MCP Server 的文档质量直接影响智能体表现
- 工具命名应使用动词 + 名词结构(如
read_file而非file_reader)
两个高价值应用场景
客户支持
为什么客户支持是智能体的理想场景?
- 自然对话流程 + 需要外部信息和操作
- 可集成多种工具(查订单、退款、更新工单)
- 成功标准清晰(问题是否解决)
- 有公司已实现"按成功付费"的商业模式
2025 年进展:多家公司已经商业化落地,按解决效果付费逐渐成了通行模式。
编程智能体
为什么编程特别适合智能体?
- 代码可通过自动化测试验证
- 测试结果可作为反馈指导迭代
- 问题空间定义明确
- 输出质量可客观衡量
2025 年里程碑:
- Anthropic 的智能体可以独立解决 SWE-bench Verified 里的真实 GitHub issue
- 四名工程师 10 天搭出一个完整应用,大部分代码由 Claude Code 自己编写
- AI 编程从"代码补全"走到了"自主解决问题"
框架选择指南
主流框架对比
| 框架 | 类型 | 适用场景 |
|---|---|---|
| Claude Agent SDK | 官方 SDK | 生产级智能体,MCP 原生支持 |
| Strands Agents SDK | AWS 官方 | AWS 生态集成 |
| Rivet | GUI 拖拽 | 快速原型,非技术人员 |
| Vellum | GUI 工具 | 工作流构建和测试 |
Anthropic 的建议
文章对框架的态度很明确:
"框架简化了入门,但可能创建额外的抽象层,掩盖底层细节,使调试更困难。"
2025 年的行业共识:
- 先直接调 LLM API
- 理解底层原理之后再上框架
- 生产环境考虑降低抽象层级
值得注意的声音:LangChain 创始人判断,2026 年应该"放弃 workflow 编排工具",转向面向自主智能体的框架。
我的思考与总结
关于复杂性
文章反复强调一个观点:只有在简单方案不足时,才增加复杂性。
这条原则反直觉但很重要。做 AI 很容易陷入"技术炫技"——架构越复杂越好、框架越新越好。但工程上真正值钱的判断是:用最简单的方式把问题解决掉。
2025 年的验证:最早把简单智能体跑起来的公司,比等着"完美架构"的公司拿到了更多实际收益。
关于框架
2025 年的教训:
"框架是拐杖,不是双腿。"
这不是说不用框架,而是要搞清楚框架底层在做什么。很多问题的根源,恰恰是对底层机制的错误假设。
建议学习路径:
- 先用原生 API 实现一个简单智能体
- 理解工具调用、状态管理等核心概念
- 再选择适合的框架提升效率
关于未来
2026 年被视为"长任务 Agent 元年"。Anthropic 在文末提到:
"在 LLM 领域取得成功,不是要构建最复杂的系统,而是要构建适合您需求的系统。"
这句话说透了工程实践的本质:技术是手段不是目的,最好的架构是能解决当下问题、又能适应后续变化的架构。
2026 年趋势判断:
- 智能体从"玩具"变成"工具"
- 企业级部署成为主流
- 人机协作的模式逐渐成熟
实践建议
基于文章内容和 2025 年实践,我总结了以下建议:
- 从简单开始:先用单一 Prompt,评估后再考虑增加复杂性
- 理解底层:如果使用框架,务必理解其实现原理
- 投资 ACI:工具定义和文档是智能体成功的关键
- 设置检查点:在关键节点加入人工审核或自动验证
- 持续迭代:基于评估结果不断优化,而非一次性设计完美
- 拥抱 MCP:使用标准化协议连接工具
- 善用 Skills:积累可复用的能力模块
代码示例:Claude Agent SDK 快速开始
import { Agent } from '@anthropic/agent-sdk';
const agent = new Agent({
model: 'claude-sonnet-4-5-20250929',
tools: [
// 使用 MCP 连接的工具
new FileSystemTool(),
new BrowserTool(),
new ShellTool()
]
});
// 运行智能体
const result = await agent.run(
'帮我重构这个项目的认证模块,使用 JWT 替代 session'
);
console.log(result.output);
评论讨论