原野: 哎呀,最近Karpathy大神又扔出来一个重磅炸弹,说软件这玩意儿又双叒叕要变天了!他那个“再次”用得可太有意思了。来来来,赶紧给我们捋捋,这到底是个啥变法儿?从他说的什么“软件1.0”、“2.0”,最后怎么就跳到咱们今天这个“3.0”了呢?
晓曼: 那必须的!这演变过程啊,说白了挺明白的。Karpathy老爷子说的“软件1.0”,就是咱们老一套,程序员们跟苦行僧似的,一行行C++、Python、Java敲出来,手把手教电脑“喂,你得这么干!”那种。整个世界都是咱们说了算,精确得就像钟表一样。
原野: 嗯,行吧,就是咱们过去那些个“敲键盘”的活儿。那“软件2.0”,这又是个什么新鲜玩意儿?
晓曼: “软件2.0”啊,它就厉害了,核心词不再是“写”,而是“训”!你想啊,以前是咱们手把手教,现在是直接扔给它一堆数据,让它自己去“悟”,去“学”。就像你不用告诉孩子猫长啥样,直接给他看几百万张猫片,他自己就琢磨明白了。咱们写的那些代码,就跟搭了个空架子似的,真正的“聪明劲儿”,全在它自己琢磨出来的那些个“权重”里头呢。
原野: 哎,我记得他好像还拿特斯拉自动驾驶那事儿打了个比方,说得特别形象,什么“软件2.0吞噬1.0”。这到底是个啥故事,快给我们讲讲!
晓曼: 没错,这个例子简直是教科书级别的!特斯拉自动驾驶刚开始的时候,好多功能那都是用C++,也就是“软件1.0”硬写的。你想想,判断雨刷要不要开,得写多少条规则啊?什么雨滴大小、车速、光线强度……结果后来他们发现,直接扔个神经网络进去,把摄像头拍到的视频一股脑儿给它,让它自己去判断,嘿,效果反而更好,还更稳!就这么着,几万行C++代码,哗啦一下,就被一个训练好的神经网络文件给顶替了!这就是他说的,“软件2.0”把“软件1.0”给“吃”了。
原野: 哇塞,这听着就已经够颠覆三观的了!那现在他提的那个更神秘的“软件3.0”,这又是个什么鬼?
晓曼: “软件3.0”啊,那就是咱们现在正身处其中的这场大戏,主角就是那些个大型语言模型,也就是LLM!它最炸裂的地方在于,你不再需要敲什么Python、C++了,直接用咱们说的人话,比如中文、英文,就能给它下指令!你给它几句“提示词”(Prompt),它就能帮你把事儿办了。Karpathy他自己都在推特上说,现在感觉自己简直是在“用英语编程”,而且还觉得这事儿“太不可思议了”!
原野: “用英语编程”,哎呦,这画面感简直拉满了!能再用个咱们日常都能听懂的比喻,给我们好好解释解释这到底是个什么魔幻操作吗?
晓曼: 嗯,这么说可能就明白了:“软件1.0”呢,就像你自己撸起袖子,一砖一瓦、一水泥一水泥地盖房子,图纸画得贼细,每个螺丝钉都要你亲手拧。“软件2.0”呢,就像你请了个聪明学徒,你不教他具体怎么砌墙,而是扔给他几万套房子设计图,让他自己去“悟”,去“学”,学完了自己盖。到了“软件3.0”,那简直了!你直接跟一个建筑大师说:“大师,我想要个面朝大海、春暖花开的大别墅,还得有个能看星星的落地窗!”然后这位大师就能把这事儿从头到尾给你搞定,你只需要动动嘴皮子,表达你的“心愿”就行了!
原野: 我的天,这简直是颠覆性的变化啊!既然LLM是这“软件3.0”的心脏,那Karpathy老哥又是怎么看这些模型本身的呢?他好像还用了一些特别有意思的类比,来,咱们接着就聊聊这些传说中的“新计算机”到底是个啥玩意儿。
晓曼: 可不是嘛!他对LLM的定位,那可不是简简单单一个工具那么回事儿。他直接把它们提升到了“全新计算基础设施”的高度!
原野: 哎呀,我看到他用了好多比喻啊,什么水电煤啊、晶圆厂啊,甚至还有操作系统。这听着八竿子打不着啊,他到底想通过这些比喻,告诉我们LLM是个什么妖魔鬼怪?
晓曼: 他啊,是想说LLM的几个关键特性。说它是“水电煤”,就是告诉你,这玩意儿正变成像电一样,无处不在的基础设施,上层各种智能应用都得靠它才能转起来。那比作“晶圆厂”呢,是因为训练一个顶级的LLM,那烧钱烧得简直是天文数字,动不动就几十上百亿美元,所以啊,也就那么几家财大气粗的巨头玩得起,跟造芯片那逻辑简直一模一样,都是高度集中,烧钱如流水啊!
原野: 他还有一个特有意思的比喻,说LLM要是宕机了,就像是“智能的布朗运动”。哎呦,这听着就挺逗的,快给我们掰扯掰扯,这是个啥意思?
晓曼: 这个比喻简直是绝了!你想啊,当GPT-4这种顶流模型突然“歇菜”一会儿,你就会感觉整个互联网的“平均智商”都跟着往下掉了!那些靠它写代码的、搞研究的、写论文的,无数人瞬间就傻眼了,效率直线下降,就跟家里突然停电了一样!这种全球性的“智商下线”,恰恰说明LLM已经渗透到咱们数字生活的骨子里了,它要是打个喷嚏,全球的“智能”供应都得跟着哆嗦一下!
原野: 在这么多比喻里,Karpathy好像觉得LLM最像的还是操作系统。哎,这又是为啥呢?它跟咱们平时用的Windows或者macOS,到底有啥一样又有什么不一样的地方啊?
晓曼: 他觉得啊,这个比喻最到位了!你看,现在市场上就那么几家闭源的、巨无霸LLM,比如OpenAI的GPT系列,这不就是当年的Windows嘛,一家独大。但同时呢,也冒出了像Llama这种开源模型,那不就是Linux嘛,给了大家一个能自己折腾、自己发展的机会。再往深了说,LLM那个所谓的“上下文窗口”,就跟电脑的“内存”(RAM)一样,你往里塞的信息越多,它能帮你搞定的事儿就越复杂。它现在就跟个地基似的,上面能跑各种各样的“智能应用”,这不就是操作系统的本职工作嘛!
原野: 哇,这个角度看问题,真是茅塞顿开啊!那他把现在的LLM时代比作计算机发展的“1960年代”,这又是在暗示什么玄机呢?
晓曼: 这个啊,就是说咱们LLM现在还在“婴儿期”呢!你想想1960年代的电脑,那都是些个又贵又大的“铁疙瘩”,普通人根本摸不着,只有那些大公司、研究院才能“分时租赁”用一下。这跟咱们现在通过API去调GPT-4,是不是有点异曲同工之妙?就是因为计算成本太高了,所以现在都集中在少数几家手里。他觉得,真正属于LLM的“个人电脑”时代,也就是咱们人人都能用上便宜又强大的本地LLM的那天,还没到呢!
原野: 哎,这些比喻听下来,咱们对LLM这个“新物种”的地位,算是有了更深刻的认识了。不过Karpathy也说了,这些“新计算机”啊,它们有自己独特的“脾气秉性”,还有不少明显的“小毛病”。那接下来,咱们就好好扒一扒LLM的这些个“特性”吧。
晓曼: 可不是嘛!他把LLM直接叫成了“人灵”,或者说“人的随机模拟”,这形容词简直是太到位了!意思就是说,LLM这玩意儿啊,就是啃了海量的人类文本数据长大的,所以它在某种程度上,就像是把人类的知识和说话的腔调给“模仿”了个七七八八。
原野: 那这种“人灵”的“心理活动”,具体都表现在哪儿呢?
晓曼: 最扎眼的就是它那“百科全书”级别的知识量!Karpathy拿电影雨人来打比方,电影里那个主角啊,记忆力好到变态,能把电话本上所有名字都背下来。LLM就跟雨人似的,互联网上公开的那些知识,它几乎是过目不忘。你随便问它个犄角旮旯的历史八卦,它可能都能给你讲得头头是道!
原野: 听着是挺牛的啊!但这雨人嘛,好像也有点“认知障碍”,那LLM是不是也这样啊?
晓曼: Bingo!你算是问到点子上了,这正是Karpathy反复敲黑板强调的!LLM啊,它有几大“硬伤”。第一个就是那个臭名昭著的“幻觉”,它能一本正经地跟你瞎掰,凭空编造事实,比如它可能会跟你说“9.11比9.9大”,因为它脑子里全是“9/11事件”那堆数据。第二个呢,叫“锯齿状智能”,就是说它的能力啊,那是相当的不均衡,可能量子物理它能跟你侃得飞起,但你让它数数一个单词里有几个“r”,它可能就给你数错了!简直就是个某些方面是天才,某些方面是白痴的“矛盾综合体”!
原野: 哎,他还有个比喻特逗,什么“记忆碎片”啊,“50次初恋”啊,说的是LLM的“逆行性失忆”。这又是个什么梗?
晓曼: 这个比喻简直是神来之笔!那两部电影的主角啊,每天醒来都是“格式化”了,完全记不住新发生的事儿。LLM也差不多,它可没什么真正的学习和记忆功能。你跟它聊完天,一关窗口,它就跟“断片儿”了一样,下次再聊,你还得把前情提要再给它说一遍。它只有那种“临时记忆”,没有“永久记忆”。这对于咱们设计应用来说,可真是个大启发,意味着你得想方设法地给它“喂”上下文,才能让它“记住”你说过的话。
原野: 哦,明白了,它就像一个学富五车但随时会“失忆”的雨人啊!那面对这么一个既牛掰又有点“不靠谱”的“人灵”,Karpathy老哥又给我们描绘了哪些“发财”的机会呢?
晓曼: 他觉得啊,最好的应用模式,不是让AI撒丫子跑,而是搞那种“半自动”的应用。核心思想就八个字:“AI生成,人类验证”。咱们人类啊,得一直坐在驾驶位上,当那个最终的“把关人”和“拍板者”。
原野: 他是不是还拿Cursor和Perplexity这两个应用举例子来着,讲怎么才算好的“半自动”应用啊?
晓曼: 没错!Cursor那个AI编程助手啊,它帮你写代码或者改代码的时候,不会直接给你“一锤子买卖”,而是像Git那样,用红绿两种颜色把修改的地方标得清清楚楚,让你一眼就能看明白,然后你再决定要不要“收货”。Perplexity呢,它是个AI搜索引擎,给你的每个答案下面都乖乖地附上链接,方便你去查验。这些设计啊,说白了就是给你一个“自主性滑块”,你想让AI帮你到什么程度,都能自己调,而且还能轻松地去“验货”,特别放心。
原野: Karpathy还用了一个特别酷的比喻——“钢铁侠战衣”,来形容他心目中理想的AI应用呢!
晓曼: 对!这个比喻的核心思想就是:“增强”,而不是“取代”。钢铁侠那套战衣啊,是让托尼·斯塔克变得更牛掰,能上天入地,但最终的遥控器始终在斯塔克自己手里。咱们就应该奔着这个方向去,把AI打造成一件件能把咱们人类智慧和效率无限放大的“神装”,而不是去捣鼓一个完全不受控的“终结者”出来!这缰绳啊,必须得牢牢地拽在咱们手里!
原野: “把AI拴在缰绳上”,这个点他确实是反复强调。那为啥咱们人类的验证和审计环节就这么重要呢?要是太追求完全的自主,会有啥大麻烦吗?
晓曼: 因为啊,LLM那个“幻觉”和“锯齿状智能”,它就是骨子里的毛病,改不了!你想想,要是一个完全放飞自我的AI代理,突然“犯病”了,它可能会在没人管的情况下,给你来个大规模的“自杀式”操作,比如把你的重要文件全删了,给你客户发一堆莫名其妙的邮件,或者在金融市场给你搞出个惊天大窟窿!那风险,简直是不可估量!所以,咱们人类的验证,不光是保证质量,更是一道救命的“安全阀”啊!
原野: “半自动应用”这路子,听着确实是条康庄大道。不过Karpathy老哥好像还看到了另一个超级大的机会,就是那个什么“Vibe Coding”,这又是啥新鲜词儿?
晓曼: “Vibe Coding”啊,这是他提出来的一个特别有意思的词儿,你可以理解成“凭感觉编程”,或者更时髦一点,叫“氛围感编程”!意思就是说,你不用懂什么Python、Java这些烧脑的编程语言了,你只需要用咱大白话,把你想做的应用那个“感觉”、那个“氛围”给它描述出来,然后LLM就能帮你把能跑的代码给变出来!
原野: 我的天,这听着也太玄幻了吧!他自己亲手试过这招吗?
晓曼: 他可不光是说说,还亲自上阵了!他就这么跟LLM“聊”了几句,“提示”了几下,就迅速搞出来一个简单的个人iOS应用,还有一个叫“Menu Genen”的网站,能根据你冰箱里现有的食材,帮你生成一周的菜谱!这些例子简直就是活生生的证明,用咱们说的人话来编程,这潜力是无限的,它直接把编程的门槛给踩到脚底下了!
原野: 这听着,简直是要让“人人都是程序员”的梦想照进现实啊!不过,他是不是也指出了这其中的“拦路虎”?
晓曼: 对!他发现啊,用“Vibe Coding”搞个原型(Demo)那叫一个神速,但你要想把这个原型变成一个能稳定跑起来的真家伙,后面那些部署啊、测试啊、运维(DevOps)啊这些跟代码没直接关系的事儿,反倒成了新的“卡脖子”的地方。这说明啊,要想真实现“全民编程”,咱们不光得把写代码这事儿搞简单,还得把整个软件工程的流程都给“瘦身”才行!
原野: 除了让更多人能敲代码,Karpathy还提出了一个特别“烧脑”的视角转换:他说咱们不光要给人类设计软件,还得开始“为AI代理构建”基础设施了!这又是个什么神仙操作?
晓曼: 这个洞察啊,简直是太深刻了!你想啊,以前咱们搞的网站、应用、API,那都是给人看的,充满了各种花里胡哨的视觉元素和模棱两可的指令。比如一个登录页面,咱们会写“点这里用谷歌登录”,人一看就懂,但AI代理呢,它就犯迷糊了。所以,“为AI代理设计”,就是说咱们得把东西变成机器能直接读懂的、结构化的指令。比如,把那个“点这里”变成一个精确的API调用命令,或者直接甩给它一份机器能直接解析的Markdown文档,而不是一个光鲜亮丽的网页!
原野: 天呐,这可真是个从根儿上动刀子的转变啊!从“点这里”到“curl命令”,感觉咱们整个数字世界的老底儿都得重新翻出来琢磨一遍了!
晓曼: 可不是嘛!GitHub现在就在干这事儿,把那些堆积如山的代码库(Codebase)都给“装修”了一下,变成LLM更容易“消化吸收”的格式。所以啊,未来一个网站或者服务“对AI有多友好”,说不定就成了它的“核心竞争力”了!因为以后啊,越来越多的“用户”,可能都不是咱们人类了,而是那些替咱们干活的AI代理!
原野: 哎,今天这么一听啊,从软件怎么变身,到LLM这“新电脑”的真面目,再到人机怎么“搭伙儿”干活儿,Karpathy大神真是给我们描绘了一幅波澜壮阔的技术变革画卷啊!
晓曼: 没错,他把这事儿说得明明白白,咱们现在啊,就站在一个历史性的“岔路口”上。这可不光是工具升级那么简单,更是咱们脑瓜子里的思维模式要彻底“翻新”!这就是Karpathy嘴里的“软件3.0”,它不只是代码的小打小闹,而是一场由大型语言模型掀起来的,全新的编程模式大革命!
原野: 就像他说的,咱们现在正处在LLM发展的“1960年代”,这意思就是说,前方有无限多的机会等着咱们,当然了,也少不了那些个“拦路虎”。所以啊,怎么抓住这些机会,把未来打造成一个人类和AI能够智能高效“合伙儿”干活儿的世界,这可能真是咱们每个人都得好好琢磨琢磨的大事儿了。