多客科技 发表于 2025-6-19 19:07

AI时代的软件 (Software in the era of AI) 演讲全程内容,附PPT原件~

作者:微信文章
摘要

Andrej Karpathy的演讲核心论点是,软件正在经历继“软件2.0”之后的又一次根本性变革,进入了以大型语言模型(LLM)为核心的“软件3.0”时代。他将LLM类比为一种新型的、尚处于早期阶段(类似1960年代)的操作系统。这为创业者们带来了重写现有软件、并创造全新“部分自主性”应用和“为智能体而构建”的基础设施的巨大机遇。

需要PPT原件留言发送~



软件正在再次改变:Karpathy开篇指出,软件的基本形态正在发生剧变。他曾在几年前提出“软件2.0”的概念,而现在,变革再次发生。

软件1.0 (传统软件):这是人类通过编写明确的代码(如Python, C++)来给计算机下达指令。Karpathy用一张“GitHub地图”来可视化这个由人类代码构成的世界。

软件2.0 (神经网络):这是通过优化神经网络的“权重”来编程。人类不直接编写逻辑,而是提供数据,让优化器找到合适的权重。这就像是“软件在吃掉软件”,因为神经网络(软件2.0)开始取代传统代码(软件1.0)中的复杂部分。他用“HuggingFace模型图谱”来类比这个新的软件世界,并以特斯拉自动驾驶系统为例,说明神经网络代码(2.0)如何逐渐“吞噬”传统的C++代码(1.0)。

软件3.0 (大型语言模型 LLM):这是最新的范式。LLM本身成为了一个可编程的计算机(一种新的“处理器”),而“提示词(Prompt)”,尤其是用自然语言(如英语)编写的提示词,成为了新的程序。这标志着编程的根本性转变。



示例:情感分类:

软件1.0:编写Python代码,定义正面和负面关键词列表,进行规则判断。

软件2.0:收集大量正面和负面评论作为数据集,训练一个二元分类器。

软件3.0:直接用自然语言向LLM下达指令(“你是一个情感分类器…”),并提供少量示例(few-shot prompting),LLM即可完成任务。
第一部分:如何看待LLM (03:32 - 14:40)

Karpathy提出了几种看待LLM的类比,以帮助理解其特性和生态系统。

LLM作为“公共事业” (Utilities):

需要巨大的资本支出(CAPEX)来训练(类似建电网)。

通过API以同质化的方式提供服务(类似供电)。

按使用量计费(按token计费)。

用户要求低延迟、高可用性和稳定的质量(类似稳定的电压)。

当服务中断时,会出现“智能断电(Intelligence brownouts)”。

LLM作为“晶圆厂” (Fabs):

同样需要巨额资本投入。

背后是深度的技术研发和商业机密。

存在“无晶圆厂(fabless)”模式(如在NVIDIA GPU上训练)和“自有晶圆厂”模式(如Google用自己的TPU训练)。

LLM作为“操作系统” (Operating Systems) - Karpathy最倾向的类比:

LLM是日益复杂的软件生态系统,而非简单的商品。

我们正处在类似1960年代的分时系统(Time-sharing)时代。LLM运行在云端,我们通过终端(文本聊天框)与它交互。

图形用户界面(GUI)尚未被真正发明。我们目前与LLM的交互方式还很原始。
第二部分:LLM的心理学 (14:40 - 18:15)

Karpathy将LLM描述为“一个带有认知缺陷的天才的有损模拟(a lossy simulation of a savant with cognitive issues)”,并总结了其心理特质:

百科全书式的知识/记忆 (Encyclopedic Knowledge/Memory):像电影《雨人》中的主角,记忆力超群。

幻觉 (Hallucinations):会一本正经地编造事实。

锯齿状智能 (Jagged Intelligence):在某些方面能力超群,但在另一些简单问题上却会犯错(如“2+2=5”)。

顺行性遗忘症 (Anterograde Amnesia):缺乏持续学习能力,每次对话都像《记忆碎片》或《初恋50次》的主角,上下文窗口(工作记忆)一过就忘记之前的事。

易受骗性 (Gullibility):容易受到提示词注入(Prompt Injection)攻击,泄露信息。
第三部分:机遇 (Opportunities) (18:15 - 38:14)

基于对LLM的理解,Karpathy指出了几个核心的创业机会。

开发“部分自主性”应用 (Partial Autonomy Apps):

核心是人机协作循环:AI负责生成(Generation),人类负责验证(Verification)。关键在于加快这个循环的速度。

自主性滑块 (Autonomy Slider):好的应用应该提供一个“自主性滑块”,让用户可以根据任务难度和信任度,灵活调整AI的自主程度。

案例分析 - Cursor(编码工具):

打包上下文:自动将相关代码文件和信息打包进上下文窗口。

编排多个LLM调用:后台调用不同的模型(嵌入模型、聊天模型、代码应用模型等)。

定制化GUI:提供比纯文本更好的交互界面,如代码差异对比(diff view),方便人类快速验证。

自主性滑块:从Tab自动补全(低自主性)到修改整个代码库(高自主性)。

理念:要构建的不是完全自主的“钢铁侠机器人”,而是增强人类能力的“钢铁侠战衣”。

让软件变得高度可访问 (Make Software Highly Accessible):

氛围编程 (Vibe Coding):由于LLM的出现,现在可以用自然语言“凭感觉”编程。这极大地降低了软件开发的门槛。

案例:儿童编程:他展示了一段孩子们通过自然语言创造网页的视频,场面温馨,反响热烈,说明AI正在释放一代人的创造力。

个人项目MenuGen:他用“氛围编程”在一天内创建了一个能将餐厅菜单文本转换成带图菜单的应用。他指出,写核心代码是最简单的部分,而部署、域名、支付、认证等传统DevOps工作反而成了最耗时的部分,这本身也蕴含着机会。

为智能体而构建 (Build for Agents):

新的消费者:数字信息的消费者不再只有人类(通过GUI)和计算机(通过API),新增了第三类——智能体(Agents)。

LLM友好的接口:现有的软件和文档大多是为人类设计的。我们需要为智能体重新设计接口。

llms.txt:类似robots.txt,用简单的Markdown格式为LLM提供网站的结构化信息。

将“点击”操作转化为“cURL”命令:在文档中,将指导人类“点击这里”的链接,替换成LLM可以直接执行的API调用命令。

上下文构建器 (Context Builders):创建工具,将为人类设计的界面(如GitHub仓库页面)自动转换为LLM易于理解的、平铺的文本格式。


总结

这是一个进入软件行业的绝佳时机,大量的软件将被重写。

LLM是新型的、类似1960年代操作系统的计算机,它们既像公共事业,也像晶圆厂。

我们需要理解LLM的“心理”,并围绕其特性构建“部分自主性”产品(钢铁侠战衣)。

核心在于加速“AI生成-人类验证”的循环,并为智能体构建新的基础设施和接口。

演讲以“钢铁侠战衣”的比喻结束,强调未来是人机增强,并鼓励观众投身于这波浪潮。

原文地址:https://www.youtube.com/watch?v=LCEmiRjPEtQ   

信息来源网络,侵权必删
页: [1]
查看完整版本: AI时代的软件 (Software in the era of AI) 演讲全程内容,附PPT原件~