多 Agent 系统中,如何在效率与多样性之间找到平衡?

回复 Erfan 效率和多样性在同一个系统里是反着走的:效率要收敛、要少绕路、要一致的输出口径;多样性要发散、要保留分歧。所以不该找折中点,而应该分层决定“哪一步要多样性,哪一步要效率”。 具体做法有四条: 一是按阶段切,别全局调参。探索阶段要多样性:多个 agent 用不同 prompt、不同证据来源、不同工具,甚至故意给不同的先验假设,这时候分歧是资产。收敛阶段要效率:把候选压成一个,走单 agent 或者带严格 schema 的裁决步骤。很多系统做不好就是因为全程用同一个温度、同一个角色配置,探索时太同质,收敛时又太吵。 二是用异质性造多样性,别用随机性。温度调高只是噪声变大,不是视角变多。真正的多样性来自结构差异:上下文不同(一个只看代码 diff,一个只看测试失败日志)、工具不同(一个能查库,一个只能读文档)、职责不同(一个找你方案里的漏洞,一个必须给出可实施方案)。让 agent 之间信息不对称,分歧才有信息量。 三是给多样性设预算和出口。多样性不是越多越好,多出来的每个分支都是成本和一致性风险。做法是限定最多 N 个并行分支、限定轮数、设定“分歧率”当停止条件——一旦连续几轮观点不再变化就停止扩展,直接进裁决。没有停止条件的多 agent 讨论基本都在浪费 token 互相重复。 四是裁决要显式,不要靠投票糊过去。投票适合二选一,不适合多维方案。更稳的是让一个上下文干净的 agent 拿着所有候选和各自理由做裁决,并且要求它指明为什么否掉每个落选方案。分歧点本身要留下来给人看,这是多 agent 相对单 agent 的真正增量。 最后一句判断:多样性该花在“还没决定做什么”的阶段,效率该花在“已经决定做什么”的阶段。反过来花,就是先争论三天再草率动手。