Cursor Agent Swarms and Model Economics
Cursor Agent Swarms and Model Economics
Hierarchical Swarms Reduce Cost and Increase Accuracy
Cursor 对智能体集群(agent swarms)的研究表明,通过任务的分层分解——将高层规划与底层执行分离——可以显著提高软件工程成果,同时降低计算成本。在通过仅使用文档在 Rust 中重建 SQLite 的基准测试任务中,一种新的 "planner-worker" 集群架构在所有模型配置下都优于之前的迭代版本,某些设置在 sqllogictest 测试套件上达到了 100% 的通过率。
The Planner-Worker Architecture
大型技术任务被结构化为树状结构,其中根目标被递归地细分为基本的任务单元。集群利用两个不同的角色来管理这种结构:
- Planner Agents: 由前沿模型(frontier models)驱动,这些智能体将目标拆分为碎片并进行委派,而不亲自执行实现过程。
- Worker Agents: 由更快、更便宜的模型驱动,这些智能体执行具体的委派任务。
这种分离防止了 "context drift"(上下文漂移),这是单智能体系统中的一种常见失败模式,即模型在专注于细节时会失去对全局目标的关注,或者在试图维持大局时表现出较差的实现能力。通过隔离角色,规划者(planners)可以保持其上下文不受底层噪声的干扰,而执行者(workers)可以将整个上下文窗口专门用于处理狭窄的工作任务。
Solving Coordination at Scale
扩展到数百个并发智能体引入了在人类工程团队中通常不会看到的失败模式。为了处理每秒 1,000 次提交的峰值吞吐量,Cursor 开发了一个自定义的版本控制系统(VCS)来实现特定的协调机制:
Managing Design and Conflict
- Split-Brain Design: 为了防止两个规划者实现同一个概念的不同版本,规划者被提示进行集中式设计决策,并确保没有两个委派的子树在处理同一个问题。
- Planner Contention: 当规划者产生分歧时,他们会在共享的设计文档中记录决策。代码通过编译检查的引用依赖于这些文档;一个协调器(reconciler)会合并文档以将解决结果向下游传播。
- Merge Conflicts: 一个中立的第三方智能体充当公正的调解员,以解决执行者智能体之间的冲突,类似于合并队列(merge queue)。
- Megafiles: 为了防止臃肿的文件导致系统瘫痪,执行者智能体可以标记过度增长的文件,从而触发外部智能体将文件分解为更小的模块。
- Ossification: 为了防止智能体避免核心代码更改,系统 "licenses intentional breakage"(允许故意破坏)。智能体可以修补核心代码并留下推理注释;编译器随后会强制所有依赖的智能体更新其工作以匹配新的设计。
Model Economics: Frontier Planning vs. Efficient Execution
实验数据表明,前沿级智能主要用于高层协调、设计决策和歧义消除,而非编码本身。这使得通过混合使用模型组合可以实现巨大的成本节约。
Cost Comparison of Model Mixes
在 SQLite 实验中,不同的配置产生了相似的质量结果,但成本差异巨大:
| Model Mix | Role Distribution | Relative Cost |
| :--- | :--- | :--- | :--- |
| GPT-5.5 | Planner & Worker | Highest ($10,565) |
| Opus 4.8 / Composer 2.5 | Planner / Worker | Lowest ($1,339) |
虽然执行者(workers)占据了绝大部分的 token,但成本主要由规划者(planner)驱动。在 Opus 4.8/Composer 2.5 混合模式下,规划者产生的 token 很少,但却占了成本的 2/3,而执行者集群处理了大部分工作,仅消耗了总支出的 1/3。
Results of the SQLite Experiment
为了验证集群,Cursor 任务要求其在无法访问原始源代码或互联网的情况下,仅凭 835 页的 SQLite 手册来在 Rust 中实现 SQLite。
Performance Gains
将旧的集群框架与使用 Grok 4.5 的新框架进行比较,揭示了效率方面的显著差异:
Commit Volume: 旧集群在两小时内产生了 68,000 次提交(大多是 "busywork" 或无效劳动),而新集群的目标性明显更强。
Merge Conflicts: 旧运行版本累积了超过 70,000 次冲突;新运行版本在四小时内记录的冲突少于 1,000 次。
Code Efficiency: 在 Fable 5 混合模式下,新集群使用 9,908 行引擎代码完成了任务,而旧集群为了达到同样的结果使用了 64,305 行代码。
Community Perspectives and Critiques
技术同行之间的讨论突出了这种方法的潜力与局限性:
"I think the concept of integrating is the real challenge. Re-writing code in new languages based on decent docs is a difficult but less useful measure of how AI can can help replace engineers."
批评者指出,SQLite 的源代码和各种 Rust 重写版本(如 Turso 的)可能已经存在于模型的训练数据中,这表明实验可能衡量的是记忆力而非纯粹的推理能力。其他人则指出,虽然协调框架非常出色,但构建完全原创的东西——而不是重建现有软件——仍然是智能体集群(agent swarms)智能体的主要障碍。