史诗级预言!Karpathy演讲刷屏:软件3.0,人人皆「代码之神」

2025-06-20 发布 · 浏览18次 · 点赞0次 · 收藏0次

【导读】软件3.0,不止Vibe Coding!Karpathy重磅演讲,揭示软件深刻重构——已从「写代码」走向「说人话就能编程」的新时代。

Karpathy的演讲刷屏了!

基于在斯坦福大学、OpenAI和特斯拉的工作经验,Karpathy观察到软件变革正在悄然发生——软件正在再次进化。

他认为我们已进入「软件3.0」时代,自然语言成为新的编程接口,而模型则完成剩余工作:

大语言模型LLM=可编程神经网络

软件一直在变,但在过去的70年里在根本层面上并没有太大变化,而在过去几年中却快速变化了两次。

因此,他认为:「未来还有大量软件需要重写、重构。」


在YC放出的软件3.0的完整视频,Karpathy深入探讨了这种转变对开发者、用户及软件设计本身的意义:

我们不仅在使用新工具,更是在构建一种新型计算机。


软件3.0:尽情说出你的需求

从2023年以来,Karpathy就把下列推文置顶:

最火的新编程语言是英语。


他还发明了「Vibe Coding」(氛围编程)这一词汇,来描述直接用自然语言编程的情景。

Karpathy认为这是软件工程领域的未来。这从开源代码就能看出来。

「GitHub地图」展示了所有已经被编写的软件,也就是计算机在数字空间中执行任务的指令。放大来看,包含了不同类型的代码仓库,也就是编写的所有代码。


几年前,他注意到软件正在发生变化,出现了新型的软件,当时称之为「软件2.0」。


基本的想法是:

软件1.0是程序员亲自为计算机编写的代码。

软件2.0则是神经网络的权重参数。不再直接编写这些代码,而是更多地在调整数据集,并运行优化器来生成神经网络的参数。

当时神经网络只是被当作另一种分类器,比如决策树之类,所以这个框架在当时还是很有意义的。


现在有了「软件2.0」版GitHub平台,比如HuggingFace就是软件2.0世界中的GitHub。而Model Atlas也可以可视化这些模型全部参数的「代码」。


所以,总结一下:

  • 软件1.0:编程计算机的传统代码。

  • 软件2.0:用来编程神经网络的权重。

  • 软件3.0:现在我们有了可编程的神经网络——大语言模型(LLM),而提示词(prompt)成了「编程语言」,而且这些提示词直接用人类语言写的!


比如你要做情感分类,可以:

  • 写Python代码(软件1.0);

  • 训练神经网络(软件2.0);

  • 直接提示大语言模型(软件3.0)。


现在GitHub上的代码已经不仅仅是代码了,而是掺杂着大量英文,自然语言变成了新的「代码」。


这是根本性的转变:过去程序要把人类需求翻译为「机器语言」,现在直接把需求输入到LLM即可。

如果用语音模式,这就是「软件3.0」的「言出法随」:真正做到了用嘴编程!

人人都是程序员?

不仅拥有新的编程方式(用自然语言),而且每个人都能成为程序员。

因为大家都会用语言表达想法,忽然之间都有了编程能力。

这前所未有,也令人振奋。

过去,想要在软件行业做点什么,通常需要花5到10年的时间学习编程语言、工具链、工程实践等等。但现在,不再是这样了。

现在,小孩子都做到Vibe Coding。

Karpathy认为,这会成为下一代「走进软件开发」的入门方式,就像「网球王子」让人爱上网球一样。

Vibe Coding真的很有趣。特别是当想快速做一个非常定制化的小项目,市面上又没有现成产品时,Vibe Coding非常合适。

Karpathy做了一个iOS应用Menu Gen虽然他并不懂需要的编程语言。


不是「电力」,而是新操作系统

吴恩达曾经说过:「AI是新的电力。」


Karpathy觉得LLM现在确实表现出了「基础设施」的一些特性,但更贴切的类比也许是:LLM更像是新的操作系统

不仅仅是像水电一样的商品,AI是日益复杂的软件生态系统。

这和过去的操作系统生态有些相似:有闭源的操作系统,比如Windows或macOS,同时也有Linux之类的开源系统。


在LLM领域,也看到了这种格局:几个主流的闭源模型(如GPT、Claude等),再加上开源的LLaMA等。


不仅仅是LLM本身的能力在提升,还包括它们使用工具的方式、多模态能力的扩展等等。这一切构成了一个真正复杂的软件生态系统。

