卡帕西中文站 / 推文解读 / Software 2.0

Software 2.0:当神经网络的权重成为新的代码

原推发布:2017-11-11 · 解读更新:2026-08 · 阅读约 5 分钟

一句话

卡帕西发推宣发了他在 Medium 上的文章《Software 2.0》,提出一个在当时颇为激进的判断:神经网络不是「工具箱里又一件工具」,而是一种全新的软件形态——程序不再由人用代码写出来,而是由优化算法从数据中「训练」出来。今天所有 Software 2.0 → 3.0 的行业叙事,源头就是这一条推和这一篇文。

他说了什么

推文本身很短,就是给文章引流;真正的内容在文里。他把传统编程称为 Software 1.0:人类用 Python、C++ 这类语言,把逻辑一行行显式写下来。而 Software 2.0 的「源代码」是神经网络的权重——人类不直接写它,而是定义目标、准备数据集、搭好网络骨架,然后让梯度下降在权重空间里把程序「搜索」出来。程序员的核心工作因此从写代码转向积累、清洗和标注数据。其实几个月前他就发过一条更挑衅的预告:

"Gradient descent can write code better than you. I'm sorry." —— @karpathy,2017-08 · 查看原推 →

文章还预言了配套基建的出现:Software 2.0 需要自己的 IDE、版本管理和调试工具——管理的对象不再是代码仓库,而是数据集。

背景:为什么是 2017 年底

这篇文章不是书斋推演。2017 年 6 月,卡帕西刚加入 Tesla 出任 AI 总监,负责 Autopilot 的视觉系统。他在第一现场看到的正是这个过程:团队不断用神经网络替换掉原来手写的 C++ 逻辑,代码库里「1.0 的代码在萎缩,2.0 的代码在生长」。同一年,深度学习已横扫图像、语音、翻译等领域,但多数人仍把它当作「一种更好的分类器」。卡帕西的贡献是换了一个视角:这不是算法升级,而是软件生产方式的更替

它引发了什么

对你意味着什么

  1. 学习路线要对齐生产方式:如果你在学 AI,别只练调包和写代码——构建数据集、设计评测、分析 bad case 这些「2.0 技能」才是长期稀缺的。今天做 LLM 应用时写评测集(evals),本质上就是这件事。
  2. 独立开发者的机会在「数据闭环」:一个能持续从用户使用中回收数据、改进效果的小产品,护城河比模型本身深。卡帕西后来也说过,竞争优势在迭代式的数据引擎,不在某一份静态数据。
  3. 看懂叙事的复利:一篇 2017 年的文章,到 2025 年还在给他的演讲供框架。深刻的判断可以吃十年——做内容和做产品的人都该记住这一点。

延伸