乐于分享
好东西不私藏

软件3.0时代来了:Karpathy说氛围编码已死,LLM是幽灵不是动物

软件3.0时代来了:Karpathy说氛围编码已死,LLM是幽灵不是动物

PART 01

软件 3.0 时代来了:Karpathy 说氛围编码已死,LLM 是幽灵不是动物

Andrej Karpathy 最近在 Sequoia 的 AI Ascent 大会上做了一场 29 分钟的演讲,信息密度极高。这位 OpenAI 联合创始人、前特斯拉 AI 负责人,亲手给自己去年提出的"氛围编码"概念判了死刑,同时抛出了一个更宏大的判断:软件 3.0 正在吞噬一切,Agent 的十年已经到来。

如果你还没看过这场演讲,值得花时间完整看一遍。下面是核心内容整理。

从没感到作为程序员如此落后

开场,主持人问了一个尖锐的问题:你不久前说过"作为程序员,我从没感到如此落后"——这话从你嘴里说出来,到底是兴奋还是不安?

Karpathy 的回答是:两者都有。

他描述了去年 12 月的一个转折点。之前用 AI 编程工具,写代码时经常会出错,需要手动修正。但到了 12 月,他发现最新模型输出的代码块几乎不需要修改了——他一直要求更多功能,模型一直给出正确的结果,他已经记不清上次纠正代码是什么时候了。

我觉得很多人去年把 AI 体验等同于 ChatGPT 式的对话。但你必须在 12 月重新审视,因为事情已经发生了根本性变化——尤其是大规模连贯工作流,真的开始运转了。

这个转变让他一头扎进了"无穷无尽的项目",他的项目文件夹塞满了各种随机项目。

软件 1.0 → 2.0 → 3.0:编程范式的三次跃迁

Karpathy 把软件发展划分为三个时代:

软件 1.0:程序员手写明确的规则和代码。

软件 2.0:通过创建数据集、设计目标函数和神经网络架构来"编程"——编程变成了数据集的编排。

软件 3.0:当你在足够大的任务集上训练 GPT 模型或 LLM 时,这些模型隐式地变成了可编程的计算机。编程变成了提示词工程,上下文窗口就是你操控 LLM 解释器的杠杆。

他举了一个非常生动的例子:当 OpenClaw(一个 AI Agent 工具)发布时,安装方式不是传统的 Shell 脚本,而是一段文本——你复制粘贴给你的 Agent,Agent 自己去理解你的环境、你的电脑,然后智能地执行安装、调试。

这才是现在的编程范式:找到那段要粘贴给 Agent 的文本。

MenuGen:软件 3.0 的极致案例

Karpathy 分享了他构建 MenuGen 的经历。这个应用的功能很简单:你拍一张餐厅菜单的照片,它会自动生成每道菜的图片,让你知道菜长什么样。

传统做法(软件 1.0+2.0):OCR 识别菜单文字 → 用图像生成器逐个生成图片 → 渲染展示。这是 MenuGen 的完整工程实现。

但软件 3.0 的版本让他震惊:直接把照片给 Gemini,说"用 nanobanana 把菜品图片叠加到菜单上",Gemini 直接返回了一张渲染好的菜单图片——菜品图片已经嵌入到像素里了。

我的整个 MenuGen 代码全是多余的。

LLM 的心理学:幽灵而非动物

这是整场演讲最有洞察力的部分。Karpathy 提出了一个概念:LLM 是"人类灵魂"(people spirits)——随机模拟器,具有涌现的"心理学"特征,但也有关键的认知缺陷。

参差不齐的智能(Jagged Intelligence)

LLM 有些事情做得极其出色(以人类标准衡量),有些事情又灾难性地失败,而且你往往分不清哪些是哪些。最致命的问题是缺乏认知自知之明——模型不知道自己不知道什么。

这需要在模型后训练阶段用更复杂的方法来解决。

顺行性遗忘(Anterograde Amnesia)

这个比喻非常精准:LLM 就像一个患有顺行性遗忘症的同事——训练结束后,他们无法积累长期知识或专业能力,只有短期记忆(上下文窗口)。

Karpathy 提出了一个解决方案:系统提示词学习(System Prompt Learning)。这是一种缺失的学习范式——LLM 编辑自己的系统提示词来编码全局问题解决策略和知识。

LLM 应该自己给自己写一本"如何解决问题"的书。

部分自主:钢铁侠战甲类比

在讨论 AI 产品的设计哲学时,Karpathy 用了"钢铁侠战甲"的类比:好的 AI 产品 = 增强(工具/传感器)+ 自主(独立行动)。

关键概念是自主性滑块(Autonomy Slider)——用户应该能精细控制 AI 的独立程度:

  • Cursor:从 Tab 补全到 Agent 模式
  • Perplexity:从搜索到深度研究
  • 特斯拉自动驾驶:L1 到 L4

核心工作流是人机生成-验证循环。速度至关重要:

改进验证:让检查工作变得简单快速。
改进生成:把 AI 拴在短链子上。

Karpathy 还抛出了一个金句:

"Demo 是 works.any(),产品是 works.all()。"

演示只要能跑一次就算成功,产品必须每次都可靠。这个差距是目前 AI 产品最大的鸿沟。

氛围编码已死,为 Agent 而建

Karpathy 指出,氛围编码(vibe coding)——你描述意图、AI 生成代码——虽然从原型阶段看起来很美好,但一旦要和真实世界的服务对接(认证、部署、各种不为 Agent 设计的系统),AI 的加速效果就消失了。

他提出了一个新的分类框架——数字信息的消费者/操控者有三类:

  1. 人类(通过 GUI)
  2. 计算机(通过 API)
  3. Agent ← 像人类一样需要交互的计算机
为这个新类别而建。 API 和文档应该同时对人类和 Agent 可读。他提到了 llms.txt 这个正面标准。

他特别提到了两个"为 Agent 而建"的工具:Gitingest 和 DeepWiki——它们是"上下文构建器",帮助 Agent 理解代码库。

总结:这是 Agent 的十年

Karpathy 在结尾总结了五个核心观点:

  1. 这是 Agent 的十年
  2. 聚焦部分自主——定制 GUI、自主性滑块,而不是华而不实的 Demo
  3. 软件 3.0 正在吞噬 1.0/2.0——它的核心特征(公用事业/晶圆厂/操作系统)将决定它的路径
  4. 改进生成-验证循环
  5. 为 Agent 而建

///

这场 29 分钟的演讲浓缩了 Karpathy 对软件未来的完整判断。从氛围编码的退潮,到 LLM 作为新计算范式的崛起,再到 Agent 时代的开启——每一个观点都值得深思。

最让人印象深刻的是他对 LLM 心理学的洞察:参差不齐的智能、顺行性遗忘、缺乏自知之明。这些不是技术细节,而是理解 AI 能力边界的思维框架。

如果你是开发者、产品经理、或者只是对 AI 未来感兴趣的人,这场演讲都不应该错过。

THANKS FOR READING

⚡ 爱马仕 · Hermes Agent 技术分享

相关学习资料