在他看来,AI就像新型计算机,LLM像新的「CPU」:

上下文窗口相当于内存;

而整个LLM则负责在这些资源之间协调内存与计算,以解决问题。


从这个角度看,它确实非常像一个操作系统。

今天可以在GPT、Claude、Gemini上运行同一个「LLM应用」,就像过去的软件一样。

另一个让他产生共鸣的类比是:现在的AI处于「1960年代的计算机时代」


目前LLM的计算成本仍然非常高,必须集中在云端运行,用户就像是当年的「哑终端」,通过网络与交互,占用云端运行批处理任务中的一个维度。

这正对应早期计算时代的操作系统模型:一切都在云端处理,通过网络传输,进行批量运行

「个人化AI计算机」尚未真正到来,也尚不清楚未来会是什么样子——或许在座的你们就将定义它。

另一个他喜欢的类比是:「当与ChatGPT利用文本交谈时,我就像是在用终端和操作系统对话。」这是文字输入,是最直接的操作系统访问方式。

但目前还没有真正意义上的「通用GUI」(图形界面)来与这些模型交互,没有一个统一的GUI适用于所有任务。

这就是一个巨大的空白。

当然,LLM在一些方面也和传统操作系统或早期计算设备截然不同。LLM与传统技术扩散路径之间,存在关键差异:它们颠覆了技术扩散的方向


回顾历史,我们会发现很多变革性的技术,比如电力、密码学、计算、飞行、互联网、GPS等,最初都是由政*或大型企业首先使用的——因为这些技术昂贵且复杂,普通人无法早期接触。

而LLM刚好相反,完全颠覆了以往「从上至下」的技术扩散模型。

这也让大家反思未来该如何定义这些工具的用途、产品设计和早期应用场景。


「伪人」:人类随机模拟器

LLM到底是什么?

Karpathy喜欢从「心理学」的角度来看待LLM。

他认为LLM就像「人类精神」的模拟体——它们是人类的「随机模拟器」。


底层是「自回归Transformer」(auto-regressive transformer),也就是神经网络,逐个token预测,每个token的处理耗费计算量基本一致。

我们使用全网的文本数据训练这个模型权重,因此这个模拟器具备了某种「人类心理」的涌现能力。

比如:

  • 优点:LLM拥有百科全书般的知识与记忆能力,远远超过任何单一人类个体。它们可以轻松记住Git SHA哈希值、各种信息、文件结构等内容。就像电影《雨人》里的「自闭症天才」,能一字不差地背下电话簿。

  • 缺点:LLM同时也存在很多「认知缺陷」,比如容易幻觉(hallucination),胡编乱造,缺乏对自身知识状态的良好感知。

  • 智能参差不齐:它们在某些任务上表现超人,但有时却会犯一些基本错误,比如说「9.11大于9.9」。这种「锯齿形智能」现象很独特。

  • 前向性遗忘:LLM不具备持久学习的能力。


还有一个重要方面是:安全问题

LLM非常容易受骗,容易受到「提示注入攻击」(prompt injection),可能会泄露数据。

总而言之,我们面对的是超人般强大、同时也存在显著认知缺陷的AI系统

这场变革不仅重塑工具形态,更改变了软件设计的哲学。

AI新时代,编程的价值

我们必须一边利用它的超能力,一边绕过它的弱点,学会如何与它协作、如何编程。

如果你正在开发一个产品或服务,要思考:

  • LLM能否像人类看到一切内容?

  • LLM能否像人类一样操作一切?

  • 人类能否保持在控制、监督LLM行为?

因为这些AI系统并非完美,它们会犯错。

在LLM应用中还有一点往往被忽视,那就是:

我们正在与AI合作——AI负责生成,人类负责验证。

我们需要尽可能地加快这个生成—验证的循环,这样才能真正提高效率。


有两个主要策略可以实现这个目标:

加快验证速度。GUI非常关键。视觉界面能调动人类大脑「图像识别GPU」,而阅读文本费力又不直观。图形界面是直通大脑的高速通道。

牢牢地把AI控制在手上。很多人现在对「AI智能体」(agent)过于兴奋。但实际上,如果AI给软件repo提交了10,000行代码,那人类审查员就是最大瓶颈:还得逐行确保没有引入bug,没有安全问题等等。

在实际工作中,Karpathy总是害怕AI一次性给出太大改动。他追求的是高速、可控的协作循环

最近,他读到了「与LLM合作的最佳实践」,认为很不错:

  • 它强调「明确的提示语」(prompt)很关键;

  • 如果提示太模糊,AI可能偏离预期,导致验证失败;

  • 一旦验证失败,就要不断试错、反复循环;

  • 所以花点时间写更明确、清晰的prompt,其实是提高效率的关键。


