AI思想图谱Research trajectories
AI 软件工程20 分钟
10

AI 软件工程 · RESEARCH TRAJECTORY

Andrej Karpathy:他不主要预测“下一种智能”,而是预测智能会怎样重写软件

导读

从视频 baseline、Tesla 数据闭环与微型实现,理解生成变便宜后验证、委托和维护为何更稀缺。

Karpathy 的独特价值不在于提出一套像 LeCun 那样完整的认知架构,而在于他能同时看到模型内部、训练管线和用户界面:神经网络怎样把数据变成权重程序,LLM 又怎样把自然语言变成运行时程序;当生成变便宜后,稀缺资源怎样从“写”迁到“定义任务、找失败、验证、维护与委托”。从 Software 2.0、Tesla 数据引擎、最小 GPT,到 Software 3.0 和 autoresearch,他的主线是同一个:观察可编程介质在换代后,工程组织会怎样跟着重构。

一、先把他放在正确坐标上

Karpathy 经常发表极具传播力的术语:

  • Software 2.0;
  • LLM OS;
  • Software 3.0;
  • vibe coding;
  • autonomy slider;
  • “面向 agent 的数字基础设施”。

如果把这些词孤立成预测清单,就会显得像高质量科技评论。它们之所以值得认真,是因为背后有一条持续的技术实践:

  1. 他早期做视觉、视频和语言的跨模态学习;
  2. 亲手研究 RNN 表示并用可视化解释模型;
  3. 在 OpenAI 早期和 Tesla 大规模部署中经历训练—数据—失败闭环;
  4. 把神经网络训练总结成可操作的 debug 方法;
  5. 用 micrograd、makemore、nanoGPT、llm.c、nanochat、microgpt 不断压缩技术栈;
  6. 在 LLM 时代从“模型怎样训练”推进到“软件怎样围绕模型重新组织”;
  7. 2026 年又把同一闭环交给 agent,做可验证的小规模自动研究。

因此他的核心问题不是:

哪一种架构最像人脑?

而是:

当一类不确定、可学习、能用自然语言控制的新计算机已经出现,开发者、数据、接口、评测和产品边界必须怎样变化?


二、早期视频研究:一个漂亮架构故事必须接受数据与 baseline 的反驳

Karpathy 早期参与的大规模视频分类工作在百万级 YouTube 视频上比较多种时空 CNN。

1. 研究原本自然期待“时间建模会显著赢”

视频包含运动,直觉上应让网络在时间维卷积、融合多帧,才能理解动作。

但论文得到一个很有教育意义的结果:

  • 最佳时空网络明显超过传统手工特征;
  • 相对只看单帧的强 CNN,提升却出乎意料地小。

2. 这说明 benchmark 可能允许静态捷径

许多视频类别可由单帧背景和对象猜出:

  • 游泳通常有水;
  • 打高尔夫有草地和球杆;
  • 弹吉他有乐器;
  • 滑雪有雪。

模型不必真正理解时间动态,也能在分类标签上得高分。

这个早期经验与 Karpathy 后来的工程判断高度一致:

  • 先看数据;
  • 先做最简单 baseline;
  • 不要从任务名称推断模型必须学到的机制;
  • 一个高总分可能来自错误特征;
  • benchmark 的切片分析比架构故事更可靠。

它也提醒 LLM agent 研究:一个名为“长程规划”的 benchmark,可能被局部模板或数据泄漏解决;任务名称不是能力证明。


三、视觉—语言对齐:多模态不是把整幅图压成一句标签

Karpathy 与李飞飞的Deep Visual-Semantic Alignments用图像区域、双向 RNN 和结构化目标,学习句子片段与局部视觉区域的对应,并生成描述。

1. 为什么 region—phrase 对齐比整图 caption 更深一层

一张图里有:

  • 多个对象;
  • 局部动作;
  • 属性;
  • 空间关系;
  • 不同描述粒度。

若只把整张图映射到一个向量、再生成一句话,模型可能不清楚哪个词对应哪个证据。区域—短语对齐尝试恢复 grounding:

  • “一束红花”对应哪个区域;
  • “坐在桌旁的人”怎样由视觉片段支持;
  • 弱句子标签怎样帮助定位对象。

