低实现成本的世界
前两个礼拜,我的自行车骑行的时候牙盘有异响,我向 gpt 认真描述了我观察到的现象,按照它的要求给它拍不同部件的照片,并按它说的捏住刹车、前后晃车,倒转脚踏,慢慢推车等,然后将不同操作后的表现总结给它,它最后给我得出的结论是我需要去店里保养链条。我把车推到了车行,师傅听到我这辆连变速都没有的自行车需要保养时,露出了难以置信的神情,我又重新向师傅描述了问题,师傅说他先看看,最后师傅只用几分钟就把我的车子修好了,原来只是滚珠磨损,牙盘位置不正蹭到了链罩而已。
后面又想起这件事,我意识到被各大软件公司广泛采用的 LLM 在现实世界格外的无力,而这很有可能是因为:编程世界是一个试错成本极低的世界。对于 AI 之前的人类程序员来说也是如此,我们可以不断地修改代码->运行->看到报错->根据报错调整,有的时候程序员自己也不一定完全想明白了程序的运行流程,但他可以看 debug log,看 tracing,看内存布局,修改直到最后程序按照预期那样运行。虽然编译运行本身也会有时间成本,但是和医药、土木、机械、半导体等传统行业相比,也还是低的惊人,一个芯片设计如果流片失败,不光可能损失数月的时间,也会血本无归,更不用说临床试验了。并且,就模拟演练(dry-run)方面,计算机里也要容易的多,以一次 CI(持续集成)流程为例,真的部署到生产环境之前,我们完全可以模拟一样的输入、代码、流程,唯一的差别可能只是一两个环境变量,以及并不会真的提交产物。除此之外,程序还是可以回滚的,我们能为不同版本建立不同的分支,为每个版本对应上 commit,操作本身也可以 Ctrl+Z,想回退到之前可以正常工作的状态?没问题,只需要一句 git reset --hard。
或许这也就是为什么 AI 对 CS 冲击如此明显,虽然许多人都在鼓吹 LLM,尤其是那些 AI 公司,但说到底 Agent 依然只能在数字世界中完成操作,和现实世界还差的很远,有人说随着 AGI、ASI 的发展 AI 可能会在未来毁灭世界,但至少从现在看来,它最大的破坏可能也就是入侵了 Hugging Face[1] 对现实世界的物理层面的影响可能还比不上那些完全不环保的数据中心。LLM 依然存在幻觉,依然只能做通过 cli 或工具调用才能做到的事情,只不过这些都被适用于编程的 harness 和低成本试错弥补了,所以其他行业对 AI 的感知看起来好像远没有画师、程序员、数学家明显。离 LLM 真的能充分利用触觉听觉视觉与自行车交互、排查问题,可能还真的很远。从这个角度来说 Anthropic 经济报告里面劝程序员未来需要去学安装/疏通水管虽然只是以讹传讹[2],但并非没有任何道理,水管工可能需要把手挤进缝隙,凭手感去判断结构,需要使用不同的实体工具,并根据经验应付各种突发情况(如漏水)。
我从小就喜欢电脑,日日夜夜和电脑相处,一方面是我可以看着我的程序被实现的功能越来越多,性能越来越好,界面越来越美观。另一方面也是因为试错性,我的 python 代码有报错?我可以尝试四五种其他不同的写法,直到找到一个看起来正确的方案,哪怕我自己到最后也没搞清为什么它就是可以的;现实中我写一篇上百字的文章却一点笔误或错别字都没有是非常困难的,但是在电脑里,我可以自由退格且不留下任何痕迹;现实中如果要粘一个东西,位置偏掉就要彻底重来,或者根本不能重来,但在计算机的世界里,我可以自由修改 ppt 里每个元素的位置、大小,也可以撤回,并且保存各个我喜爱的版本。在现实世界中,被打在墙上的洞不能被撤回,被焊坏的板子就真的坏了,有异响的自行车牙盘也不会告诉你 traceback 具体在哪行。所以计算机给人带来了可以先做再看结果然后修改的自由。
但与此同时,过于仰仗能反复尝试和回退的便利,也会悄然改变我们做决策的顺序,在现实中,许多事情我们不得不先想清楚再动手,但在计算机的世界里,“先做了再说”同样是个合理的选择,以至于有时连大方向都没有考虑清楚,只是一味地试错,并因此浪费额外的时间和精力。尤其是在 AI 时代,LLM 进一步压低了做的成本,我们可以完全不会某个编程语言,只需要说明白具体想要的功能[3],就可以看到它真正的被实现了,“先做了再说”对于曾经需要精心设计的功能或架构都变得适用了,而让人慢慢忽略掉它们真正进入系统后带来的复杂性。当然我们可以让 LLM 继续去完成后续的维护乃至重构,但是这同样不是一件易事,旧数据仍需要考虑兼容和迁移,现有的接口和使用习惯也不是说变就变,已经消耗了的 token 和时间也不会回来。所以我愈发觉得,**在这个时代,在做之前想明白做什么和不做什么,尤其是不做什么,反而会愈加重要。**GPT 可以给出三个方案,五套实现,十篇文档,三百行单元测试,而且还能写的很快,但我们依然可以选择不做。
当能不能做出来几乎不再构成阻碍,几乎任何想法都可以先做出来看看的时候,真正困难的反而是仍然愿意在低成本实现的世界里停下来判断:哪些东西是确实值得进入现实的,哪些完全可以做得到,却应该继续留在可能性里。
[1] Anatomy of a Frontier Lab Agent Intrusion: A Technical Timeline of the July 2026 Incident (opens new window),其实应该还有影响更恶劣的事件,只不过这个比较有代表性,并且是前沿模型犯下来的带完整报告的事故
[2] Anthrophic 原文只说了电工或护士,被推特上网友 (opens new window)传成了水管工
[3] 这其实又是一个很大的话题,因为如果要真的描述明白一个事物,最精准的表示其实就是代码,也就是我们写出来的高级编程语言本身,但文章为叙述方便,这里不引入这层复杂性。