Geek Savvy

深度剖析 Anthropic 多智能体系统,Agent 开发与研究的实战指南!

Image

上周,Anthropic官方博客文章《我们如何构建多智能体研究系统》 中讲到 Anthropic的多智能体研究系统架构、益处、挑战、工程经验和评估方法。

这篇文章对于在开发 Agent 以及研究多智能体系统的开发者和创业者有很好的指导意义,能够帮助大家更多的理解 Agent,本文讲原文重点内容提炼出来,希望对大家有帮助。

Image

Anthropic的“研究”功能是一个创新的多智能体系统,旨在通过多个人工智能代理(LLMs)的协同工作,更有效地探索复杂问题。该系统从原型到生产的历程揭示了系统架构、工具设计和提示工程的关键经验。

多智能体系统在处理开放式、动态且需要并行探索的问题上展现出卓越的性能,尤其是在需要大量token消耗以解决复杂任务的场景。然而,这也带来了协调复杂性、高token成本和独特的工程挑战。

本文将提取出原文的重点内容,包括多智能体系统、架构、提示工程等。

原文地址:

https://www.anthropic.com/engineering/built-multi-agent-research-system

01 多智能体系统的优点

1. 处理开放式和动态问题: 研究工作本质上难以预测步骤,需要根据发现不断调整方法。“这种不可预测性使得AI智能体特别适合研究任务。”

2. 压缩和并行化: 子智能体通过并行操作和独立的上下文窗口,同时探索问题的不同方面,然后将最重要的信息提炼给主研究智能体。每个子智能体提供“职责分离——独特的工具、提示和探索轨迹——这减少了路径依赖,并实现了彻底、独立的调查。”

3. 规模化性能: 当智能达到一定阈值时,多智能体系统成为扩展性能的重要方式。“即使是通用智能代理在作为个体操作时也面临限制;代理群体可以完成更多任务。”

4. 性能提升: 内部评估显示,以Claude Opus 4为主智能体,Claude Sonnet 4为子智能体的多智能体系统,在内部研究评估中比单一智能体Claude Opus 4的性能提高了90.2%。

5. Token使用效率: 多智能体系统主要通过“消耗足够的tokens来解决问题”来工作。分析表明,token使用本身解释了80%的性能差异。多智能体架构“有效地扩展了超出单个代理限制的任务的token使用”。

Image

6. 适用于高价值、重并行化任务: 最适合多智能体系统的任务是“涉及大量并行化、超出单个上下文窗口的信息以及与众多复杂工具接口的高价值任务。”

02 多智能体系统的局限

1. 高Token消耗: “这些架构在实践中会快速消耗token。”代理通常比聊天互动多用约4倍的token,而多智能体系统则多用约15倍。经济可行性要求任务的价值足够高以支付增加的性能成本。

2. 协调复杂性: 多智能体系统引入了新的挑战,包括“代理协调、评估和可靠性”以及“协调复杂性快速增长”。早期的代理容易出现错误,例如为简单查询生成50个子代理,或无休止地搜索不存在的资源。

3. 不适合强依赖任务: 当前,多智能体系统不适合所有代理需要共享相同上下文或涉及许多代理之间依赖的任务。例如,编码任务通常并行性较低,且LLM代理在实时协调和委托方面尚不擅长。

4. 调试困难: 代理的动态决策和运行间非确定性使得调试更加困难。

5. 同步执行瓶颈: 当前主代理同步执行子代理,等待每个子代理集完成。这简化了协调,但在信息流中造成了瓶颈,限制了并行性和即时干预。

03 相关架构

Image

1. 协调者-工作者模式: 研究系统采用“协调者-工作者模式”的多智能体架构,其中一个主代理协调过程,同时委托给专门的并行子代理。

2. 动态多步搜索: 与传统的RAG(Retrieval Augmented Generation)静态检索不同,Anthropic的架构采用“多步搜索,动态地查找相关信息,适应新发现,并分析结果以形成高质量答案。”

完整工作流程:

  1. 用户提交查询,系统创建LeadResearcher(主研究代理)。

  2. LeadResearcher思考方法,并将计划保存到Memory以持久化上下文。

  3. 创建专门的Subagents(子代理)执行特定研究任务。

  4. 每个Subagent独立执行网络搜索,使用交错思考评估工具结果,并将发现返回给LeadResearcher。

  5. LeadResearcher综合结果,并决定是否需要更多研究。

  6. 收集足够信息后,系统退出研究循环,将所有发现传递给CitationAgent(引用代理)。

  7. CitationAgent处理文档和研究报告以识别引用位置,确保所有声明都正确归因。

  8. 最终研究结果(带引用)返回给用户。

04 提示工程

提示工程是改善代理行为的主要手段。

1. 像代理一样思考: 理解提示的效果,通过模拟观察代理的逐步工作,立即发现失败模式。

2. 教协调者如何委托: 主代理需要将查询分解为子任务,并向子代理提供“目标、输出格式、工具和来源指导以及明确的任务边界。”缺乏详细的任务描述会导致工作重复或遗漏信息。