2. 它预示了现代多模态,却也暴露表征瓶颈

今天视觉语言模型把对齐扩大到海量图文、视觉问答和生成。但老问题仍在:

  • 语言会选择性忽略图像细节;
  • grounding 未必稳定;
  • 描述正确不等于几何理解;
  • 模型可以利用数据共现;
  • 自然句子不是完整场景状态。

Karpathy 后来把 LLM 视为新计算界面,很大程度上来自他早已在两个介质间工作:连续视觉表示与离散语言程序如何对接。


四、RNN、char model 与可视化:理解模型的最好方式是把它缩到一人能完整运行

2015 年的The Unreasonable Effectiveness of Recurrent Neural Networks用字符级 RNN 展示模型如何从原始文本学习结构,生成类似莎士比亚、Linux 源码和数学文档的文本。

1. 这篇文章为什么影响深远

它没有把 RNN 当黑箱 API,而是:

  • 展示训练目标;
  • 可视化隐藏单元;
  • 给出失败与样本;
  • 说明局部字符预测如何产生较长结构;
  • 让读者能亲手运行最小实现。

其中一些单元会对引号、行首、代码缩进等结构产生可解释响应。它既证明分布式模型可自发学结构,也没有把样本流畅误当成完全理解。

2. “最小可运行系统”成为他此后十年的方法

Karpathy 反复把复杂生态压缩到:

  • 一个自动微分标量类;
  • 一个小型 MLP;
  • 一个字符模型;
  • 一份短 GPT 训练代码;
  • 一份纯 C/CUDA 实现;
  • 一个可在个人预算内训练的聊天模型。

这种还原有三种功能:

  1. 教学。 切掉框架和分布式系统噪声;
  2. 研究。 确认哪些部件真是算法本质;
  3. debug。 让每个变量、梯度和采样过程可观察。

这也是他为什么能比很多纯理论家更准确判断软件变化:他把研究概念翻译成普通开发者可以拿在手里的程序。


五、Software 2.0:神经网络不是代码的一个库,而是一种不同的编程介质

Karpathy 在 2017 年Software 2.0中区分:

  • Software 1.0:人直接写指令;
  • Software 2.0:人定义数据与目标,优化器写出权重。

1. 为什么权重可以称作程序

一个图像分类器、语音识别器或自动驾驶感知系统执行复杂输入—输出映射。若用传统代码手写:

  • 无法枚举所有视觉情况;
  • 规则互相冲突;
  • 长尾组合爆炸;
  • 新数据难系统吸收。

神经程序则由:

  • 数据;
  • 标签/反馈;
  • 网络架构;
  • loss;
  • optimizer;
  • compute;

共同“编译”为权重。

2. 工程师的工作因此迁移

Software 1.0 中,bug 常位于某行逻辑。

Software 2.0 中,bug 可能来自:

  • 训练分布缺失;
  • 标签定义错误;
  • 损失权重不合适;
  • 数据泄漏;
  • 模型利用捷径;
  • 评价集不代表部署;
  • 后处理掩盖错误;
  • 训练/服务预处理不一致。

工程活动随之从“写规则”转向:

  • 定义数据;
  • 挖掘失败切片;
  • 设计评价;
  • 维护训练管线;
  • 观察模型行为;
  • 控制部署分布。

3. 这项判断为什么在 LLM 前就非常前瞻

今天 foundation model 的“源代码”更复杂:

  • 预训练语料;
  • 数据混合比例;
  • tokenizer;
  • 合成数据;
  • preference data;
  • RL reward;
  • system prompt;
  • eval suite;
  • tool trajectories。

许多产品差异不在网络结构,而在这些看不见的数据与反馈程序。Software 2.0 准确预见了“数据和评价成为代码”的权力迁移。

4. 它没有让传统软件消失

神经程序难以提供:

  • 精确事务;
  • 权限不变量;
  • 可证明数值;
  • 明确状态机;
  • 安全边界;
  • 可复现控制流。

