Claude Platform 智能体构建指南:何时将子智能体并入主循环
Building agents: When to fold subagents into your main agent loop
Anthropic 讲解何时将 Claude Platform 的子智能体并入主循环,用按需加载的技能和工具替代部分路由、规划与领域分工。在多个企业部署的比较中,配备技能的单智能体经常取得更好的质量,且每项任务的成本和延迟往往更低;上下文膨胀导致性能下降、需要独立上下文并行处理任务,或工具选择困难及指令冲突时,仍适合保留子智能体。
以端到端评测为基线逐个合并子智能体,并检查具体任务的成败变化,为团队简化架构提供了可迁移的渐进方法。
如果你在 Claude Platform 中构建的智能体包含多个子智能体,可以使用我们的迁移工具包,了解哪些子智能体适合并入主智能体循环。它会通过引导式工作流程帮助你识别现有模式、评估替代方案,并验证最佳做法。工具包还包含一个演示,你可以先在模拟系统上试用,再应用到自己的智能体上。
子智能体——拥有各自上下文窗口、工具和指令,并由协调器编排的智能体——是智能体设计的核心组成部分。它们在验证、并行工作和模块化权限管理方面很有效。我们使用 Claude Platform 构建的许多智能体都包含子智能体,例如我们的多智能体研究系统。
不过,近期应用 AI 团队发现,在一些企业智能体部署中,将路由器、规划器和领域子智能体并入主智能体循环能带来更好的效果。在我们对多个企业部署方案进行的比较中,使用技能的单智能体在质量上往往胜过“一个提示词包办一切”的设计和子智能体设计,而且每项任务的成本和延迟通常也更低。
例如,一家公司发现,面向客户的智能体中有十几个专用子智能体,导致难以始终保持符合品牌调性的体验,而且增加的延迟损害了用户体验。
我们也经常看到一些拟议中的智能体设计沿袭了熟悉的演进路径:意图分类器、固定的多步推理流水线、用户分群、独立的推荐分支,以及置于其上的多智能体编排器。
在这些情况下,我们经常收到这样的反馈:其中大部分结构所承担的工作,模型已经不再需要;一个清晰的系统提示词、4-5 个轻量级数据工具,以及严格的输出约束,就足以覆盖大多数使用场景。

