Building effective agents
编译摘要
1. 浓缩
- 核心结论1: Anthropic 的核心建议是先用最简单的方案,只有在能证明效果提升时才增加 agentic complexity。
- 关键证据: 官方文章强调,许多应用只需要单次 LLM call、retrieval 和 in-context examples;agentic systems 会用更高 latency 和成本换取更好任务表现,必须判断 tradeoff 是否值得。
- 对本库的意义: 这篇文章是 Building-Effective-Agents 与 Agent-Workflow-Patterns 的基础来源,提供“从 augmented LLM 到 workflows 再到 agents”的复杂度阶梯。
- 核心结论2: Anthropic 把 agentic systems 分成 workflows 和 agents:前者走预定义路径,后者由 LLM 动态决定过程和工具使用。
- 关键证据: 官方定义中,workflows 是 LLM 与工具由预定义代码路径编排;agents 是 LLM 自己动态指挥流程、选择工具并保持对完成方式的控制。
- 关键模式: 文章列出 prompt chaining、routing、parallelization、orchestrator-workers、evaluator-optimizer 五类 workflow,再讨论更开放的 autonomous agents。
- 核心结论3: Agent 的可靠性来自清晰工具、环境反馈、评测和人类检查点,而不是更复杂的框架。
- 关键证据: Anthropic 建议框架可帮助起步,但会制造抽象层、遮蔽 prompt 与 response、诱导过度复杂;生产中应理解底层代码。工具定义要像 prompt 一样被工程化,ACI 需要示例、边界、参数命名、错误预防和测试。
- 关键细节: 在 SWE-bench agent 中,Anthropic 花在工具优化上的时间超过整体 prompt,例如把相对路径参数改成绝对路径以减少模型误用。
2. 质疑
- 关于“简单优先”的质疑: 简单是很好的默认策略,但不能被误读为“永远不用框架”。当团队需要审计、权限、回放、成本追踪、协作和可观测性时,框架或 harness 会成为必要基础设施。
- 关于 workflows vs agents 的质疑: 二分有助于入门,但真实系统常混合使用:主流程可预测,局部步骤由 agent 动态决策;这需要更细的风险分层。
- 关于官方案例的质疑: Anthropic 提到 customer support 和 coding agents 特别适合,因为有行动、反馈、清晰成功标准和人类监督;这不意味着所有企业流程都适合 autonomous agents。
- 关于 ACI 的质疑: 工具定义优化容易被低估,但它需要大量具体任务样本。没有真实 eval set 和失败回放,工具文档很难只靠直觉设计好。
3. 对标
关联概念