所以最可靠系统一直是混合:

  • 传统代码约束状态和权限;
  • 神经网络处理高维感知与模糊决策;
  • evaluator 监控二者接口。

六、Tesla:把“数据是代码”变成真实世界闭环

Karpathy 2017–2022 年在 Tesla 负责视觉/自动驾驶 AI。这段经历的价值不能只用车辆具体能力或公司承诺衡量;它把他的思考从静态论文数据集推进到持续部署系统。

1. 现实视觉问题不是 IID 数据集

道路场景具有:

  • 极长尾;
  • 国家和天气分布变化;
  • 罕见但高风险事件;
  • 传感器差异;
  • 标注昂贵;
  • 行动会影响下一观察;
  • 更新不能破坏已解决场景。

模型平均准确率很高,仍可能在一个罕见施工姿势上失败。

2. Fleet data engine 的一般结构

大规模部署允许:

  1. 从车队发现模型不确定或分歧场景;
  2. 收集针对性数据;
  3. 用人工/自动管线标注;
  4. 训练新模型;
  5. 在离线切片和影子模式中比较;
  6. 部署;
  7. 再从新失败继续。

这里真正可扩展的资产不是某一版网络,而是 把失败转成训练信号的速度

3. 为什么数据引擎比单次 SOTA 更重要

一个模型发布时领先,若没有闭环,很快会被新环境和竞争追上。一个初始模型略弱、但能快速:

  • 识别盲点;
  • 收集精确数据;
  • 回归测试;
  • 安全部署;

的组织,长期可能进步更快。

这也直接迁移到 LLM:

  • 记录 agent 失败轨迹;
  • 生成对应 eval;
  • 添加训练样本;
  • 验证修复没有破坏其他任务;
  • 让线上错误进入后训练。

4. 现实闭环也有危险

  • 线上数据受当前模型策略影响;
  • 只收集模型知道自己不会的样本,会漏掉自信错误;
  • 代理指标可能替代真实安全;
  • 数据分布会因部署改变;
  • 商业叙事可能领先于技术证据。

Karpathy 的可靠贡献是 data engine 方法,不应借此自动背书任何具体自动驾驶时间表。


七、A Recipe for Training Neural Networks:深网是一个“泄漏的抽象”

A Recipe for Training Neural Networks看起来像工程教程,实质是一套认识论纪律。

1. 为什么一个正常下降的 loss 仍可能完全错误

神经网络极其善于适配。即使管线有 bug,它也可能:

  • 记住训练数据;
  • 利用标签泄漏;
  • 学会背景捷径;
  • 补偿错误归一化;
  • 在 train split 上给出漂亮曲线。

所以“训练跑起来”几乎不是证据。

2. 配方的顺序体现他的判断

先亲自看数据。

  • 随机抽样;
  • 检查标签;
  • 画分布;
  • 理解异常;
  • 确认预处理。

先建一个完全可控的小 baseline。

  • 关闭复杂增强;
  • 用小数据;
  • 尝试过拟合一个 batch;
  • 检查 loss 初值;
  • 比较随机基线。

一次只增加一个复杂因素。

  • 正则化;
  • 数据增强;
  • 更大模型;
  • 训练调度;
  • 超参数搜索。

3. 为什么这在 LLM agent 时代更加重要

Agent 系统的损失/成功率会被更多层掩盖:

  • base model;
  • system prompt;
  • retrieval;
  • memory;
  • tool schema;
  • shell/浏览器;
  • verifier;
  • retry;
  • human fallback。

总成功率变化不能告诉你哪层贡献。生成速度越快,越需要:

  • 最小复现;
  • 轨迹可视化;
  • 失败分类;
  • 单变量消融;
  • 回归 eval;
  • 成本和延迟记录。

Karpathy 的训练配方恰好是对“vibe coding 足够了”的最强内部约束。


八、从 micrograd 到 microgpt:复杂生产系统之外,算法本质究竟有多少

Karpathy 的教育/开源项目形成一条递进路线:

  • micrograd:最小自动微分;
  • makemore:字符级生成模型;
  • nanoGPT:简洁 GPT 训练;
  • llm.c:用 C/CUDA 还原预训练;
  • nanochat:从预训练到聊天后训练的个人可运行栈;
  • microgpt:约 200 行纯 Python、无依赖的完整 GPT。

