精读 Anthropic《Building Effective Agents》2025 更新版

约 2876 字 约 10 分钟阅读

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 具备以下能力时,真正的智能体成为可能:

  1. 理解复杂输入:解析模糊、多义的指令
  2. 推理和规划:分解目标,制定步骤
  3. 可靠使用工具:正确调用 API、执行操作
  4. 从错误中恢复:遇到问题能调整策略

智能体的核心循环

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 年的行业共识

  1. 先直接调 LLM API
  2. 理解底层原理之后再上框架
  3. 生产环境考虑降低抽象层级

值得注意的声音:LangChain 创始人判断,2026 年应该"放弃 workflow 编排工具",转向面向自主智能体的框架。


我的思考与总结

关于复杂性

文章反复强调一个观点:只有在简单方案不足时,才增加复杂性

这条原则反直觉但很重要。做 AI 很容易陷入"技术炫技"——架构越复杂越好、框架越新越好。但工程上真正值钱的判断是:用最简单的方式把问题解决掉

2025 年的验证:最早把简单智能体跑起来的公司,比等着"完美架构"的公司拿到了更多实际收益。

关于框架

2025 年的教训:

"框架是拐杖,不是双腿。"

这不是说不用框架,而是要搞清楚框架底层在做什么。很多问题的根源,恰恰是对底层机制的错误假设。

建议学习路径

  1. 先用原生 API 实现一个简单智能体
  2. 理解工具调用、状态管理等核心概念
  3. 再选择适合的框架提升效率

关于未来

2026 年被视为"长任务 Agent 元年"。Anthropic 在文末提到:

"在 LLM 领域取得成功,不是要构建最复杂的系统,而是要构建适合您需求的系统。"

这句话说透了工程实践的本质:技术是手段不是目的,最好的架构是能解决当下问题、又能适应后续变化的架构。

2026 年趋势判断

  • 智能体从"玩具"变成"工具"
  • 企业级部署成为主流
  • 人机协作的模式逐渐成熟

实践建议

基于文章内容和 2025 年实践,我总结了以下建议:

  1. 从简单开始:先用单一 Prompt,评估后再考虑增加复杂性
  2. 理解底层:如果使用框架,务必理解其实现原理
  3. 投资 ACI:工具定义和文档是智能体成功的关键
  4. 设置检查点:在关键节点加入人工审核或自动验证
  5. 持续迭代:基于评估结果不断优化,而非一次性设计完美
  6. 拥抱 MCP:使用标准化协议连接工具
  7. 善用 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);

参考资料

aiagentanthropic精读

评论讨论