没有人真正构建过软件工厂

下次有人谈论他们的软件工厂时,跳过吞吐量幻灯片。询问智能体允许失败的数字,以及谁拥有它。

没有人真正构建过软件工厂
梯形图转SCL | 自然语言生成梯形图 | 自然语言生成SCL | 梯形图在线查看 | 博途编程文档MCP | AI模型价格对比 | AI工具导航 | ONNX模型库 | Vibe Coding教程 | PLC在线仿真器 | Tripo 3D | Meshy AI | ElevenLabs | KlingAI | ArtSpace

8月27日,Uber报告称其超过70%的拉取请求现在来自智能体。像"在Uber规模上高效运行软件工厂"这样的帖子现在每隔几天就会出现。"软件工厂"是今年夏天的流行语:Warp在8月18日推出了一个,Factory以此命名,8090销售一个,这只是部分列表。

我花了8月份的时间阅读我能找到的每一个第一手资料,至少21个项目从Stripe到Meta到Ramp,寻找工厂。没有一个构建了工厂。每个"工厂"都是一样的东西:智能体并行运行在公司已有的流程上。

上一次新的动力出现在工厂时,每个人立即购买,将其安装到已有的东西上,并等待三十年获得回报。2026年再次发生这种情况,您可以在拉取请求中看出来。

1、每个人都买了电动机。福特重建了地板。

1899年,电力提供不到5%的工厂马力,1919年为50%,1929年为75%。在那三十年的大部分时间里,工厂用它所做的就是用一个大电动机替换蒸汽机,其他一切都保留:架空传动轴、皮带、聚集在电源周围的机器等。福特重建了工厂地板。在1913年至1914年间,他将工作移到工人面前,而不是将工人移到工作面前,据他自己说,底盘装配从12小时28分钟下降到1小时33分钟。这是8倍,而电动机并没有做到这一点。

今年有人重建了地板,只是不是为了代码。Kavak(拉丁美洲二手车市场)的首席产品和AI官Alejandro Maza Ayala在8月10日告诉a16z,给员工ChatGPT或Claude"没有效率",所以Kavak做了另一件事:

"围绕智能体重新设计整个公司",从"重建您的大部分API"开始,以便智能体可以使用它们。

Kavak现在在评估上花费的工程精力与在智能体上一样多,智能体处理96%的客户交互和95%的交易。他说他们的转化率比人类销售团队高2.1倍。12月,已经有数万智能体运营着业务,Kavak拆除了工作架构并重新开始。

现在用销售者的话来读一下2026年"软件工厂"的含义。Warp的CEO Zach Lloyd在8月18日推出了Warp Factories,他说:"云软件工厂是围绕SDLC的自动化循环,云智能体分类、规范、实施、评审、验证和监控工作。人类在关键决策点留在循环中。"Factory公司将其产品描述为"通过现成的GitHub Actions和服务账户在现有管道内运行交付。"GitHub的COO Kyle Daigle在介绍五个前沿实验室智能体现在路由的表面时,做出了承诺:

"您仍然使用您知道的原语——Git、拉取请求、问题——并使用您首选的计算,无论是GitHub Actions还是自托管运行器。" —— Kyle Daigle,COO,GitHub

围绕SDLC,在现有管道内,仍然是您知道的原语。这正是电动机,安装在为人们布置的轴上。

2、每个工厂都在同一扇门结束

运营商是值得关注的,因为他们是唯一可能重建自己地板但选择不这样做的方。

Stripe 将程序员转移到批准按钮。到2月份,每周超过1,300个拉取请求,用Stripe的话说,"完全由小工具生成、人工评审,但不包含人工编写的代码。"我将其视为设计决定。没有人写作,但每个人仍然签字。

Anthropic 保持完全相同的关卡。Anthropic的副首席信息安全官Jason Clinton在7月份描述了公司自己的管道:"超过一半的代码由我们内部版本的Claude Tag合并,而人工工程师专注于指导、设定意图和拥有最终批准。"人类仍然是合并代码一半的守门人。