1. microgpt 的“所有其余都是效率”是什么意思

microgpt包含:

  • 文档数据;
  • tokenizer;
  • autograd;
  • GPT-2 式注意力网络;
  • Adam;
  • 训练循环;
  • 采样循环。

它声称已包含训练和运行 GPT 的完整算法内容;生产 LLM 的其他差异主要是规模、数值稳定、分布式、kernel、数据和后训练。

这句话不能误读成“大模型工程不重要”。真正含义是区分:

  • 算法最小核;
  • 把最小核扩到可靠工业系统的巨大系统层。

2. 为什么“概念去噪”本身有预测价值

当生态充满框架和术语时,最小实现可以问:

  • 哪个机制是不可缺的;
  • 哪个只是优化;
  • 哪个是包装;
  • 复杂度来自模型还是基础设施;
  • 新论文是否真正改变算法核。

这使 Karpathy 经常能在产业热词中抓住稳定结构,而不被暂时产品命名绑架。


九、LLM OS:不是说模型已经像操作系统可靠,而是说它正在占据系统中的调度中心

Karpathy 将 LLM 类比新型操作系统或计算平台,常见映射包括:

  • 模型像语言化 CPU;
  • context window 像工作内存;
  • tools 像外围设备;
  • retrieval / files 像外部存储;
  • app / prompt 像程序;
  • 多模态输入输出像通用人机接口。

1. 类比抓住了什么

传统应用把自然语言放在 UI 最外层;LLM 系统让语言进入控制核心:

  • 理解用户意图;
  • 选择工具;
  • 读写数据;
  • 生成代码;
  • 协调多个步骤;
  • 把不同模态转成统一任务。

模型不再只是某个 app 里的分类 API,而开始决定其他组件何时运行。

2. 类比容易掩盖什么

真正操作系统提供:

  • 确定性进程隔离;
  • 权限;
  • 内存保护;
  • 调度;
  • 事务;
  • 可重现接口;
  • 错误码和状态。

LLM 本身通常:

  • 概率性;
  • 无持久状态;
  • 容易被输入操纵;
  • 不保证终止;
  • 不理解权限后果;
  • 可能编造工具结果。

所以 LLM OS 更像产品架构方向,而不是说语言模型已经具备 OS 的可靠性。真正系统必须由传统软件补齐安全内核。


十、Software 3.0:自然语言成为第三种可执行介质

在 2025 年演讲 Software Is Changing (Again)中,Karpathy 把软件演进扩成三层:

  • 1.0: 人写确定性代码;
  • 2.0: 优化器从数据写权重;
  • 3.0: 人在运行时用自然语言指定模型行为。

1. 为什么 prompt 可以称作程序

一段自然语言可临时定义:

  • 角色;
  • 目标;
  • 输入输出格式;
  • 约束;
  • 示例;
  • 工具使用;
  • 错误处理;
  • 评价标准。

无需重新训练权重,模型即可执行新任务。这是一种极低门槛、模糊但广泛的编程。

2. 三种软件不会线性替代

一个可靠 agent 产品可能同时包含:

Software 1.0:

  • 身份验证;
  • 数据库事务;
  • 权限;
  • 预算;
  • sandbox;
  • 不变量和测试。

Software 2.0:

  • 基础模型权重;
  • embedding;
  • 感知;
  • reranker;
  • reward / verifier。

Software 3.0:

  • 用户自然语言;
  • system instruction;
  • agent plan;
  • 可动态修改的 workflow。

真正工程问题是决定边界,而不是宣布 3.0 取代一切。

3. 自然语言程序的新缺陷

  • 语义含混;
  • 同一输入不保证同一输出;
  • 指令相互冲突;
  • 很难静态分析;
  • 版本升级改变行为;
  • 安全边界可被文本穿透;
  • 测试空间无限。

因此 Software 3.0 必须发展自己的:

  • 类型/协议;
  • eval;
  • tracing;
  • 权限;
  • 版本控制;
  • 回滚;
  • verifier。

