最近看了前特斯拉AI总监Andrej Karpathy的一个演讲,分享他对AI时代的思考。听完之后我觉得,这可能是我今年听过最有启发性的技术分享了。
软件的三次进化:从写代码到说人话
Karpathy提出了一个很有意思的观点:软件其实经历了三个阶段的进化。
第一阶段(Software 1.0)就是我们熟悉的传统编程——写Python、Java、C++这些代码,告诉计算机一步步该干什么。这套玩法其实70年来没怎么变过。
第二阶段(Software 2.0)是神经网络时代。你不再直接写代码,而是准备数据,然后让机器学习算法去"学"出一堆参数权重。这些权重就是新的"代码"。Karpathy在特斯拉的时候就发现,随着自动驾驶越做越好,车里的C++代码越来越少,神经网络越来越大——AI literally把传统代码给"吃"了。
第三阶段(Software 3.0)就是现在的大语言模型时代。最牛逼的地方在于,你现在可以用英语(或者中文)来"编程"。你的prompt就是程序,ChatGPT就是执行这个程序的计算机。
想想看,这意味着什么?每个会说话的人都变成了程序员。
LLM:像1960年代的大型机
Karpathy有个很形象的比喻:现在的LLM就像1960年代的大型机。
那时候计算机巨贵,只能放在机房里,大家排队使用。现在的GPT-4、Claude也是一样的道理——训练成本天价,只能放在云端,我们通过API来"分时使用"。
但这个比喻还有更深层的含义。1960年代之后发生了什么?个人电脑革命。每个人都有了自己的电脑。
所以问题来了:AI的"个人电脑时刻"什么时候到来?
现在已经有一些苗头了。比如苹果的M系列芯片跑小模型其实还挺流畅的。但距离真正的"AI PC"普及,可能还需要几年时间。
LLM的"心理画像":天才+白痴的组合体
这部分我觉得特别有意思。Karpathy把LLM比作《雨人》里的自闭症天才——记忆力超强,能记住整本电话簿,但在常识判断上经常犯低级错误。
LLM的超能力:
-
百科全书级的知识储备 -
多语言能力 -
创意写作 -
代码生成
LLM的认知缺陷:
-
经常胡编乱造(幻觉) -
逻辑推理能力不稳定 -
没有持续学习能力(像《记忆碎片》的主角,每次对话结束就失忆) -
容易被误导
理解这些特点很重要,因为这决定了我们该怎么和AI协作。
部分自动化:比完全自动化更靠谱
Karpathy特别强调一个观点:与其追求完全自动化的AI代理,不如做好部分自动化的应用。
他举了Cursor(AI编程工具)的例子。Cursor不是让AI完全替你写代码,而是给你一个"自主权滑块":
-
最低档:简单的代码补全 -
中等档:修改选中的代码段 -
最高档:让AI重构整个项目
用户可以根据任务复杂度来调节AI的参与程度。
这让我想起特斯拉的自动驾驶。Karpathy提到,2013年他就体验过Waymo的完美自动驾驶演示,但12年过去了,我们仍然没有真正解决自动驾驶问题。复杂的现实世界任务,远比demo展示的要困难得多。
所以现在那些喊着"2025年是AI代理元年"的人,Karpathy觉得太乐观了。他的判断是:这应该是"AI代理的十年"。
英语成为新的编程语言
这可能是整个演讲最激动人心的部分。
Karpathy展示了一个视频:几个小孩子在用英文自然语言"编程",做出了各种有趣的小应用。他把这种现象叫做"vibe coding"(感觉编程?氛围编程?)。
这个词现在已经成了梗,甚至有了维基百科页面。
Karpathy自己也试了试vibe coding,用一天时间做了个iOS app,虽然他根本不会Swift。还做了个叫MenuGen的网站,你拍个菜单照片,AI就给你生成菜品图片。
但他发现一个问题:写代码是最简单的部分,部署上线才是噩梦。各种认证、支付、域名、服务器配置...这些devops的活儿都得在浏览器里手动点来点去,比写代码累多了。
这就引出了下一个话题。
为AI重新设计基础设施
现在的软件基础设施都是为人类设计的。到处都是"点击这里"、"选择那个下拉菜单"这样的指令。但AI不会点击,它需要的是API和结构化数据。
一些公司已经开始适配了:
-
Vercel把文档里所有的"click"都替换成了对应的curl命令 -
Stripe提供了专门给LLM看的markdown格式文档 -
出现了像robots.txt一样的llms.txt文件,告诉AI这个网站是干什么的
还有一些很cool的小工具:
-
把github.com改成gitingest.com,就能把整个代码库打包成LLM友好的格式 -
deepwiki.ai会分析你的GitHub项目,自动生成详细的文档
这些变化看起来很小,但意义重大。就像当年移动互联网兴起时,所有网站都要做"移动端适配"一样,现在我们需要做"AI适配"。
人机协作的艺术
Karpathy特别强调一点:AI生成,人类验证,这个循环要尽可能快。
为什么?因为AI虽然生成速度快,但质量不稳定。你还是需要人来把关。关键是如何让这个验证过程变得高效。
他的建议:
- 用GUI而不是纯文本
。看代码diff比读长篇文字快多了,一眼就能看出改了什么。 - 保持AI在可控范围内
。不要让AI一次性改动几千行代码,你根本审核不过来。 - 小步快跑
。一次解决一个具体问题,确保每一步都是对的。
这让我想起敏捷开发的理念:与其做完美的长期规划,不如快速迭代验证。
钢铁侠战衣 vs 钢铁侠机器人
Karpathy用了个很酷的比喻:我们现在应该做"钢铁侠战衣",而不是"钢铁侠机器人"。
战衣是增强人类能力的工具,人还是主导者。机器人虽然看起来更酷,但在现阶段不够可靠。
这个比喻很好地总结了他的核心观点:增强 > 替代。
我的一些思考
听完这个演讲,我有几点感想:
1. 技术采用的渐进性
每次重大技术变革都不是一夜之间完成的。PC革命花了20年,互联网革命花了20年,移动革命也花了10多年。AI革命可能也需要类似的时间。
2. 基础设施的重要性
现在大家都在关注模型本身,但真正的机会可能在基础设施层面。谁能让AI更容易使用、更容易集成,谁就掌握了主动权。
3. 人的价值在升级,不是消失
AI让简单重复的工作自动化了,但这释放了人类去做更有创造性、更需要判断力的工作。关键是要学会与AI协作。
4. 新的技能需求
未来可能不需要每个人都会编程,但需要每个人都会"prompt engineering"——知道怎么和AI沟通,让它做你想要的事情。
结语
Karpathy最后说,现在是进入软件行业最好的时机之一。因为我们需要重写大量的代码,需要构建新的基础设施,需要发明新的交互方式。
这让我想起2007年iPhone发布时的情况。当时很多人觉得就是个花哨的手机,但实际上它开启了一个全新的时代。移动应用、社交媒体、共享经济...这些今天看来理所当然的东西,在当时都是不存在的。
AI时代可能也是如此。我们现在看到的ChatGPT、Cursor这些应用,可能只是冰山一角。真正有趣的东西,还在后面等着我们去发明。
所以,准备好了吗?软件的新时代已经开始了。


《ChatGPT全方位攻略:技巧与示例》
阅读本书无需任何计算机技术或人工智能知识背景
本书内容:介绍ChatGPT和微软Copilot的用法,提示词的核心要素和高阶设计,以及中文应用中的技巧和策略。查询和使用GPTs的技巧,以及制作GPTs的流程和方法。通过示例展示ChatGPT在日常生活和工作中的实际应用,让ChatGPT成为你解决各种问题的助手,激发你的应用想象力。


扫码试读
(浏览器中打开)