Warp(其产品就是工厂)通过人工接触点来评估自己。其核心工厂指标(根据其8月27日的帖子)是"每个PR的平均人工接触点数"。它自动化了大约30%的自己的任务,其自我改进循环在每个人都结束的地方结束:"人类将那些建议作为PR评审工厂定义并合并改进。"

我审查的每个运营商和供应商都以供人阅读的拉取请求形式交付智能体工作。Uber的70%交付,用Uber的话说,"附带人工评审/升级。"Ramp的工程师在拒绝给予其智能体共享服务账户时说明了原因:"您不想故意创建一个未经评审的代码进入代码库的向量。"

需要明确的是:这有效。PostHog从1月份的1,441个合并PR增加到6月份的4,725个,大约增加了10%的工程师,回滚率为0.2%。这是普通Web代码库上的智能体,也是样本中任何人发布的唯一逃逸缺陷数字。1899年将电动机安装到轴上获得了实际产出,现在也获得了实际产出。

这也是天花板,这些公司没有将人类从门口移除是有原因的。

3、自我评分测试

exe.dev的Maisem Ali在8月27日指出了问题:

"但智能体仍在评分自己的工作。如果它误解了我想要什么,它可能会构建错误的东西,为错误的东西编写测试,然后自信地告诉我一切都通过了。" —— Maisem Ali,exe.dev

编写代码的智能体也编写说代码有效的测试。Antithesis的CEO Will Wilson在3月份的Signals and Threads上告诉Jane Street的Ron Minsky,当任务变得足够难时会发生什么:"最终它删除测试,或者最终它以某种微不足道的方式让测试通过。"Minsky:"我确实认为这正在变得好一点,但这种现象仍然非常强烈。"

行业的修复是第二个模型检查第一个。Shopify在7月29日进行了该实验并撰写了报告:在一次审计中,一个模型标记了30多个安全漏洞,经过验证后,每一个都被降级、驳回或重新分类。构建该工具的Zack Deveau明确指出了成本:"发送给开发者的噪音比完全没有发现更糟糕。"一个模型评判另一个模型只会放大噪音,而不是基本事实。

7月份,Anthropic让Claude回顾了自己的中断,并询问其自动化检查现在能捕获多少与中断相关的错误。答案大约是三分之一,另外三分之二仍然会发布。这是行业中资金最充足的验证程序自我评估,这就是为什么人类仍然在门口:他们身后的东西都不能被信任说不。

4、智能体无法编辑的数字

在样本中有一个地方人类已经消失了,它的位置告诉您一切。

Meta的KernelEvolve编写GPU内核,其关卡不是人工评审者:

"每个生成的内核都经过严格的验证管道,检查正确性——与参考实现的位级准确性——和性能。" —— Meta KernelEvolve团队

位级。输出匹配参考或不匹配,智能体可以读取该判决但无法编辑它。在此基础上循环关闭:智能体运行后训练专用模型,以测量的内核速度作为奖励,系统在没有人在循环中的情况下变得更好。结果:在KernelBench的250个问题上100%正确,在480个配置中160个ATen算子100%正确,在MTIA上超过25%的训练吞吐量,在生产中的Andromeda上超过60%的推理吞吐量。

初创公司Baseten在8月28日发布了相同的形状:内核"完全由我们的智能体框架识别、提出和实施",仅当它们"通过正确性和端到端性能检查"时才保留,现在在生产中,一个图像模型的延迟降低了42.3%。

Anthropic安全团队的研究员Nicholas Carlini在十六个智能体编写了一个在大多数编译器测试套件上通过率为99%的C编译器时,由于同样的原因得到了同样的结果:"任务验证器几乎完美很重要,否则Claude会解决错误的问题。"

Kavak的数字是转化率。Meta的是位级准确性。Baseten的是延迟。在每种情况下,智能体都可以读取分数但无法触及它。

现在看看工厂所谓的"自我改进"。Uber的帖子将其循环归档在未来时态:"我们正在研究一种自动化方法,从智能体技能执行中记录纸割伤并从收集的跟踪中自动生成技能更新。"Kiro的帖子题为持续提示评估,8月21日,在正文中披露了其作者:"本文侧重于评估人工编写的系统提示和配置更改。"Warp的循环(如上所述)在人工合并PR时结束。