这正是未来软件基础设施的重大机会。


十一、Autonomy slider:代理不是“有/无自主”的二元开关

Karpathy 对 agent 最实用的判断之一,是把自主性理解为连续变量。

1. 可委托时长是比“是否 AGI”更有用的指标

同一个编码模型可以:

  • 补全下一行;
  • 修改一个函数;
  • 完成一个 issue;
  • 自主运行几小时;
  • 管理一整套项目。

随着委托时长增加,新的失败模式出现:

  • 忘记早期约束;
  • 在错误方向投入大量工作;
  • 工具失败后不知恢复;
  • 修改过多文件;
  • 错把局部测试当完成;
  • 不知道何时提问;
  • 人最后审查成本反而更高。

2. 真正的代理能力应同时测四件事

  1. 无人干预可持续多久;
  2. 成功率随任务长度怎样衰减;
  3. 人类验收和修复要花多少时间;
  4. 失败是否可检测、可回滚。

一个能“自主运行 8 小时”但多数时间在错误路径上,不比 20 分钟后主动请求澄清的系统更强。

3. 为什么人机协作界面比完全自主更早产生价值

当前模型的可靠区间有限。把 slider 放在合适位置:

  • 人定义目标和关键约束;
  • agent 承担可验证子任务;
  • 中间检查点允许纠偏;
  • 高风险动作需批准;
  • 最终结果由测试和人验收。

这比把所有任务一次性交给黑箱更符合能力真实形状。


十二、Vibe coding:生成把“写代码”变便宜,但没有把软件责任变便宜

Karpathy 用 vibe coding 描述一种体验:用户主要用自然语言描述想法,让模型写和改代码,自己甚至很少逐行阅读。

1. 它真正改变的是原型成本

以前一个想法需要:

  • 学语言和框架;
  • 写 boilerplate;
  • 查 API;
  • debug 基础配置;
  • 数小时到数天。

现在非专业者或开发者可以在数分钟内得到可运行原型。探索空间被极大扩大。

2. “能运行”与“可长期负责”之间的距离反而更明显

生产系统仍需要:

  • 安全;
  • 测试;
  • 数据迁移;
  • 性能;
  • 可访问性;
  • 可维护性;
  • 依赖更新;
  • 事故响应。

生成代码越便宜,仓库越容易积累:

  • 重复实现;
  • 不理解的依赖;
  • 隐藏安全漏洞;
  • 无人能维护的架构;
  • 一次修复破坏别处。

Vibe coding 是新的人机接口,不是软件工程规律失效。

3. 与训练配方的统一

Karpathy 早期配方要求:

  • 先看数据;
  • 小规模验证;
  • 一次改一件事;
  • 可视化;
  • 过拟合小样本;
  • 建 baseline。

这些原则在生成时代更重要。自然语言负责快速提案,测试与观察负责把提案变成可信系统。


十三、数字世界会像曾适配移动端一样适配 agent

今天许多网站和应用为人眼、鼠标和点击路径设计。Agent 若靠截图和坐标操作:

  • 信息密度低;
  • 状态难读取;
  • UI 改版就失效;
  • 权限和副作用不清楚;
  • 很难得到机器可验证反馈。

Karpathy 预期会出现 agent-native layer:

  • 稳定 API;
  • 结构化文本;
  • 可引用对象 ID;
  • 机器可读状态;
  • 明确工具 schema;
  • 权限范围;
  • 幂等操作;
  • 事务和回滚;
  • 执行结果证明。

这不是让网站对搜索引擎做 SEO,而是为执行主体提供第二接口。

1. 为什么这会反过来提高 agent 能力

模型在浏览器中点错按钮,未必是推理差;可能是环境接口浪费了大部分能力。结构化工具能:

  • 减少视觉定位噪声;
  • 缩短 trajectory;
  • 降低 token 成本;
  • 提供错误码;
  • 明确权限;
  • 让结果可自动检查。

Agent 能力是“模型 × 环境可操作性”的乘积。只比较 base model 会漏掉软件生态的适配。

