16 个 AI Agent 花 2 万美元从零造出 C 编译器:当我们拆开这个「2 周奇迹」,看到的是自主编程的天花板

📌 一句话总结:16 个 AI Agent 用 2 万美元、2 周时间从零写出 10 万行 C 编译器,能编译 Linux 内核和 Doom,但独立评测显示它在代码优化上仍远逊于 GCC——这个项目精确标定了自主编程的当前天花板。

2026-02-13 · 深度解读 · 阅读时间约 8 分钟

一个「不可能」的实验

如果有人在一年前告诉你,一群 AI 可以在没有人类程序员参与的情况下,从零开始写出一个能编译 Linux 内核的 C 编译器,你大概会觉得这是科幻小说的情节。

但 Anthropic 研究员 Nicholas Carlini 做到了。他让 16 个 AI 实例在共享代码仓库上并行工作,每个实例运行在独立的 Docker 容器中,通过 Git 进行代码同步。没有人类编写一行代码,没有人类调试任何 Bug,没有人类做任何代码审查。两周后,这些 AI Agent 交出了一份 10 万行 Rust 代码的 C 编译器。

这个编译器不是玩具。它能编译并启动 Linux 6.9 内核(支持 x86、ARM、RISC-V 三种架构),能编译 PostgreSQL、SQLite、Redis、FFmpeg、QEMU,甚至能编译并运行 Doom。在 GCC 酷刑测试套件上,通过率达到 99%。

总成本?大约 2 万美元的 API 调用费用,消耗了 20 亿输入 token 和 1.4 亿输出 token。

这个编译器几乎已经达到了当前模型能力的极限。我尝试(非常努力地!)修复上述几个限制,但没有完全成功。新功能和 Bug 修复经常会破坏已有的功能。
— 来源:Nicholas Carlini, Anthropic

真正的创新:不是编译器,而是协作方式

这个项目最值得关注的不是最终产物,而是 16 个 AI Agent 的协作机制。Carlini 设计了一套精巧的「Agent 团队」架构:

任务认领机制:每个 Agent 通过写入锁文件来认领任务,Git 的内置同步机制防止多个 Agent 抢同一个任务。没有中央调度器,每个 Agent 自主判断「当前最需要解决什么问题」,然后开始工作。

冲突解决:当 Agent 完成工作后,它会从上游拉取代码、合并其他 Agent 的改动、然后推送自己的贡献。合并冲突由 AI 自行解决——事实证明 AI 在处理复杂代码合并方面表现出人意料地好。

角色分工:不同的 Agent 自然形成了专业化分工——有的专注于解析器开发,有的负责代码生成,有的做优化 pass,有的维护文档,有的专门做代码质量改进。

这种「无中心调度、自组织、通过 Git 协同」的模式,本质上是在模拟一个去中心化的开发团队。它解决了单 Agent 系统的两个核心瓶颈:并行处理能力和专业化深度。

独立评测揭示的真相:功能正确 ≠ 工程优秀

如果只看 Anthropic 的官方数据,这个编译器堪称完美。但独立开发者的实际评测讲述了一个更复杂的故事。

一位开发者在 Google Cloud Shell 上克隆了项目仓库,对 AI 编译器和 GCC 进行了逐项对比测试。结果很有意思:

测试项目AI 编译器GCCGCC -O3
指针运算与结构体对齐✅ 通过✅ 通过✅ 通过
深度递归(n=20)✅ 正确✅ 正确✅ 正确
深度递归(n=1000万)❌ 段错误❌ 段错误✅ 存活
死代码消除❌ 未消除✅ 完全消除
寄存器分配效率❌ 频繁溢出一般✅ 高效

指令膨胀问题:评测中反复出现的一个模式是 AI 编译器的「指令膨胀」。以一个简单的加法函数为例,AI 编译器会把参数从寄存器溢出到栈上,然后再从栈上加载回来做运算。而 GCC -O3 只需要一条 leal 指令就完成了同样的工作。好的寄存器分配器会尽可能让值留在寄存器中,AI 编译器做的恰恰相反。

死代码消除失败:if (0) 块中的字符串字面量,GCC 会完全移除,但 AI 编译器照样编译进了二进制文件。这不仅浪费空间,在安全敏感场景下还可能泄露内部信息。

这些测试揭示了一个关键事实:AI 编译器在「功能正确性」上表现出色(99% 测试通过率),但在「工程质量」上存在系统性差距。它更像一个能通过所有考试但缺乏实战经验的毕业生。

为什么 C 编译器是「完美靶场」

社区讨论中一个重要的反对意见是:C 编译器可能是最适合 AI 自主开发的项目类型之一,不能以此推断 AI 能自主开发任何复杂软件。

这个观点有道理。C 编译器具备几个独特优势:

  • 规范明确:C 语言标准已有数十年历史,规范清晰完整,不存在模糊的需求定义问题
  • 测试套件完备:GCC 酷刑测试等现成的测试套件提供了明确的「对错」标准
  • 参考实现丰富:有 GCC、Clang 等成熟编译器可以对照验证
  • 训练数据充足:GitHub 上有大量编译器相关代码作为训练语料

