Software Is Changing:LLMs Are the Operating Systems of the New Era
Andrej Karpathy: Software Is Changing (Again)
神经网络本质上就是一大堆数学函数组合。这些函数的系数(weights),才是真正决定模型“怎么思考”的核心。我们不再手写这些函数,而是通过训练(optimization)让模型自己“学”出这些 weights。
三代软件范式:从写代码到写提示词
Andrej Karpathy 将软件发展划分为三个阶段:
- Software 1.0:传统手写代码,通过逻辑判断和函数控制行为。
- Software 2.0:神经网络驱动的机器学习,我们不写规则,而是提供数据,让模型“学”出能指导行为的 weights。
- Software 3.0:用自然语言写 prompt,驱动大语言模型完成任务。
这三种方式不是互相取代,而是并存共用。每种方式适配不同任务场景,未来的开发者需要三种都能灵活运用。
权重是程序,训练是写代码
在 Software 2.0 中,我们不再写具体的函数,而是训练出一组可以“拟合行为”的权重。这些 weights 就是新的“程序”。
模型的“智能”不是靠硬编码的规则,而是通过大规模语言输入训练出的神经网络权重决定的。这些权重定义了模型“像谁”、“怎么说话”、“多聪明”。
LLM 是操作系统,不是水电工厂
我们使用 GPT-4、Claude 等模型,并不会本地运行,而是通过远程接口调用,按时间计费。这种方式更像“操作系统”:
- 提供智能能力的统一入口
- 不需要理解底层结构,只需输入 prompt
这是一种新型“智能计算基础设施”。
多模型协作:LLM 应用的幕后逻辑
一个 LLM 应用并非只依赖一个模型。例如 Cursor 背后就编排了多种模型:
- Embedding 模型:用于理解上下文和搜索
- Chat 模型:负责与用户对话
- Diff 模型:生成改动建议
这些模型协同工作,通过编排(orchestration)完成复杂任务。
Prompt 要具体,小步快验更有效
在实际使用中,提示越具体、任务越窄,成功率越高。一次生成太多内容往往无法审核,因此更好的方式是:
- 每次只让模型处理一个小任务
- 快速验证结果,形成反馈闭环
这是一种“微小提交 + 高速循环”的使用策略。
GUI 和滑块:控制 AI 的参与程度
优秀的 AI 产品要有两个要素:
- 图形界面(GUI):可视化显示模型的输出、改动位置、上下文,有效调动人类视觉神经,提升审核效率。
- Autonomy Slider(自主滑块):允许用户调节 AI 的参与程度,从完全人工 ➝ 部分自动 ➝ 全自动,灵活切换。
这就像钢铁侠战衣,既可以自己操作,也可以让它自动飞来帮忙。
Markdown 比 HTML 更适合 LLM
LLM 在读取结构化内容时,对 Markdown 的支持远好于 HTML。HTML 结构复杂、嵌套深,容易解析出错,而 Markdown 简洁、逻辑清晰,更利于模型提取信息。
因此构建面向 Agent 的系统时,应使用 Markdown 编写文档、示例、API 说明,并尽量减少“点击这里”这类人类视角语言。
总结
我们正进入一个“软件重写”的时代:
- 旧有逻辑被模型权重替代
- 自然语言成为新界面
- 人机协作成为主流范式
Software 3.0 正在重构软件开发的底层逻辑,未来已来,欢迎参与构建。