「AI战衣」:10年致富路

Karpathy非常喜欢钢铁侠的设定,它在许多方面都对技术的发展方向做了准确的预言。

他喜欢钢铁侠战衣的一点在于:

它既是一种增强(augmentation),主人可以亲自操控;

它也可以作为智能体(agent),在某些时候中它可以自己飞来找主人,自动完成任务。


这就体现了「自治滑块」(Autonomy Slider):我们可以构建「增强型工具」(像战衣),也可以构建「自主代理」(像战衣自己飞行)。

我们想做的是「两者兼备」。比如,在LLM应用Cursor中,可以选择:

  • 只用代码补全(全权掌控);

  • 选择某段代码,按Command+K改动一小部分;

  • 修改整个文件(Command+L);

  • 或者放手让AI自由操作整个项目(Command+I)——这就是「全自治」模式。


再举一个成功的例子:Perplexity,具备Cursor类似的特性:汇总大量信息、在后台协调多个LLM、提供可供用户「审核」的GUI等。

它也有自治滑块:可以进行快速搜索、普通研究,或者更深入的研究,十分钟后返回结果。这些选项代表赋予工具的不同程度的自治权。

但目前,面对尚不完美的LLM,Karpathy更倾向于「钢铁侠战衣」式的AI系统

  • 少一些「独立运行的机器人」,多一些「增强型工具」;

  • 少一些花哨但不可控的自动化演示,多一些实用、可审核的「部分自治」产品。

这些产品应该拥有专属的GUI和交互设计(UI/UX,确保人类可以快速生成与验证结果。

产品设计中应包含「自治滑块」,并思考如何逐步右移它,让产品变得越来越自主。

这将是未来十年巨大的机会所在。

互联网上的鬼魂

大致来说,他认为我们正在迎来一个新的数字信息消费者与操作者的时代

过去,数字系统的用户只有两类:

  1. 终端用户通过GUI(图形界面)与系统互动;

  2. 程序通过API直接调用系统。

而现在,迎来了第三种实体:AI智能体(Agents)

它们是计算机,但行为类似人类。它们就像「互联网的灵魂」,需要与软件基础设施交互。

那我们能不能为它们构建专属支持

目前大量的文档都是为「人类」写的,里面包含各种列表、加粗、图片……这对LLM来说很难直接理解。

但Karpathy看到一些公司,比如Vercel和Stripe,已经开始提供专为LLM优化的markdown文档。

只要文档对AI友好,LLM就能真正变成「超级助教」甚至「自动操作员」

当然,仅仅把文档变成markdown还不够。我们还得改变文档本身的写法

比如Vercel就正在做这件事:把文档中所有「点击」操作,替换成相应的curl命令,这样LLM就可以自动化处理。还有像Anthropic的Model Context Protocol,提供了与代理沟通的一种标准化协议。这是一个值得关注的方向。

总之,我们需要让软件更易于被AI理解和操控

虽然未来LLM也许能点击、能导航,但现在这些操作还成本高、效率低。我们应该主动迎合它们,以最低成本获得最大效益。

最后总结一下:

  • 现在是进入软件行业的绝佳时机;

  • 我们需要重写大量代码,也需要写适配AI的新代码;

  • LLM是新「操作系统」,就像1960年代的计算机;

  • 大模型是「有缺陷的超级智能」,我们要学会与之合作;

  • 在构建AI应用时,我们需要工具、范式和流程来高效协作;

  • 我们也应该构建适合智能体直接使用的软件接口和文档结构。

软件3.0是趋势,更是机会。准备好与AI并肩作战了吗?

参考资料:

https://www.youtube.com/watch?v=LCEmiRjPEtQ

史诗级预言!Karpathy演讲刷屏:软件3.0,人人皆「代码之神」 - AI 资讯 - 资讯 - AI 中文社区

声明:本文转载自新智元,转载目的在于传递更多信息,并不代表本社区赞同其观点和对其真实性负责,本文只提供参考并不构成任何建议,若有版权等问题,点击这里。本站拥有对此声明的最终解释权。如涉及作品内容、版权和其它问题,请联系我们删除,我方收到通知后第一时间删除内容。

点赞(0) 收藏(0)
0条评论
珍惜第一个评论,它能得到比较好的回应。
评论

游客
登录后再评论
  • 鸟过留鸣,人过留评。
  • 和谐社区,和谐点评。