先这样答
我的判断标准是任务有没有天然的分解与汇总结构。有这种结构,就优先使用 Orchestrator-Worker。中心节点先拆分任务,再把子任务分派给不同 Worker,最后统一整合结果。它适合并行处理多个子任务,也适合需要统一指挥和明确问责的场景。因为过程更容易控制,所以它是默认选择。
去中心化协作适合没有天然中心的任务。比如创意共创和多方博弈,任务本身没有一个明确的权威答案,也不适合由一个 Agent 单独决定。多个 Agent 处于平等位置,可以分别提出方案,再通过协商或投票形成结果。这样能保留更多元的视角。
所以,我会先判断任务是否需要统一指挥。如果需要拆解、分派、汇总和问责,我选 Orchestrator-Worker。如果任务更依赖多元意见,而且不存在明确的权威答案,我再选去中心化协作。代价也要提前说明:去中心化的调试和归因成本高很多。
面试官会怎么追问
-
「为什么 Orchestrator-Worker 是默认选择?」 因为多数需要协作的任务,都可以先拆成子任务,再汇总结果。中心分派让执行过程更可控,也更容易明确每个环节的责任。只要任务存在天然的分解与汇总结构,就应优先考虑这种方式。
-
「什么时候不能把任务交给一个中心 Agent?」 当任务没有天然中心,而且答案需要多个参与者共同提出时,不适合让一个 Agent 直接拍板。创意共创和多方博弈都属于这类任务。此时可以让多个 Agent 平等提案,再通过投票形成结果。
-
「去中心化协作的主要代价是什么?」 它的调试和归因成本高很多。多个 Agent 平等协商后,出现问题时更难判断是哪一个提案、哪一次协商导致了结果。选择它之前,要确认任务确实需要多元视角,也要接受更高的排查成本。
回答的坑
- 不能把去中心化协作说成更先进的默认方案,它只适合没有天然中心且没有权威答案的任务。
- 不能只说 Orchestrator-Worker 能并行执行,还要说明中心分派、结果整合和可控问责。
同系列的题