需要说明的是,子智能体仍有其用武之地,包括处于研究前沿的场景。以下情况适合使用子智能体:
- 单个智能体循环因上下文膨胀而出现可衡量的性能下降;或者
- 多个任务需要并行处理,并使用任务完成后即可丢弃的新上下文窗口;或者
- 单个智能体难以选择合适的工具,或系统提示词中存在相互冲突的指令。
但我们经常看到企业为每个团队或问题类型都配备一个子智能体,最终智能体架构变成了组织架构图的翻版(康威定律正在发挥作用)。
本文将介绍何时可以考虑将子智能体并入主智能体循环,并分享我们在大型组织中构建智能体时总结的最佳实践。
大型组织构建智能体时容易出现的问题
公司通常希望构建一个智能体,将多种产品和能力整合到单一的客户界面中。
通常,每项能力由不同团队负责,因此公司会先让各团队分别构建自己的智能体,再由中央平台团队在其上构建编排器。这种做法可以采用多种架构,包括编排器—子智能体架构,或将特定智能体作为 MCP 工具提供给单个智能体调用。
这看起来像是最简单的解决方案,但会立即带来以下复杂问题:
- 上下文管理:你需要决定智能体之间交换哪些上下文,而且在来回传递过程中往往会丢失细节。
- 子智能体泛滥:每个团队都推出自己的子智能体,最终公司会有数百个功能重叠的子智能体,却没有统一强制执行的标准,也没有明确的负责人。
- Frankenprompt(弗兰肯提示词):每个团队都往系统提示词里加一句话,结果规则相互冲突,语气也不统一。
- 未经审核、过度本地化的评估:每个人都添加只针对自己子任务、优化过度的评估。没有人负责维护整套评估,而领导层依据被弱化、过度本地化的分数做决策。
- 延迟:多智能体架构的复杂性会增加延迟。一位客户将其多智能体工具框架与单智能体循环进行评估后发现,后者的运行速度大约快 2 倍。
使用具有渐进式信息披露的智能体循环
上文所述的协调器—子智能体设计,是协调跨团队构建的专业智能体的一种合理方法,但通常更有效的做法是通过技能渐进式披露上下文,以及通过工具搜索渐进式披露工具。换句话说,智能体会看到技能和工具的简短描述,只有在需要时才会完整加载。
这种方法有三个理由:
- 共享上下文能带来更好的回答:对于运行时间较长的智能体,我们希望将多个不同任务的上下文保留在主上下文窗口中。看过每个先前步骤结果的智能体可以将它们联系起来,从而产生比子智能体交回一组摘要更丰富的输出和更深入的见解。这也意味着更少的上下文窗口和更少有损的信息交接。
- 渐进式信息披露可以避免上下文膨胀:这项技术 让团队能够构建可完成各种任务的单一智能体,而无需立即将所有上下文都加载到一条冗长的系统提示词中。这消除了团队此前将工作拆分给子智能体的主要原因。事实上,我们将 Claude Code 面向更先进模型的系统提示词缩短了 80% 以上,其中包括通过渐进式披露技能和工具来精简内容。
- 模型的能力更强了:从 Opus 4.5 开始,模型的能力提升到可以在单个循环中管理远超大多数团队预期的工作量。你无法关闭 Opus 5.5 和 Fable 5.1 的思考功能,而近期的模型也越来越会叙述进展并在过程中检查工作,这使得某些工具框架元素变得多余。每一代新模型都让你可以将更多决策从工具框架转移到模型本身。在迁移到下一代模型时,简单的循环也更容易适配;在我们协助客户进行的迁移中,僵化的多智能体结构往往阻碍了新模型承担更多工作。
单智能体循环设计需要严谨管理:精心维护系统提示词,确保技能和工具描述在恰当时机触发,并审慎处理上下文窗口、记忆和笔记。本文将在后续章节深入探讨迁移和设计方面的注意事项。
一个中央团队应负责端到端质量和系统提示词,并在每个新工具和评估发布前进行审核。保持这个中央团队精简,有助于加快迭代,并降低大型组织内的协调成本。
如果你选择多智能体方案,请从能够奏效的最简单模式开始(生成器-验证器、编排器-子智能体,或其他模式)。通过按上下文划分任务来有效划定边界:给每个子智能体分配一项几乎不依赖系统其他部分的工作,并让它交回简洁的结果(合适的任务包括相互独立的研究方向、接口清晰的不同组件,或黑盒验证)。如果按问题类型拆分智能体,它们就会陷入“传话游戏”,在每次交接中传递信息,导致信息保真度不断下降。

