特斯拉前AI总监、OpenAI创始成员之一的安德烈·卡帕西 (Andrej Karpathy),发表了一场演讲。
我个人觉得他这个演讲其实并没有提出特别鲜明的观点,只是比较诚实的还原了一下目前软件行业以及AI的实况,更多的像是一个总结吧。
庞杂的信息太多,只挑选了几个我认为比较重要的观点,罗列如下:
软件正在经历第三次根本性变革。
他把软件行列的三次变更做了一下编号整理
软件1.0: 这就是我们熟悉的传统代码,使用高级语言Python、C++给计算机下达精确指令。
软件2.0: 我们不再直接编写逻辑,而是用用海量数据去“炼”出一个模型。模型的参数,就是代码。
卡帕西举了他在特斯拉的亲身经历,原本很多工作都是C++代码编码完成的,引入模型之后简化和删除了删掉海量的C++代码。
软件3.0: 这就是当下的大语言模型。他把这个看成一种全新的计算机,而它的编程语言很特别,就是现在用的自然语言。
卡帕西认为,LLM现在就是一个操作系统。
LLM本身 ≈ 中央处理器
上下文窗口 ≈ 内存
闭源模型 (GPT, Claude) ≈ Windows, macOS
开源模型 (Llama) ≈ Linux
不过这个操作系统有点特别,具有兼具超强的记忆力和幻觉。
一方面读了半个互联网,记忆力惊人,但又爱一本正经地胡说八道,自己都不知道自己在瞎编。
有些问题上是超人,有些问题上蠢得让人发指。它会坚称9.11比9.9大,或者草莓(strawberry)里有两个R。
所以他说和LLM打交道,得时刻记着:你面对的是一个记性超好但随时可能犯傻、失忆、还容易被骗的天才。
卡帕西提醒大家要有耐心,不要每天炸裂突发。
软件开发和自动驾驶一样复杂,当我们看到“2025年将是Agent之年”这样的口号时,应该保持警惕。“应该是‘Agent的十年’,我们需要耐心,要严肃地对待软件。”
卡帕西强调,一定要把AI的缰绳拉紧。
“给我一个一万行代码改动的差异对比,这对我毫无用处。我才是那个瓶颈,不是吗?我得确保这玩意儿没引入bug。”
换句话来说,你的上限就是AI的上限,AI是放大器,而不是来替代你的。
我们需要的是小步快跑,快速迭代。
他自己不会Swift,但靠“感觉编程”一天就写了个iOS App。他甚至做了个网站叫MenuGen,拍下菜单就能生成菜品图片(然后这个App现在成了他的主要亏损来源,因为送了太多免费额度)。
但他发现,凭感觉写代码本身很快,但把项目部署上线、搞定支付和认证这些DevOps的破事儿,花了整整一个星期。
这句话其实就是疯狂打那些猫猫补光灯的脸鬼话,编码永远是软件工程中最不重要的一环。
文档要给Agent看
很多公司(Vercel, Stripe)开始提供Markdown格式的文档,因为大模型读起来毫不费力。
最后他还说:我们最大的机会,不是一步到位去造全自动的机器人,而是为自己和他人打造强大的“钢铁侠战衣”,让我们在这个新时代里飞得更高、更快。