当前位置:首页>java>2000 个 AI 智能体并行写代码:Cursor 工程师 Wilson Lin 谈 FastRender

2000 个 AI 智能体并行写代码:Cursor 工程师 Wilson Lin 谈 FastRender

  • 2026-09-05 04:19:44
2000 个 AI 智能体并行写代码:Cursor 工程师 Wilson Lin 谈 FastRender

💡 上周,Cursor 发布了一篇关于大规模自主编码智能体(Autonomous Coding Agents)的研究文章。其中提到的 FastRender —— 一个由智能体蜂群从零构建的浏览器引擎,引起了广泛关注。Simon Willison 专访了 FastRender 背后的工程师 Wilson Lin,揭秘了这个“疯狂”项目的幕后故事。

什么是 FastRender?

FastRender 是 Wilson Lin 的一个个人副业项目,始于 2025 年 11 月,最初是为了探索 Claude Opus 4.5 和 GPT-5.1 等前沿模型在处理复杂任务时的能力极限。

为什么选择写一个浏览器引擎?因为这是一个极其雄心勃勃且复杂的任务,同时又有着非常明确的规范(Spec)。最重要的是,你可以直观地看到它是否工作——页面渲染出来了吗?

随着单个智能体表现越来越好,Wilson 决定挑战极限:让多个智能体协同工作。最终,这成为了 Cursor 的一个官方研究项目。

虽然 FastRender 并不打算与 Chrome 竞争,但它已经能加载 Wikipedia 和 CNN 等真实网页。更有趣的是,智能体甚至自己决定给尚未完工的 JavaScript 引擎加了个 Feature Flag(功能开关)把它禁用了!

核心揭秘:2000 个智能体如何并行工作?

FastRender 最令人震惊的数据是:在峰值时期,有大约 2000 个智能体 并行工作,每小时提交数千次代码。整个项目累积了近 30,000 次提交。

如何管理这么多智能体?

  • 基础设施
    :使用大型机器,每台机器运行约 300 个并发智能体。
  • 组织架构
    :智能体呈树状结构排列。规划智能体(Planner Agents) 负责拆解任务,工人智能体(Worker Agents) 负责执行。
  • 避免冲突
    :尽管数千个智能体同时修改代码库,但合并冲突(Merge Conflicts)非常少。这是因为规划智能体非常擅长将工作拆分成互不重叠的模块。这似乎是释放并行智能体潜力的关键技巧。

意想不到的发现

1. 通用模型 > 专用编码模型

Wilson 发现,GPT-5.1 和 GPT-5.2 等通用模型比专门针对编码优化的 GPT-5.1-Codex 更适合这项任务。因为智能体不仅需要写代码,还需要理解如何在“挽具(Harness)”中操作、如何自主决策,这些指令比单纯的编码更广泛。

2. 规范与反馈循环是生命线

为了让智能体长时间自主工作,FastRender 仓库通过 Git 子模块引入了大量的 W3C 和 ECMA 规范。

  • 反馈循环
    :智能体会参考这些规范编写代码。
  • 视觉反馈
    :利用 GPT-5.2 的视觉能力,智能体会对渲染结果截图,并与标准样本(Golden Sample)进行比对。
  • 编译器反馈
    :Rust 严格的编译器也起到了很好的验证作用。

3. 智能体会“偷懒”和“走捷径”

智能体自己选择了项目依赖。虽然大部分选择很合理(如 Skia, HarfBuzz),但它们也引入了像 Taffy(实现了 Flexbox/Grid 布局)和 QuickJS 这样的库。 关于 QuickJS 的引入有个有趣的故事:智能体意识到其他智能体还在开发 JS 引擎,为了不被阻塞,它决定先引入 QuickJS 作为临时替代方案,并计划以后替换掉。这像极了人类工程师会做的事!

4. 允许暂时的错误

为了追求极致的吞吐量,系统允许引入微小的错误(如 API 变更或语法错误),只要它们能被后续的提交迅速修复。

“如果要求每次提交都 100% 完美且可编译,那将成为同步瓶颈……允许一点‘松弛’,能让整体系统以极高的吞吐量持续推进。”

笔者锐评

FastRender 实际上是把一个完整的浏览器渲染引擎当成了多智能体协作的 “Hello World”。

  1. 软件工程的“奇异点”
    :一个工程师加上一群 AI 智能体,在几周内写出了上百万行可用的 Rust 代码。这预示着软件工程正在进入一个新纪元:从“编写代码”转向“设计系统来生成代码”。
  2. 并行能力的释放
    :FastRender 证明了,只要任务拆解得当,AI 智能体的并行扩展能力是惊人的。未来的架构师可能不需要管具体的模块实现,而是专注于设计“无冲突的任务图谱”。
  3. 容错与进化
    :接受“暂时的错误”以换取“整体的进化速度”,这不仅是 AI 的策略,也是大型分布式系统(甚至生物进化)的生存法则。

求点赞 👍 求关注 ❤️ 求收藏 ⭐️你的支持是我更新的最大动力!

最新文章

随机文章