2. 新接口也产生新攻击面

  • prompt injection 通过工具内容进入;
  • agent 获得过宽权限;
  • API 返回不可信文本;
  • 自动操作缺少人类情境判断;
  • 多 agent 争用同一状态。

因此 agent-readable 必须与 least privilege、provenance 和 transaction 一起设计。


十四、2026 年 autoresearch:把 Software 2.0 的数据闭环交给 Software 3.0 agent

Karpathy 的 autoresearch给 agent 一套小但真实的 LLM 训练代码:

  • agent 修改训练代码;
  • 每次运行固定约 5 分钟;
  • 用明确验证指标比较;
  • 提升则保留,失败则丢弃;
  • 反复运行数十或上百次;
  • 人主要修改 program.md,定义“自动研究组织”的规则。

1. 为什么它不是“让 AI 随便发论文”

任务经过刻意收缩:

  • 单 GPU;
  • 短实验;
  • 单一可重复 metric;
  • 代码范围小;
  • 结果可自动比较;
  • 失败成本低。

这创造了一个近似闭合科学循环:

  1. 读当前代码与历史;
  2. 提出小改动;
  3. 实施;
  4. 训练;
  5. 测量;
  6. 保留/回退;
  7. 生成下一假设。

2. 它与 Tesla data engine、训练配方和 Clune DGM 的会合

与 Tesla:

  • 失败和指标决定下一数据/模型改动。

与训练配方:

  • 小规模、单变量、强可视化、可回退。

与 Clune:

  • 自动修改 agent/训练系统;
  • 经验评价;
  • 可扩展到 archive 与多路径搜索。

区别是 autoresearch 故意保持极简贪心实验环境,主要展示 agent research loop;DGM 更强调多分支 archive 和 agent 自身 scaffold 的开放演化。

3. 它最重要的判断

AI 研究自动化不会先从“提出统一智能理论”开始,而会先出现在:

  • 实验便宜;
  • 指标明确;
  • 代码可改;
  • 周期短;
  • 结果可自动否证;

的局部区域。

这与 Brown 的 verifier-rich reasoning、Hassabis 的形式科学路线相同:自动化先在反馈闭合处复合。

4. 它没有证明什么

  • agent 能判断研究问题是否重要;
  • metric 提升会跨规模迁移;
  • 5 分钟 proxy 代表完整训练;
  • 自动实验不会过拟合验证集;
  • 系统能发明全新范式;
  • 多 agent 自动研究组织已优于好的人类实验设计。

它是一个干净的研究对象,不是科学家已被替代。


十五、Karpathy 的世界观:先看新计算介质改变了哪种成本

1. 神经网络把规则编写成本变成数据与评测成本

Software 2.0 并没有消灭工作,而是把稀缺资源迁移到:

  • 收集正确经验;
  • 定义目标;
  • 找长尾;
  • 维护训练基础设施;
  • 证明泛化。

2. LLM 把文本与代码生成成本变成验证与委托成本

Software 3.0 让提案极便宜。新的瓶颈是:

  • 这个输出是否正确;
  • 什么时候可放心委托;
  • 怎样限制副作用;
  • 人检查要多久;
  • 错误能否恢复;
  • 系统能否长期维护。

3. 教学式还原与生产式闭环缺一不可

最小实现告诉你算法是什么;真实数据引擎告诉你它在世界中怎样失败。

Karpathy 同时重视:

  • microgpt 式概念去噪;
  • Tesla 式规模反馈;
  • agent OS 式系统接口。

这三者共同构成他的判断厚度。


十六、与其他路线的关系

1. 与 LeCun:长期架构判断 vs 当前计算介质判断

LeCun 认为当前自回归 LLM 缺少可靠世界模型、持久记忆和规划,需要更根本架构。

Karpathy 更像问:

即便这台新计算机不完美,它已经足够有用,软件现在应怎样重构?

两者并不冲突。即使未来核心换成 JEPA/具身模型,仍需要:

  • 数据引擎;
  • eval;
  • tool protocol;
  • 权限;
  • human interface;
  • 最小可理解实现。

