多智能体系统架构设计 - Anthropic实践
本文档详细介绍了 Anthropic 在构建多智能体研究系统过程中的架构设计、实施经验和最佳实践。
系统概述
Claude 现在具有研究能力,可以跨网络、Google Workspace 和任何集成进行搜索以完成复杂任务。这个多智能体系统从原型到生产的过程教会了 Anthropic 团队关于系统架构、工具设计和提示工程的关键经验。
什么是多智能体系统
多智能体系统由多个智能体(在循环中自主使用工具的 LLM)协同工作组成。Anthropic 的研究功能包括:
- 一个基于用户查询规划研究过程的智能体
- 使用工具创建并行智能体同时搜索信息
- 引入了智能体协调、评估和可靠性的新挑战
多智能体系统的优势
1. 处理开放式问题
研究工作涉及开放式问题,很难提前预测所需步骤。不能为探索复杂主题硬编码固定路径,因为过程本质上是动态的和路径依赖的。
2. 压缩和并行处理
搜索的本质是压缩:从庞大的语料库中提炼见解。子智能体通过以下方式促进压缩:
- 在自己的上下文窗口中并行操作
- 同时探索问题的不同方面
- 在为主导研究智能体压缩最重要的令牌之前进行探索
3. 扩展性能
一旦智能达到阈值,多智能体系统就成为扩展性能的重要方式。即使是通用智能的智能体在单独操作时也面临限制;智能体组可以完成更多任务。
4. 性能数据
- 多智能体系统在内部研究评估中比单智能体 Claude Opus 4 性能提升 90.2%
- 对于广度优先查询特别出色,涉及同时追求多个独立方向
- 令牌使用量解释了 BrowseComp 评估中 80% 的性能差异
架构设计
编排者-工作者模式
研究系统使用多智能体架构,其中主导智能体协调过程,同时委派给并行操作的专门子智能体。
用户查询
↓
主导智能体 (Lead Agent)
├── 分析查询
├── 制定策略
└── 生成子智能体
├── 子智能体1 → 搜索工具 → 结果
├── 子智能体2 → 搜索工具 → 结果
└── 子智能体3 → 搜索工具 → 结果
↓
结果综合
↓
引用智能体 (Citation Agent)
↓
最终报告
工作流程
- 用户提交查询
- 主导智能体分析查询,制定策略
- 生成子智能体同时探索不同方面
- 子智能体作为智能过滤器,迭代使用搜索工具收集信息
- 返回结果给主导智能体进行编译
- 系统决定是否需要更多研究
- 最终结果传递给引用智能体进行来源归属
与传统 RAG 的区别
传统 RAG 使用静态检索,而这个架构使用多步搜索:
- 动态查找相关信息
- 适应新发现
- 分析结果以制定高质量答案
提示工程原则
1. 像智能体一样思考
- 使用 Console 构建模拟,观察智能体逐步工作
- 立即发现失败模式
- 开发准确的智能体心理模型
2. 教会编排者如何委派
每个子智能体需要:
- 明确的目标
- 输出格式
- 工具和来源使用指导
- 清晰的任务边界
3. 根据查询复杂度调整努力
嵌入的扩展规则:
- 简单事实查找:1 个智能体,3-10 次工具调用
- 直接比较:2-4 个子智能体,每个 10-15 次调用
- 复杂研究:10+ 个子智能体,明确划分职责
4. 工具设计和选择至关重要
- 智能体-工具接口与人机接口同样重要
- 每个工具需要独特的目的和清晰的描述
- 提供明确的启发式方法
5. 让智能体自我改进
- Claude 4 模型可以成为出色的提示工程师
- 创建工具测试智能体来改进工具描述
- 结果:未来智能体的任务完成时间减少 40%
6. 先宽后窄的搜索策略
- 模仿专家人类研究:在深入具体内容之前探索全貌
- 从简短、宽泛的查询开始
- 逐步缩小焦点
7. 引导思考过程
- 扩展思考模式作为可控的草稿本
- 主导智能体使用思考来规划方法
- 子智能体使用交错思考来评估质量和识别差距
8. 并行工具调用
两种并行化:
- 主导智能体并行创建 3-5 个子智能体
- 子智能体并行使用 3+ 个工具
- 结果:复杂查询的研究时间减少高达 90%
评估方法
挑战
多智能体系统评估的独特挑战:
- 智能体可能采取完全不同的有效路径达到目标
- 无法预先规定”正确”步骤
- 需要灵活的评估方法
评估策略
1. 立即开始小样本评估
- 早期变化往往产生巨大影响(30% → 80% 成功率)
- 从约 20 个代表真实使用模式的查询开始
- 不要因为认为只有大型评估有用而延迟
2. LLM 作为评判者
评估标准:
- 事实准确性
- 引用准确性
- 完整性
- 来源质量
- 工具效率
3. 人工评估
发现的问题:
- 不寻常查询的幻觉答案
- 系统故障
- 微妙的来源选择偏差
生产可靠性挑战
1. 状态性和错误复合
- 智能体可以长时间运行,跨多次工具调用维护状态
- 需要持久执行代码并处理错误
- 构建可以从错误发生位置恢复的系统
2. 调试需要新方法
- 智能体做出动态决策,运行之间不确定
- 添加完整的生产追踪
- 监控智能体决策模式和交互结构
3. 部署需要谨慎协调
- 使用彩虹部署避免中断运行中的智能体
- 逐步将流量从旧版本转移到新版本
4. 同步执行创建瓶颈
当前限制:
- 主导智能体同步执行子智能体
- 简化协调但创建信息流瓶颈
- 未来:异步执行将启用额外的并行性
令牌使用情况
- 智能体通常使用约 4 倍于聊天交互的令牌
- 多智能体系统使用约 15 倍于聊天的令牌
- 需要高价值任务来证明增加的性能成本
适用场景
多智能体系统在以下情况下表现出色:
- 涉及大量并行化的有价值任务
- 超出单个上下文窗口的信息
- 与众多复杂工具接口
实际应用案例
用户报告 Claude 帮助他们:
- 发现未考虑的商业机会
- 导航复杂的医疗保健选项
- 解决棘手的技术错误
- 通过发现他们自己找不到的研究联系节省数天的工作
附录:其他技巧
1. 端态评估
- 专注于端态评估而非逐步分析
- 评估是否实现了正确的最终状态
- 承认智能体可能找到替代路径
2. 长期对话管理
- 实施智能体总结已完成工作阶段的模式
- 在外部内存中存储必要信息
- 在接近上下文限制时生成具有干净上下文的新子智能体
3. 子智能体直接输出到文件系统
- 某些结果类型可以绕过主协调器
- 实施工件系统,专门智能体可以创建独立持久的输出
- 防止多阶段处理期间的信息丢失
关键洞察
尽管存在挑战,多智能体系统已被证明对开放式研究任务很有价值。通过仔细的工程、全面的测试、注重细节的提示和工具设计、稳健的操作实践,以及研究、产品和工程团队之间的紧密协作,多智能体研究系统可以可靠地大规模运行。