关于multi-agent和single agent之争,最近Anthropic和Devin的公司Cognition分别发表了两篇blog。Devin的观点是不要build multi-agent,Anthropic则分享了如何在research项目中使用multi-agent。表面上看起来是两个矛盾的说法,但仔细分析会发现,它们表达的其实是非常接近的观点。
Devin的文章提出了两个核心原则:一是context至关重要,二是每个action代表一个decision。基于此,他们得出结论——multi-agent之间互相传递context、沟通信息所造成的沟通障碍,实际上大于其带来的benefits。
而Anthropic的blog,如果仔细看其举例,实际描述的是一个主agent同时开启大量subagent的模式。这个问题本质上非常像数据并行中遇到的经典问题:并发带来的交流障碍会降低并发效率,但当能够进行大规模并发时,并发的优势就会显现出来。
结合这两篇文章,它们的共同观点实际上是:如果采用少量agent的架构——比如很多人设想的一个PM agent、一个engineer agent、一个designer agent三者互相沟通来完成任务——这种模式的效率会下降。
但如果能够massive地调用小型agent,比如一个主agent启动100个小agent,且这些小agent的完成时间都相对接近,这样的架构是可以带来效率提升的。