如何将子智能体纳入主智能体循环
许多团队已经在生产环境中使用编排器和一组专用智能体。以下是我们建议逐步实现的唯一循环设计:
- 一个模型和一个上下文窗口运行开放式工具循环,并由执行框架设置限制(轮次和成本预算、写入关卡)。
- 每一轮,模型会发出一批工具调用。执行框架并行运行这些调用,并将原始结果返回给同一个模型,由它决定下一步:再发起一批调用、向用户提问,或给出答案。
- 当模型给出答案或达到预算上限时,循环停止。回答之后还可以选择运行目标检查或验证器检查。
- 模型在第一轮将计划写入上下文,并随着结果到来不断修订计划。这是相较于编排器加专用智能体设置的主要变化:编写计划的模型也负责执行计划,因此它可以在一轮中途调整计划。
- Context still gets loaded, and is managed by the agent itself:
- 不再需要用代码根据规则目录重写计划,因为每一步都由模型决定。
- 执行顺序和领域流程转由技能负责。
- 硬性限制(验证、审批关卡)以及对话中途出现的其他需求(例如记忆检索)转由工具负责。
- 代码仍可用于加载成本低且几乎总是相关的内容(例如实体消歧步骤),也可用于处理工具内部的机械性环节(构造负载、解析流、恢复澄清流程),而这些工具由循环调用。
这种单循环设计也有助于实现许多团队正在努力达成的最终状态(一个理解用户高层目标并代为采取行动的智能体),因为它能将智能体学到的所有内容保存在同一个上下文中。
以下建议介绍团队如何分阶段从多智能体系统过渡到单智能体循环,以及多个团队如何在此过程中持续为该智能体做出贡献。
任务完成度评估
第一步是创建一套评估集,帮助你判断是否应将子智能体整合到主智能体循环中。我们发现行之有效的评估结构是:由中央团队维护一套共享的端到端评估集,同时由技能负责人团队在各自的技能中附带较小的评估集。即使只有 10 个黄金示例,也足以起步。
根据评分标准评判智能体的最终消息,是跟踪回答质量的良好起点。在仍使用编排器时,还应跟踪路由准确率(是否选对了子智能体?)。整合子智能体后,则应改为检查智能体是否加载了正确的技能或调用了正确的工具。逐步开展任务完成度评估很有帮助,因为在比较不同架构时,这一点最为重要。
在内部系统难以重放、用户参与度难以模拟的环境中,这可能会很复杂。我们在内部采用过一种有效方法:记录重要事件的时间戳,以便之后重放这些事件,运行针对性的评估。
逐步减少子智能体
向单一智能体循环演进,意味着将子智能体整合为工具和技能。这可以通过合并领域子智能体、将它们作为工具调用,或用技能和工具替代它们来实现。

