AI时代的软件开发:从软件1.0到3.0的范式转变 - Andrej Karpathy在2025年AI创业学校的主题演讲
AI时代的软件开发:从软件1.0到3.0的范式转变
基于前特斯拉AI总监Andrej Karpathy在2025年AI创业学校的主题演讲整理

引言:软件发展的新纪元
我们正处在软件发展史上一个极其独特的时刻。软件在过去70年中基本保持稳定,但在最近几年发生了两次根本性变化。这种变化的速度和深度为即将进入行业的开发者们创造了前所未有的机会。
三个软件时代的演进
软件1.0:传统编程时代
软件1.0是我们熟悉的传统代码,程序员直接为计算机编写指令。这就像GitHub上展示的代码地图,包含了人类为完成数字空间任务而编写的所有指令。
软件2.0:神经网络时代
几年前,我观察到一种新的软件形态正在出现——软件2.0。这不是传统意义上的代码,而是神经网络的权重参数。开发者不直接编写这些"代码",而是通过调整数据集和运行优化器来生成神经网络参数。
Hugging Face平台就相当于软件2.0时代的GitHub,这里存储的是各种模型参数而非传统代码。例如,Flux图像生成器的参数构成了这个生态系统的核心,每当有人在Flux模型上微调LoRA时,就相当于在这个空间中创建了一个git提交。
软件3.0:大语言模型时代
最根本的变化是神经网络变得可编程了。大语言模型(LLM)不再是固定功能的计算机,而是可以通过自然语言进行编程的新型计算机。这标志着软件3.0时代的到来。
最令人震撼的是,我们现在可以用英语来编程计算机。
LLM:新型操作系统
类比分析:从电力到操作系统
LLM具有多重特性。首先,它们像公共设施,实验室通过大量资本支出训练模型,然后通过API以计量方式提供服务。其次,它们像芯片制造厂,需要巨额投资和深度技术积累。
但最准确的类比是操作系统。LLM不是简单的商品,而是日益复杂的软件生态系统。就像操作系统市场有Windows、macOS等封闭源码提供商,以及Linux开源替代方案,LLM市场也呈现出类似结构。
1960年代的计算模式
当前的LLM时代类似于1960年代的计算机:
- 计算成本昂贵,集中在云端
- 用户通过网络访问,类似"瘦客户端"
- 采用时间分片模式共享资源
- 个人计算革命尚未到来
独特的技术扩散模式
与传统技术不同,LLM的扩散模式是颠倒的。通常新技术先被政府和企业采用,然后扩散到消费者。但LLM的首要用例是帮助普通用户"煮鸡蛋"这样的日常问题,而不是军事或企业应用。
LLM的"心理学"特征
超能力与认知缺陷并存
LLM可以理解为"人类精神的随机模拟器",具有类似《雨人》中自闭症学者的特质:拥有百科全书式的记忆,但也存在明显缺陷:
优势:
- 记忆力超群,能记住大量信息
- 在特定领域表现超人
缺陷:
- 经常出现幻觉,编造信息
- 表现出"锯齿状智能"——在某些领域超人,在其他方面犯低级错误
- 患有"顺行性遗忘症"——无法像人类同事那样随时间积累专业知识
实际应用:部分自主应用
设计原则
成功的LLM应用具备以下特征:
- 上下文管理自动化:应用自动处理复杂的上下文信息
- 多模型协调:在后台协调多个AI模型协同工作
- 专业化GUI:提供针对特定领域优化的用户界面
- 自主性滑块:允许用户根据任务复杂度调节AI的自主程度
成功案例分析
Cursor代码编辑器:
- 保留传统手动界面
- 集成LLM实现更大粒度的操作
- 提供从简单补全到完整仓库级修改的多级自主性
Perplexity搜索:
- 自动信息整合
- 多LLM协调
- 可审查的引用系统
- 从快速搜索到深度研究的自主性梯度
人机协作的最佳实践
核心是实现高效的生成-验证循环:
- AI负责生成,人类负责验证
- 通过GUI加速验证过程,利用人类视觉系统的高效处理能力
- 保持AI"在缰绳上"——避免过度自主导致验证负担过重
Vibe Coding:编程的民主化
自然语言编程界面使每个人都可能成为程序员。"氛围编程"(Vibe Coding)现象展示了这种可能性:
- 用户无需深入学习特定编程语言
- 可以快速原型化定制化应用
- 降低了软件开发的准入门槛
然而,将原型转化为真实产品仍需要大量传统开发运维工作,这部分尚未被充分自动化。
为AI智能体构建基础设施
新的数字信息消费者
除了人类通过GUI和计算机通过API,现在出现了第三类数字信息的消费者和操作者——AI智能体。它们是"计算机,但类似人类"。
适配策略
直接支持:
- 提供
llms.txt文件,用Markdown格式直接向LLM描述域名信息 - 将文档转换为LLM友好的格式
- 用等效的curl命令替换"点击"操作说明
工具生态:
- GitIngest:将GitHub仓库转换为LLM可处理的单一文本
- DeepWiki:为仓库生成LLM优化的文档
- 模型上下文协议(MCP):为智能体提供标准化接口
未来展望:铁人套装的比喻
理想的AI系统应该像钢铁侠套装:既可以作为增强工具(托尼·斯塔克驾驶),也可以独立作为智能体运行。关键是要有"自主性滑块",让用户根据具体情况选择合适的自主程度。
当前阶段,重点应该放在构建"铁人套装"而非"铁人机器人"——即部分自主产品而非完全自主的智能体。这些产品需要:
- 定制化的GUI和用户体验
- 快速的生成-验证循环
- 保持最终向完全自动化发展的可能性
结语:历史性机遇
我们正处在一个需要重写大量代码的历史时刻。LLM作为新型操作系统,仍处于"1960年代"的早期阶段。我们需要学会与这些"易出错的人类精神"协作,调整基础设施以支持这种新的计算范式。
未来十年,我们将见证自主性滑块从左向右移动——从人类主导的增强工具逐步发展为更自主的AI系统。这个过程需要谨慎推进,保持人类在关键决策环节的参与,就像自动驾驶技术的发展轨迹一样。
对于即将进入这个行业的开发者,这是一个千载难逢的机会。软件正在经历70年来最根本的变化,而我们有幸参与重塑整个数字世界的基础设施。
中英文双语视频链接
Andrej Karpathy-AI时代的软件开发:从软件1.0到3.0的范式转变
更多推荐




所有评论(0)