LeCun 对十年后模型内核可能更有价值;Karpathy 对未来一到五年的工程界面往往更敏锐。

2. 与 Clune:autoresearch 是 AI-GA 的一个极简工程切片

共同点:

  • 把研究外环交给 agent;
  • 代码是变异空间;
  • benchmark/metric 是选择信号;
  • 自动实验可能复合。

差异:

  • Clune 强调多样 archive、stepping stones、任务生成;
  • Karpathy 强调极简、可运行、可观察、固定墙钟实验;
  • Clune 的愿景是 open-endedness;
  • Karpathy 的原型先优化一个清晰 metric。

二者结合会很自然:极简可验证内环 + 多样开放外环。

3. 与 Levine/Finn:数据引擎思想在机器人中的对应

二者都知道真实系统进步取决于:

  • 收集失败;
  • 扩大数据;
  • 离线训练;
  • 部署回流;
  • 验证不回归。

Karpathy 从自动驾驶与软件看;Levine/Finn 从通用机器人策略看。机器人比代码更难,因为失败昂贵、状态噪声大、无法轻易回滚。

4. 与 Chollet:技能库存、程序介质与开发者资源核算

Karpathy 强调 LLM 已成为通用软件介质;Chollet 会提醒:

  • 能生成许多程序不等于高效获得真正新抽象;
  • 开发团队、工具和测试时计算也属于系统先验;
  • 公开 eval 容易被开发过程吞没。

Software 3.0 描述能力如何被使用;ARC 路线追问这种能力究竟来自现场学习还是巨大库存。两者回答不同问题。


十七、判断记录:哪些已经命中,哪些只是好类比

A. “数据、loss 和 eval 会成为新的源码”

结论:强力命中。

视觉、自动驾驶、推荐和 foundation model 都验证。现代 AI 组织的核心资产往往是数据与评测管线,而非公开架构。

B. “自然语言会成为第三种编程介质”

结论:已被产品生态强力验证。

用户用 prompt 指定行为,agent 写代码、调用工具、生成 workflow。未解决的是静态分析、版本化和可靠性。

C. “LLM 会占据操作系统式中心”

结论:架构趋势命中,类比不能字面化。

模型确实调度工具和应用;真正权限、进程与状态仍由传统软件提供。LLM 更像不可靠但通用的控制器,而非成熟 OS。

D. “可委托时长会持续增长”

结论:方向命中。

编码 agent 已从补全推进到多文件、多工具、数小时任务。但能力呈长尾,最难的是中位可靠性、恢复和审查成本,不是最好演示。

E. “数字世界会增加 agent-native 接口”

结论:快速发生。

工具协议、结构化 API、agent 文档和机器可读状态都支持。安全与权限标准仍落后。

F. “vibe coding 会重塑编程”

结论:原型和个人软件中强力命中;长期大型维护未定。

它扩大了能编程的人与想法数量,也可能制造大量无主代码和技术债。

G. “自动研究会从局部闭环开始”

结论:autoresearch 等提供有力早期证据。

是否能跨越 proxy metric、提出重要问题和形成新范式,仍未证明。


十八、他最强的论证与最弱的外推

最强论证:生成成本下降后,验证、失败发现和人类监督会成为主要瓶颈

这条判断贯穿:

  • 视频 baseline;
  • Software 2.0;
  • Tesla 数据闭环;
  • 训练配方;
  • vibe coding;
  • agent;
  • autoresearch。

模型可以非常快地产生答案、代码和实验,但真实进步取决于系统能否区分:

  • 真的更好;
  • 只是 metric 更高;
  • 利用了泄漏;
  • 破坏其他切片;
  • 在现实中产生副作用。

最弱外推:自然语言足以成为大多数软件行为的最终表示

自然语言极其灵活,却缺乏:

  • 精确类型;
  • 确定语义;
  • 可证明不变量;
  • 高效执行;
  • 稳定版本兼容。

它很可能成为意图与编排层,而非取代底层代码、数据库和协议。Software 3.0 的最强版本必须被混合系统现实约束。


十九、怎样评价 Karpathy 式判断

1. 对新术语追问可测变量