合并领域智能体
在首次合并前,先构建一个小型端到端评估。然后按共享上下文逐步整合,优先从使用最多的子智能体开始。
合并专业智能体:如果它们会串联使用彼此的输出、处理相同的数据,或经常一起调用,就应考虑合并。例如,如果生产流量中有很大一部分会先调用一个专业智能体,再调用另一个,那么这两个智能体就紧密耦合,适合合并为一个领域智能体。
将子智能体作为工具调用
当符合上述三个条件之一且你决定保留子智能体时,让主智能体将子智能体作为工具调用,通常会很有效,这样主智能体就能继续与用户对话。
我们只建议在子智能体需要直接与用户交流时,采用完全移交的方式,让它接管对话。其他情况都可以通过技能和工具在主循环中处理。
这样,你就能为子智能体定义一个共享的响应架构,让主智能体根据真实数据验证结论,并精简最终综合步骤的输入。这是一个不错的第一步,因为你无需重写子智能体。它还能为任务完成评估提供一个基准,方便你在决定是否将任何子智能体整合进主智能体前进行比较。
不过,某些失效模式仍会存在:
- 每个专业智能体都有自己的提示词、上下文、负责团队和评估
- 每次调用仍会返回有损的摘要
- 每次调用都是一个嵌套的模型循环,会增加延迟
通过技能和工具将子智能体整合进主智能体
逐个将子智能体整合进主智能体:把每个子智能体的提示词转化为技能,把 API 调用转化为 MCP 工具。比较有无子智能体时的评估表现,然后决定哪些子智能体值得保留。
比较时,不要只看最终分数,还要检查哪些任务的结果发生了变化。我们在一个示例客服智能体上测试时,将一个子智能体整合进另一个后,虽然降低了延迟,却也破坏了一项原本通过评估的流程。主智能体拿到了订单查询工具,随后自行作答,没有询问负责配送的专业智能体预计送达日期。
每次更改前,确保评估中涵盖生产环境里每一条会一起运行的智能体调用链,以及智能体绝不能违反的每一条规则;并且每项任务都要运行不止一次,因为像这个例子中的问题,在两次运行中只出现了一次。
多个团队如何共同参与构建一个智能体
领域推理能力可以从知识库、技能和 MCP 工具中检索。各团队可以将职责重点从智能体转向技能和工具,同时由一个规模较小的中央团队负责系统提示词和端到端质量。这包括在新技能、工具和评估发布前对其进行审核。
MCP 工具
当智能体需要执行操作、从系统读取实时数据,或以固定格式返回结果时,工具是合适的选择。在迁移期间,你也可以通过工具继续调用子智能体。我们建议按用户意图对工具进行分组(而不是每个 API 对应一个工具),因为一旦系统提示词中的工具定义超过 30-50 个,工具选择的表现往往就会下降。
使用支持延迟加载的工具搜索,尽量减少硬性前置条件,并将必要的前置条件放到工具内部处理。例如,如果 Y 需要 X 的输出,Y 的工具就会检查该输出是否存在,并返回一条模型可以据此采取行动的指令。每个用户的权限也采用同样的处理方式。每个工具都会检查调用它的用户可以查看什么或执行什么操作,并返回模型能够读懂的明确拒绝信息,因此一个循环就能服务具有不同访问权限的用户,无需为每个权限级别单独设置智能体。
技能
当智能体需要了解团队的工作方式时,技能是合适的选择,例如原先保存在专业子智能体提示词中的步骤、规则,以及需要酌情判断的事项。
我们扩展技能库的方法,是将维护工作交还给编写技能的人。Claude 可以借助能够构建、测试和精简其他技能的技能,承担其中繁重的工作。
为防止技能泛滥,你可以让各团队的直接负责人(DRI)负责各自的技能,确保这些技能经过精心设计、彼此有别,并在发布时配备适当的评估。
- /skill-creator 可让你编写从一开始就结构规范的新技能,并审查现有技能,对其进行精简、去重和重构。
- /skill-doctor 可让你查看技能库中每项技能的成本及其实际使用频率,并删除冗余无用的技能。
知识库
对于智能体仅在部分时候需要的参考资料,知识库是合适的选择。事实和参考资料(政策、指标定义、产品规格)可以通过模型调用的搜索或查询工具访问,也可以作为技能内部的参考文件提供。避免让代码检索这些上下文并将其粘贴到提示词中。
加速这项工作的工具
我们最近发布了一组 Claude API 技能,可以帮助完成上述大部分工作。我们的迁移工具包将这些技能串联成一个引导式工作流,用于评估多智能体系统并将其迁移至单智能体循环。其中包含一个演示,你可以先试用,再将其用于实际系统:
- /claude-api build-eval: 可以帮助创建由中央团队负责的首套端到端评估集,或由各团队随技能一同发布的小型评估集
- /claude-api prompt-audit: 可以标记提示词、技能和工具描述中针对旧模型编写的指令,并以差异补丁的形式提出修改建议。你可以对系统提示词运行它,找出那些为早期模型添加、如今却让智能体变慢或不够灵活的规则。各团队的 DRI 也可以对各自的技能和工具描述运行它。
- /claude-api hillclimb: 可以根据现有评估迭代改进应用。它既可用于“整合与保留”的比较(将一个子智能体整合为技能加工具后,让它迭代改进技能和工具描述,看看整合后的版本能否达到或超越原子智能体的表现),也可用于改进系统提示词。
- /claude-api cost-optimize: 分析调用的去向,并针对提示缓存、精简不必要的输入和输出令牌、effort 设置以及模型选择等选项,逐次提出节省成本的建议。这有助于降低特定设计的成本和延迟。
随着模型不断发展,我们对如何最好地使用模型的理解以及最佳实践指南也在不断演进。因此,任何一种架构都不如其背后的原则重要:进行衡量,每次只改一项,并保留经得起检验的做法。
这就是其中一种情况。随着模型能力越来越强、代理运行时间越来越长,你可以把更多子代理改为技能和工具。不过,你不必一步到位。先构建一个小型端到端评估,逐个整合子代理;只有当整合后的版本评分更低时,才继续将其保留为子代理,然后重复这个过程。
来源:Claude Blog · claude.com