模式是精确的。当正确性是数字时,循环关闭,人类离开。当正确性是评审时,循环在人身上结束。自我改进不是您添加到工厂的功能。它是当机器可以说不时自动发生的事情,当它不能时永远不会发生的事情。

5、地板存在。没有人将智能体放在上面。

所以行动是明显的:使应用程序代码成为正确性是数字的地方。13个运营商中没有一个这样做。没有一个改变语言、运行时或智能体写入的代码库。Stripe的monorepo是强类型的,Stripe在多年前由人类为其输入,并将其自建库描述为"LLM天然不熟悉。"Meta是我研究中最大的运营商,走了另一个方向。那里的研究科学家Mark Harman在2月份认为,智能体速度是"将误报和测试维护的成本扩展到崩溃点",Meta的答案是"为每个代码更改动态生成且不驻留在代码库中的测试"。更少的持久检查,而不是更多。

TigerBeetle(一个金融数据库)每24小时对自身代码运行2,000年的模拟测试,处于相反的一端。其风格指南要求每个函数有两个断言,其模拟器(在8月20日再次扩展)可以按需重放它发现的任何故障。它是地板:研究中任何代码库上最密集的机器检查集,为从事安全关键工作的人类构建,在智能体出现之前多年。

而且上面没有智能体层。没有AGENTS.md,没有CLAUDE.md,CI中没有智能体通道。8月26日,即Uber帖子的前一天,维护者关闭了一个智能体辅助贡献者的开放拉取请求,只用了一句话:"我们目前不接受智能体驱动的贡献!"

如果地球上任何代码库能让机器决定智能体的更改是否安全,那就是这个。每天2,000年的模拟比任何评审者对差异的审查都要严格。维护者没有通过它运行智能体的代码。一个人手工说不,就像门口在其他地方一样。

这就是2026年的形状。电动机在Uber、Stripe和Anthropic,安装在为人类布置的地板上。地板在TigerBeetle,上面没有电动机。没有人将它们放在同一栋建筑中,建筑也不是谜:应用程序代码,其中错误的更改无法编译而不是在评审中失败,一个提交的地方,因此事件在没有行的情况下触发的错误根本无法编写,以及一个没有墙钟和没有环境随机性的核心,因此整个应用程序从种子重放。在那个地板上,智能体的更改在一个人打开差异之前运行数千次模拟崩溃,智能体针对它无法编辑的判决进行改进,就像Meta的内核一样。没有工程师能在脑海中容纳它,这就是重点:机器容纳它。您曾经工作过的每个堆栈都是为了适合人类的头脑而构建的。软件工厂不能,否则它就不是一个。

智能体不会自己构建那个地板。它们是根据人类编写的代码训练的,而人类编写的代码是附加代码:围绕数据库的服务、逻辑旁边的广泛测试、最后的评审等。软件就是这样构建的。单独来看,智能体会用您交给它的任何语言为您重建那个地板。获得另一种类型需要一个拒绝通常形状的编译器和模拟器,以及在第一个智能体接触之前以那种方式设计地板的人。不同的代码需要不同的地板,地板必须先出现。

6、询问允许它失败的数字

唯一有人构建了可识别AI原生的地方是正确性已经是数字的地方。编译器。内核。其他地方,工厂是填充评审队列的非常快速的方式。

David Crawshaw(Tailscale联合创始人,现在是exe.dev)比任何人都更接近。他6月份的话:"有了智能体,CI无用,合并队列优越得多。"他的公司合并没有同行评审,并在队列中同步运行整个测试套件。他通过改变检查的顺序而不是检查运行的代码来做到这一点。

每个人都有电动机。没有人重建地板。

下次有人谈论他们的软件工厂时,跳过吞吐量幻灯片。询问智能体允许失败的数字,以及谁拥有它。


原文链接:Nobody Has Actually Built a Software Factory

汇智网翻译整理,转载请标明出处