Agent 架构入门:从单轮对话到自主代理
Agent 架构入门:从单轮对话到自主代理
原文:Building effective agents | Anthropic Engineering Blog | 2024.12.19
导语
在过去的一年里,Anthropic 与数十个团队合作构建 LLM 智能体。他们发现,最成功的实现往往不是使用复杂的框架,而是使用简单、可组合的模式。
这篇文章是 Anthropic 官方发布的第一篇 Agent 系统化指南,也是整个系列的起点。它回答了一个最基本的问题:Agent 到底是什么,以及我们应该如何构建它?
一、核心概念:工作流 vs 智能体

Anthropic 将"智能体系统"分为两类架构:
| 类型 | 定义 | 适用场景 |
|---|---|---|
| 工作流(Workflow) | 通过预定义的代码路径编排 LLM 和工具 | 任务明确、需要一致性和可预测性 |
| 智能体(Agent) | LLM 动态指导自身的流程和工具使用 | 需要灵活性和模型驱动决策 |
关键洞察: 不要一上来就构建复杂的智能体。大多数应用只需要通过检索和上下文示例来优化单个 LLM 调用就足够了。智能体系统通常以延迟和成本为代价来换取更好的任务性能。
二、从简到繁:五种工作流模式
1. 提示链(Prompt Chaining)

将任务分解为一系列步骤,每个 LLM 调用处理上一步的输出。
适用场景: 任务可以分解为固定子任务,以延迟换取准确性。
典型案例: 生成营销文案 → 检查合规标准 → 翻译成多语言。
2. 路由(Routing)

对输入进行分类并引导至专门的后续任务。
适用场景: 复杂任务中有明显不同类别的输入。
典型案例: 客服查询分类——一般问题走 Haiku,复杂问题走 Sonnet。
3. 并行化(Parallelization)

LLM 同时处理任务并聚合结果,包括"分段"和"投票"两种模式。
适用场景: 需要速度或多重视角以提高置信度。
典型案例: 并行进行内容审核与响应;多个模型并行审查代码漏洞。
4. 编排器-工作流(Orchestrator-Workers)

中央 LLM 动态分解任务、委派给工作流 LLM 并综合结果。
适用场景: 复杂任务且无法预测所需子任务。
典型案例: 涉及多文件更改的编码任务。
5. 评估器-优化器(Evaluator-Optimizer)

一个 LLM 生成响应,另一个在循环中提供评估和反馈。
适用场景: 有明确的评估标准,迭代改进能带来可衡量价值。
典型案例: 文学翻译;需要多轮搜索的复杂搜索任务。
三、真正的智能体模式
当上面的工作流模式都无法满足需求时,才需要使用真正的智能体模式:

核心特征: LLM 根据环境反馈循环使用工具。从人类指令开始,独立计划和操作,并在检查点或遇到阻碍时暂停寻求反馈。
适用场景: 开放性问题,步骤数量不可预测,且无法硬编码固定路径。
典型案例: 解决 SWE-bench 任务的编码智能体;使用计算机完成任务的 Computer Use。
四、工具工程:被低估的关键
Anthropic 提出了一个重要概念——ACI(Agent-Computer Interface),类比 HCI(人机交互),强调智能体与工具之间的接口设计同样重要。
工具设计的核心原则:
- 定义清晰:工具描述应准确无误,包含使用示例和边界情况
- 减少格式开销:避免让模型在 JSON 中处理大量转义字符
- 使用绝对路径:而非相对路径,以减少定位错误
- 测试驱动:像测试代码一样测试你的工具描述
五、两大高价值应用
客户支持
结合对话与行动的典型场景。Agent 需要遵循策略、查询数据库、执行退款等操作,同时保持对话的自然流畅。
编码智能体

输出可验证(代码能不能跑),问题空间结构化。这使得编码成为 Agent 最早取得突破的领域之一。
六、总结:三条核心原则
- 保持简洁:在设计中维持简单性,不要为了"智能"而增加不必要的复杂性
- 优先透明:明确显示智能体的规划步骤,让用户和开发者都能理解决策过程
- 精心设计接口:通过彻底的工具文档和测试来优化 ACI
读后感
这篇文章最打动我的一句话是:
"最成功的实现往往不是使用复杂的框架,而是使用简单、可组合的模式。"
在 Agent 领域,少即是多。与其急着引入复杂的多 Agent 编排框架,不如先把单个工具调用做到极致。
本文是 Anthropic AI Agent 系列 第 1 篇,共 15 篇。下一篇:用 Agent SDK 构建你的第一个 Agent
关注公众号 coft 获取系列更新。

浙公网安备 33010602011771号