


多智能体系统与单智能体系统有关键区别,包括协调复杂性的快速增长。早期的智能体会出现错误,例如为简单查询生成 50 个子智能体,在网络上无休止地搜索不存在的来源,或者通过过多的更新相互干扰。由于每个智能体都由Prompt引导,因此提示工程是改进这些行为的主要手段:
-
像你的智能体一样思考。 要迭代提示,你必须理解它们的效果。使用系统中的确切提示和工具,然后逐步观察智能体的工作。这立即揭示了失败模式:智能体在已经获得足够结果时继续运行,使用过于冗长的搜索查询,或者选择错误的工具。有效的提示依赖于开发智能体的准确心理模型,这可以使最具影响力的更改变得显而易见。
-
教协调者如何委派任务。 首席智能体将查询分解为子任务,并向子智能体描述这些任务。每个子智能体需要一个目标、输出格式、关于要使用的工具和来源的指导以及清晰的任务边界。如果没有详细的任务描述,智能体会重复工作、留下空白,或者找不到必要的信息。最初允许首席智能体给出简单、简短的指令,如“研究半导体短缺”,但发现这些指令往往过于模糊,导致子智能体误解任务或者与其他智能体进行完全相同的搜索。
-
根据查询复杂性调整工作量。 智能体难以判断不同任务的适当工作量,因此在Prompt中嵌入了调整规则。简单的事实查找只需要 1 个智能体进行 3-10 次工具调用,直接比较可能需要 2-4 个子智能体,每次调用 10-15 次,而复杂的研究可能需要超过 10 个子智能体,并且每个子智能体都有明确的职责划分。这些明确的指导方针有助于首席智能体高效分配资源,并防止在简单查询上过度投入,。
-
工具设计和选择至关重要。 智能体与工具的接口和人机界面一样重要。使用正确的工具是高效的——很多时候,这是绝对必要的。为智能体提供了明确的启发式规则:例如,先检查所有可用的工具,将工具的使用与用户意图相匹配,通过网络搜索进行广泛的外部探索,或者优先选择专业工具而不是通用工具。糟糕的工具描述可能会让智能体走上完全错误的道路,因此每个工具都需要有明确的目的和清晰的描述。
-
让智能体自我改进。 Claude 4 模型可以成为出色的提示工程师。当给定一个提示和一个失败模式时,它们能够诊断智能体失败的原因并提出改进建议。甚至创建了一个工具测试智能体——当给定一个有缺陷的 MCP 工具时,它会尝试使用该工具,然后重写工具描述以避免失败。通过多次测试工具,这个智能体能够发现关键的细微差别和漏洞。这种改进工具易用性的过程使后续使用新描述的智能体的任务完成时间减少了 40%,因为它们能够避免大多数错误。
-
先广泛探索,然后逐步缩小范围。 搜索策略应该像专家人类研究一样:先探索整体情况,然后再深入具体细节。通过提示智能体先从简短且广泛的查询开始,评估可用信息,然后逐步缩小关注范围,从而抵消了这种倾向。
-
引导思考过程。 扩展思考模式(导致 Claude 以可见的思考过程输出额外Token)可以作为一种可控的草稿。首席智能体使用思考来规划其方法,评估哪些工具适合任务,确定查询的复杂性和子智能体的数量,并定义每个子智能体的角色。
-
并行工具调用改变了速度和性能。 复杂的研究任务自然涉及探索许多来源。为了提高速度,引入了两种并行化:(1)首席智能体同时启动 3-5 个子智能体,而不是依次启动;(2)子智能体同时使用 3 个或更多的工具。这些改变将复杂查询的研究时间缩短了高达 90%,使研究能够在几分钟内完成更多工作,而不是像其他系统那样需要数小时,同时覆盖了更多的信息。
https://www.anthropic.com/engineering/built-multi-agent-research-system
https://cognition.ai/blog/dont-build-multi-agents
(文:PaperAgent)