LLM OS:

  • 工具调用成功率;
  • 状态持久性;
  • 权限隔离;
  • 任务恢复;
  • prompt injection 鲁棒性。

Autonomy:

  • 无干预时长;
  • 中位成功率;
  • 失败检测;
  • 人审查时间;
  • 回滚成本。

Software 3.0:

  • 自然语言程序可复现性;
  • 测试覆盖;
  • 版本稳定;
  • 约束违反率;
  • 与 1.0/2.0 边界。

2. 对自动研究追问 proxy validity

  • 短训练提升能否跨长训练;
  • validation 是否被反复过拟合;
  • 发现是否在不同 seed / 模型规模复现;
  • 实验是否真改单变量;
  • agent 是否保留负结果和因果解释。

3. 对工程 demo 追问总成本

  • 生成节省多少时间;
  • 人检查花多少;
  • 线上事故和维护如何计入;
  • 模型调用、延迟和隐私成本;
  • 一年后代码是否仍可改。

二十、按思想推进阅读原始材料

第一阶段:看他怎样从数据反驳架构直觉

  1. Large-scale Video Classification with CNNs

    • 重点看时空模型相对单帧 baseline 的有限增益;
    • 由此理解“先看数据和捷径”。
  2. Deep Visual-Semantic Alignments

    • 看区域—短语 grounding;
    • 与今天多模态模型对照。
  3. The Unreasonable Effectiveness of RNNs

    • 看最小模型、样本和隐藏单元可视化怎样共同解释机制。

第二阶段:软件介质与训练方法

  1. Software 2.0

    • 这是他最重要、也最早被历史验证的前瞻判断;
    • 重点看工程师工作怎样从代码迁到数据。
  2. A Recipe for Training Neural Networks

    • 把它作为所有生成式工程的反幻觉纪律;
    • 尤其看 overfit one batch、可视化与逐步复杂化。

第三阶段:通过最小实现理解 LLM

  1. Neural Networks: Zero to Hero

    • 从 micrograd、makemore 到 GPT;
    • 适合把抽象接口还原成张量与梯度。
  2. llm.c

    • 看算法核怎样映射到 C/CUDA 与性能;
    • 理解“简洁参考实现”和生产优化的距离。
  3. nanochat

    • 看预训练、后训练、推理和聊天产品怎样放进个人可理解栈。
  4. microgpt

    • 这是他十年“去框架化”思路的最简总结。

第四阶段:Software 3.0 与 agent

  1. Software Is Changing (Again)
    • 看 1.0/2.0/3.0、LLM 应用界面和 agent 基础设施;
    • 把类比转成可测工程问题。

第五阶段:自动研究

  1. autoresearch

    • 重点看固定墙钟实验、自动修改、metric 与保留/回退循环;
    • 再问 proxy 是否能跨规模和跨任务。
  2. Karpathy 个人主页

    • 用来追踪新课程和项目;
    • 对社交媒体短语仍应回到代码、演讲和测量。

二十一、最后的压缩:怎样长期跟踪 Karpathy

不要把注意力都放在他新造了哪个词。用下面八个问题跟踪会更有价值:

  1. AI 把哪种生产成本降了几个数量级,新的稀缺资源是什么?
  2. 模型、数据、prompt、工具和传统代码的边界正在怎样移动?
  3. Agent 的中位可委托时长和人类验收成本是否同步改善?
  4. 数字环境是否提供结构化状态、权限、事务和可验证反馈?
  5. 生成速度是否由同等强的 eval、tracing 和回归测试支撑?
  6. 最小实现中哪些机制不可缺,哪些只是生态包装?
  7. 自动研究的短周期 metric 能否外推到大规模、真实科学价值?
  8. 新软件是否一年后仍可维护、可审计、可回滚?

Karpathy 最值得保留的判断是:

每次可编程介质换代,旧工作的很大一部分不会消失,而会迁到新的瓶颈。神经网络把瓶颈从写规则迁到数据与评测;LLM 又把瓶颈从写内容迁到定义、验证、委托和维护。

END · 10

不要问“该信谁”,要问:什么证据会迫使这条路线再次转向?

回到路线地图 →