多智能体分工最容易踩的坑,不是“谁能力不够”,而是“谁都觉得这事该自己做”。一开始看似只是重复执行,后来往往会变成结果互相覆盖、状态难以解释,最后连排查都不知道该问哪个 Agent。把边界画清楚,比给每个角色多写几句能力描述重要得多。

每一种任务都应有唯一的最终负责者。这里的“负责”不只是能参与,而是拥有发起、执行或交付该任务的明确权利。两个 Agent 可以围绕同一份数据协作,但不能同时对同一个处理结果承担主责。
例如,一个 Agent 负责产出清洗后的数据,另一个 Agent 基于该结果做特征提取。前者可以识别并修正异常数据,后者也可以拒绝不符合输入要求的数据,但后者不应再次承担“修正原始数据”的职责。允许检查,不等于允许接管。
“读取数据”“检查数据”“处理数据”这类动作很容易重叠,因为几乎每个 Agent 都可能需要做。更稳妥的划分方式,是让每个 Agent 对一个相对完整的交付物负责:谁产出什么,交付到什么状态,后续谁可以使用。
这样做还有一个好处:避免把流程拆得过碎。分工越细,交接越多,状态同步和失败重试就越复杂。一个 Agent 不必包办整个链路,但应尽量完成一段能独立验收的工作,而不是只完成一个难以脱离上下文的小动作。
多智能体系统里,最危险的模糊地带是“谁发现谁处理”。这种机制听起来灵活,实际很容易让多个 Agent 同时认领任务。更合理的做法是,明确由一个责任方完成任务分配,其他 Agent 只在被分配后执行,或以建议、校验、补充信息的方式参与。
通信机制当然仍然重要:共享状态能告诉大家任务是否完成,唯一请求标识能减少重试带来的重复。但它解决的是“是否已经做过”,不是“到底该谁做”。如果职责本身重叠,再完善的通信也只是让多个 Agent 更高效地撞到一起。
真正好用的分工设计,往往能回答三个朴素的问题:这件事归谁、交付什么、其他 Agent 能参与到什么程度。把这三句话写清楚,许多后续的协调成本其实就已经被提前消掉了。
参与讨论
暂无评论,快来发表你的观点吧!