史诗级预言!Karpathy演讲刷屏:软件30人人皆「代码之神」
发布时间:2025-07-06 17:48:28  阅读量:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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