3. 根据查询复杂性调整努力: 在提示中嵌入缩放规则,例如简单事实查询只需1个代理3-10次工具调用,复杂研究可能需要10个以上子代理。

4. 工具设计和选择至关重要: 代理-工具接口与人机接口同样重要。“糟糕的工具描述会将代理引向完全错误的路径,因此每个工具都需要有明确的目的和清晰的描述。”

5. 让代理自我改进: Claude 4模型可以成为优秀的提示工程师,能够诊断代理失败的原因并提出改进建议。一个工具测试代理甚至能通过测试和重写工具描述来避免未来的错误,将任务完成时间减少了40%。

6. 先广后窄: 搜索策略应模仿人类专家研究:“先探索全貌,再深入细节。”引导代理从短而宽泛的查询开始,评估可用信息,然后逐步缩小焦点。

7. 引导思考过程: 扩展思考模式作为可控的草稿本,帮助主代理规划方法,子代理评估结果和完善查询。“我们的测试表明,扩展思考改善了指令遵循、推理和效率。”

8. 并行工具调用提升速度和性能: 引入两种并行化

  1. 主代理并行启动3-5个子代理;

  2. 子代理并行使用3+工具。这些改变将复杂查询的研究时间缩短了高达90%。

9. 启发式而非刚性规则: 提示策略侧重于灌输良好的启发式方法,而非严格规则,模仿人类研究专家的策略,并设置明确的防护措施以防止代理失控。

05 有效的智能体评估

评估多智能体系统面临独特挑战,因为代理可能通过不同但有效路径达到目标。

1. 立即开始小样本评估: 早期开发阶段,即使是少量测试用例(如20个代表真实使用模式的查询)也能清晰显示变更的影响。

2. LLM-as-judge: 对于自由格式的文本研究输出,LLM是评估的自然选择。LLM根据事实准确性、引用准确性、完整性、来源质量和工具效率等标准进行评分。一个单一的LLM调用,输出0.0-1.0的分数和通过/失败等级,被认为最一致且与人类判断一致。

3. 人类评估弥补自动化不足: 人类测试者能够发现自动化评估遗漏的边缘案例,包括幻觉答案、系统故障或微妙的来源选择偏见。例如,早期代理偏爱SEO优化内容农场而非权威来源,通过人工反馈得以解决。

4. 紧急行为(emergent behaviors ): 多智能体系统具有“紧急行为”,成功依赖于理解交互模式,而非仅仅个体代理行为。最好的提示是“协作框架”,定义分工、解决问题的方法和努力预算。

5. 注重最终状态评估: 对于修改持久状态的代理,应关注“最终状态评估”,而非逐轮分析,以确认代理是否达到正确的最终状态。

6. 分阶段检查点: 对于复杂工作流,将评估分解为离散的检查点,以验证特定状态变化。

06 生产可靠性与工程挑战

1. 代理是有状态的,错误会累积: 代理长时间运行并保持状态,这使得系统需要耐久执行代码并处理错误。系统需要能够从错误发生的地方恢复,而非重新开始。结合AI代理的适应性与确定性保障(如重试逻辑和定期检查点)。

2. 调试需要新方法: 代理的动态决策和非确定性使得调试更加困难。完整的生产跟踪和监控代理决策模式及交互结构有助于诊断根本原因。

3. 部署需要仔细协调: 代理系统是高度有状态的提示、工具和执行逻辑的网络。采用“彩虹部署”策略,逐渐将流量从旧版本转移到新版本,同时保持两者同时运行,以避免中断正在运行的代理。

4. 异步执行的潜力: 尽管当前同步执行简化了协调,但异步执行将实现更多并行化,允许代理并发工作和按需创建新子代理。未来性能的提升将证明其复杂性是值得的。

另外,长周期对话管理以及子代理系统直接输出到文件系统的管理耶十分重要。

1. 长周期会话管理: 代理通过总结完成的工作阶段并将关键信息存储在外部内存中来处理长会话。当上下文限制接近时,可以生成具有干净上下文的新子代理,并通过精心交接保持连续性。

2. 子代理直接输出到文件系统: 允许子代理直接将某些类型的结果输出到外部系统(如文件系统),而非总是通过主协调器。这提高了保真度和性能,减少了“电话游戏”式的信息丢失,并降低了复制大型输出的token消耗。特别适用于结构化输出,如代码、报告或数据可视化。

Last but not least

构建 AI Agent ,“最后100米往往是旅程的大部分。”

尽管多智能体系统带来了独特的工程挑战(如复合错误、状态管理和非确定性),但它们已被证明对开放式研究任务具有巨大价值。

通过“仔细的工程、全面的测试、注重细节的提示和工具设计、强大的操作实践以及研究、产品和工程团队之间紧密的协作”,多智能体研究系统能够可靠地大规模运行。

这些系统正在“改变人们解决复杂问题的方式”。