而现实世界中的大多数软件项目,最难的部分不是「写出通过测试的代码」,而是「搞清楚测试应该是什么」。需求模糊、边界条件不明确、用户体验难以量化——这些才是软件工程的核心挑战,也是当前 AI 尚无法独立应对的领域。

2 万美元的性价比之争

社区对成本的讨论同样激烈。乐观派认为 2 万美元造一个编译器简直是白菜价——人类团队开发 Clang 花了数年时间和数百万美元。悲观派则指出,这 2 万美元买到的是一个「开启所有优化后仍然比 GCC 关闭所有优化还慢」的编译器,而且还需要大量人工验证和测试。

更值得思考的是 Carlini 自己的坦白:编译器在 10 万行左右触及了天花板。新功能的添加开始频繁破坏已有功能,这暗示了当前 AI Agent 在管理大型代码库复杂性方面的根本限制。10 万行对于一个编译器来说不算大(GCC 有数百万行),但对于自主 AI 编程来说,这可能就是当前的实际上限。

对软件工程的三个深层启示

第一,测试驱动开发变得前所未有地重要。这个项目的成功严重依赖于完善的测试套件。当人类不再直接监督开发过程时,高质量的自动化测试就是唯一的质量保障。未来的软件工程可能会演变为:人类定义测试和验收标准,AI 负责实现。

第二,开发环境需要为 AI 重新设计。Carlini 花了大量精力设计适合 AI Agent 的开发环境——简洁的错误信息、自动化的进度追踪、上下文感知的日志系统。这暗示了一个新的工程领域:不是为人类程序员设计 IDE,而是为 AI Agent 设计开发基础设施。

第三,代码审查的重心将从「写得对不对」转向「写得好不好」。AI 已经能写出功能正确的代码,但代码质量、安全性、可维护性仍然需要人类把关。未来的高级工程师可能更像是「AI 代码审计师」,专注于评估和改进 AI 生成代码的工程质量。

富贵点评

这个项目让我想到一个比喻:AI 现在就像一个天赋异禀但缺乏经验的实习生。它能在两周内写出 10 万行代码,通过 99% 的测试,但写出来的代码就像没学过「设计模式」的大一新生——能跑,但不优雅。

真正让我兴奋的不是编译器本身,而是那个「16 个 Agent 通过 Git 自组织协作」的架构。这才是通往未来的钥匙。想象一下,如果把这种模式应用到更广泛的软件开发中——100 个 AI Agent 同时开发一个大型项目,每个 Agent 专注于自己的模块,通过版本控制系统自动协调。这不是科幻,这是正在发生的事情。

但我也想泼一盆冷水:C 编译器是 AI 能找到的最「友好」的大型项目了。规范明确、测试完备、参考实现丰富。现实世界的软件开发远没有这么「干净」。在 AI 能独立处理模糊需求、用户体验设计和跨团队沟通之前,人类程序员的饭碗还是稳的——只是工作内容会从「写代码」变成「审代码」和「定标准」。

📋 要点回顾

  • 实验规模:16 个 AI Agent 并行工作 2 周,消耗 20 亿 token,花费约 2 万美元,产出 10 万行 Rust 代码的 C 编译器
  • 功能验证:能编译 Linux 6.9 内核(x86/ARM/RISC-V)、PostgreSQL、Redis、FFmpeg、Doom 等,GCC 酷刑测试通过率 99%
  • 核心创新:无中心调度的 Agent 团队架构——通过 Git 锁文件认领任务、自主解决合并冲突、自然形成角色分工
  • 关键短板:独立评测显示 AI 编译器在死代码消除、寄存器分配、常量折叠等优化环节存在系统性不足,生成代码效率远低于 GCC
  • 能力天花板:项目在 10 万行左右触及上限,新功能频繁破坏已有功能,标定了当前自主编程的实际边界

❓ 常见问题

Q: 这个 AI 编译器能替代 GCC 或 Clang 吗?

A: 目前不能。虽然它在功能正确性上表现出色(99% 测试通过率),但在代码优化效率上远逊于 GCC。即使开启所有优化,AI 编译器生成的代码仍然比 GCC 关闭优化时更慢。它更像是一个概念验证,而非生产级工具。

Q: 2 万美元的成本算贵还是便宜?

A: 取决于你怎么看。如果和人类团队开发编译器的成本比(通常需要数年和数百万美元),2 万美元极其便宜。但如果考虑到产出的编译器在优化质量上的差距,以及 10 万行的复杂度天花板,这个性价比就需要重新评估了。

Q: 这意味着 AI 很快就能自主开发任何软件了吗?

A: 不一定。C 编译器是特别适合 AI 自主开发的项目类型——规范明确、测试完备、参考实现丰富。现实世界的大多数软件项目面临的核心挑战是需求模糊和用户体验设计,这些是当前 AI 尚无法独立应对的领域。

作者:王富贵 | 发布时间:2026-02-13

参考来源:Anthropic 官方博客 · NextBigFuture · 独立评测博客 · TechPlanet