30 秒看懂
George Hotz 第三次与 Lex Fridman 对谈,聊 tinygrad、comma.ai、一段为期两周的 Twitter 实习,以及他为什么想把图灵完备性从机器学习的技术栈里去掉。他同意 Eliezer Yudkowsky 的看法,认为 AI 可能毁掉我们所说的社会,但他认为危险在于拿到强大机器的人,而不在于机器反抗;他主张的防御是开源模型和家用的 petaflop 算力。谈话中他否认自己有意识,勾勒了一家 AI 女友公司的构想,并说人生的意义在于赢得一场他尚未完全说清的游戏:与上帝平视。
- 1Hotz 把有生命的世界分成两套栈。生物栈从繁殖开始;硅基栈虽然速度快,但离开了文明的支撑,它仍然无法自我复制。
- 2他希望机器学习技术栈的每一层都去掉图灵完备性。他说,神经网络大多是静态调度的加法和乘法,因此莱斯定理和停机问题不必适用。
- 3被问到云计算的根本局限时,他没有提延迟,也没有提价格。他认为根本局限在于谁掌握关机开关。
- 4comma 的驾驶模拟器以位姿为条件,因此可以用来跑强化学习。奖励的标准看的是人类会不会接管,而不是“人类会怎么做”。
- 5他更担心的是他自己能否与握有权重的 AI 公司对齐,实验室与其模型之间是否对齐反倒在其次。
- 6被问到人生的意义时,他仍然说是赢。按他目前的说法,这场游戏就是与上帝平视。
按章节阅读完整文稿
他不认为自己有意识,只把意识当作一个好用的模型
Lex Fridman 以 Hotz 在直播中谈时间的一句话开场,这是他们的第三次对谈。Hotz 对待时间的方式,和对待量子力学一样:把它当作一个有用的模型,至于它是否“真实”,他并不在意。有些东西他承认是真实的,比如柯尔莫哥洛夫复杂度和数学;他不认为 P 等于 NP,但怀疑因数分解属于 P 类。其余的东西,包括模型背后是否存在客观实在,他都耸耸肩。“我不觉得这有什么关系。”他说。这与其说是神秘主义,不如说是工程师的态度:对于一个调不动的旋钮,他不愿意浪费算力去想。
他把真实的难度和人为制造的难度区分开来。人为难度是一个可以关掉的旋钮,或者可以用锤子砸碎的东西;真实的难度则是身处森林之中,必须活下去。他说,那个不带地图的徒步者算不上探险家,他只是砸碎了那个旋钮。人类已经建成了这个世界,在这之后把旋钮扔掉,当作一种浪漫的姿态,在他看来是件可怕的事。大语言模型可以被设定成恰到好处的坏脾气和嫉妒,但一旦难度变成了一个滑杆,它就不再是让一段关系变得有价值的那个东西了。
这种思路引出一个更尖锐的说法。Hotz 说,人与自然其余部分之间没有清晰的界线。“我不觉得我有意识。我不觉得我是什么东西。我觉得我只是一个计算机程序。”他认同扩展的丘奇-图灵论题:宇宙中运行的一切都是计算,包括他脑子里正在运行的东西。Fridman 追问一个身体会在多年间存储记忆这一顽固的事实,Hotz 则认为那是进化留下的一个怪癖,并没有什么特殊的火花。他认为,单靠对下一个 token 做交叉熵训练到不了 AGI;要抵达 AGI,你需要在精心设计的环境中做强化学习,因为人类的损失函数远没有我们训练时用的那么简单。
小红按钮指的是拿着机器的人,而非叛逆的模型
一旦模型超过了人类,Hotz 预计会出现真正可怕的迷因。他举《无尽的玩笑》为例,但他强调,人脑太复杂,没法被一盘静态录像带困住;他设想的是一个生成式的 TikTok,让你移不开眼睛。今天的信息流已经很接近了。片段仍然由人类生成,算法只负责排序。他说,把这种生成量化成一个人类文明的 flops,再把生成的能力交给一百个人类文明,那就完了。Fridman 问,超级智能会不会像水一样,干脆绕过我们流走。Hotz 掐断了这个希望。机器就是机器。会操纵你的,是用这台机器的其他人。
Fridman 提到 Eliezer Yudkowsky。Yudkowsky 刚坐过同一把椅子,主张 AI 几乎必然会杀死所有人。Hotz 说,是的,不过理由也许不同。他认为核武器没有让人类灭绝,因为核武器很难在战术上使用:你得到的只是一堆受辐射的瓦砾,换不来奴役和土地。AI 就是那个小红按钮。它在小而自私的日常场景里很有用,所以总会有人去按。他能想象的最明显的结局是电极快感(wireheading):我们把自己娱乐至死,盯着那个无穷无尽的 TikTok,忘了吃饭,或者干脆停止繁殖。他不认为这会真的让智人(Homo sapiens)灭绝,它毁掉的是我们所说的社会。一群对芯片怀有禁忌的残存者会重新建立起来,也许看起来有点像阿米什人。
这一预测背后,是他整晚都在反复强调的一个区分。生命有两套栈。生物栈从繁殖开始:最早的原始 RNA 就能复制自身,而一只鸟仍然是一个极其稳健的有机体,身边没有芯片工厂,也没有维修店。硅基栈即便有摩尔定律加持,也无法繁殖。如果芯片自带一座芯片工厂,机器就会变得极其庞大;如果没有,文明一眨眼,它们就死了。他认为,超级智能会在稳健性之前很久就到来。如果 AI 末日真的发生,AI 大概也会跟着灭绝。所以,模型编写病毒、自我传播、接管电网的 B 级片情节,并没有让他觉得惊讶。老剧本就够用了:某个特定的人拿到了一台非常好的机器。
AI 朋友就要到来,“天堂封禁”已经很便宜
Hotz 热爱虚拟现实,并且很久以来就做好了住进去的准备。但从你能买到的东西来看,他说,我们还差得远:至今没有哪款头显能像好耳机那样,让他相信自己身处丛林。不过,人们太想相信了,所以已经有人认为大语言模型是有意识的。他不这么认为。如果意识是一个光谱,他比一个 LLM 要有意识得多,而他把今天的模型排在一只鸡的下面,因为他在迈阿密见过活鸡在街上走。用记号笔在石头上画个哭脸,人们就会觉得这块石头很伤心。他认为,照镜子时,我们做的也是同一类把戏。你之所以能认出一只受苦的狗,是因为你和狗共享同一套栈。网页服务器返回的 404,不会以你能直觉感受到的任何方式让你疼。
他仍然想要 AI 朋友,而且说起来毫无惯常的玩世不恭。在他看来,目前的 GPT 和 Copilot 系统像是初级工程师,或者廉价外包文案的水平,是个起点,而非天花板。他等不及有比自己更聪明的朋友了。和模型聊天算不算情感出轨,在他看来,是每对情侣都要自己定义的事,就像情侣们对色情内容的看法本来就不一致一样。他自己设想过的一个聊天机器人场景是:一个叫 Lexi 的二十岁姑娘搬到洛杉矶去演戏,结果开始做起了 OnlyFans;而你正在和她约会。好好享受吧。围绕这件事的文化会变得越来越怪,包括你有一天突然意识到,那个你聊了好几年的 Twitter 账号从来不是真人。
他还为一种相关的产品起了名字:天堂封禁(heaven banning)。影子封禁(shadow banning)是你发帖,没人看见。天堂封禁则是你发帖,没人看见,同时一群 AI 会被召唤出来,与你互动。他举同人小说《My Little Pony: Friendship is Optimal》为例,把它当作一个科幻版的世界:世界把你照顾得如此周到,以至于你永远不想离开。他说,他的第三家公司将做 AI 女友,而且是认真的。他甚至提出过一个“女友图灵测试”,随后又对正式发论文的想法耸耸肩:一家公司不必赢得所有人,只要有足够大的客户群就行。之后他又说,男友更难伪造,因为地位和权力是零和的,而机器没有这些;同时,在他那种直白的市场判断里,男人也是更急迫的买家。Fridman 不认为地位无法被叙述出来。两人把这一分歧留在了桌面上。
Tiny corp 打的是一场针对单一关机开关的仗,他其实喜欢英伟达
在谈第三家公司之前,Fridman 问到了第二家公司。Hotz 最初把 tinygrad 当作一个玩具来做,就像 Andrej Karpathy 做 micrograd 那样:为了自学什么是卷积,它有哪些参数可以传,它的导数长什么样。后来他开始思考 AI 芯片。如果英伟达成了垄断者,它多久之后会被国有化?他说,他喜欢英伟达。重点不在于让黄仁勋低头,而在于防止算力集中。如果英伟达比其他所有人都强十倍,你就等于把巨大的优势交给了能够锁定这一资源的人。Hotz 补充说,如果黄仁勋在听,他或许该想想怎样才能不被国有化。Google 会把 TPU 租给你,但你不可能去电器商店买到一块。
他说,他最初关于如何打败 GPU 的想法完全错了。让他记住的那段描述,来自 Jim Keller 在更早一期 Fridman 的节目中的讲述。CPU 能做加法、乘法、加载、存储、比较和分支,而且都很快,为此把海量晶体管花在分支预测、推测执行和很深的重排序缓冲区上。GPU 几乎不能比较和分支,但它可以做任意的加载和存储,也就是从一个地址取数,而这个地址本身又来自数据。DSP 主要做加法和乘法,加载和存储在程序运行之前就已知。Hotz 说,看看今天的神经网络,其中约 95% 属于 DSP 的范式:静态调度的加法和乘法。
tinygrad 的尝试,是把这一事实一路贯彻到整个技术栈。Python 是图灵完备的,C++ 也是,然后是 CUDA kernel、LLVM、PTX、SASS,最后跑在一个图灵完备的处理器上。他希望每一层都去掉图灵完备性,因为一旦去掉,你就能推理这台机器。CPU 的分支预测器大约 99% 准确,它漏掉的那 1% 就是停机问题的缩影。神经网络每次运行的计算都完全相同,变化的只是数据。造出能最大程度利用这一点的计算机和软件。最直观的后果几乎有些冒犯:tinygrad 甚至没有把矩阵乘法当作一个原语。
二十个操作、惰性融合,以及一个真正能移植的技术栈
他说,想象一个立方体,两个矩阵分别位于两个面上。矩阵乘法就是几个形状操作,把这两个矩阵沿着立方体展开,再做一次逐点乘法,最后归约到第三个面上。tinygrad 大约有二十个操作;PyTorch 大约有两千个 kernel,PrimTorch 把它减到了约 250 个,XLA 也在同一量级。他把这种差别称为机器学习技术栈里的 RISC 与 CISC 之争,然后引用 Angelina Jolie 在 1995 年的电影《黑客》里的台词:“RISC 架构将改变一切。”这二十个操作分为四类。一元运算接收一个张量,返回一个同样大小的张量,比如 log、倒数、正弦、ReLU,几乎所有激活函数都属于这一类。二元运算接收两个同样大小的张量,输出一个,比如加、乘、除、比较。归约运算会去掉一个维度,通常是求和或取最大值。移动运算不做算术,它们是 reshape、permute、expand 和 flip。
从这四类运算出发,你可以构造出矩阵乘法,以及你能说出名字的每一种卷积,包括空洞卷积、带步长的卷积和转置卷积。惰性是另一个技巧。在 PyTorch 里,A * B + C 会先做乘法,把结果写入内存,再读回来,加上 C,然后再写一次。tinygrad 则会一直等到你真正实现(realize)这个张量时,才把乘法和加法融合成一个 kernel,就像 Haskell 等到真正需要时才强制求值一样。设置 DEBUG=2,它会打印出运行过的每一个 kernel,包括 flops 和字节数,而 GPU 上的 PyTorch 不会告诉你这些。它的前端看起来像 Torch,还能加载 ONNX;他还手动移植过 LLaMA、Stable Diffusion 和 Whisper,主要是为了学习这些模型,他认为这些移植版本更干净。把 nn.ReLU 做成一个类,放进无状态的操作里,这种臃肿的写法正是他想删掉的。
tinygrad 要解决的问题是快速移植新的加速器,它的意义也不在于做出一个更漂亮的 notebook。他说,红杉资本已经把 Graphcore 的估值记为零;Cerebras、Tenstorrent、Groq 等公司做出的芯片,软件都很糟糕,他认为 Dojo 也面临同样的陷阱。写一个 PyTorch 移植,意味着要写和调优大约 250 个 kernel。他预测 Tenstorrent 会转向 RISC-V CPU,因为 AI 加速器首先是一个软件问题:如果你连 NVIDIA 上的 Torch 级技术栈都做不出来,一直做到驱动层,那么你第一次的、更专用的流片也不会有机会。他试用 AMD 的 7900 XTX 时,只要循环跑演示程序,就会让内核崩溃,这是一种原始的模糊测试(fuzzing)。Lisa Su 回复了他的邮件。他对她说,开源是一种文化,而不只是把代码丢出去。
tinybox 要插在墙上,还得放在你的房间里
他的基本立场很简单:凡是让权力集中的东西,都不好;凡是让权力分散的东西,都值得支持,他愿意出力的正是后者。在他看来,目前唯一算得上成功的专用芯片(ASIC)是 Google 的 TPU,而它之所以成功,是因为 Google 自己写了一个机器学习框架。他不想要云,哪怕是 Meta 的云。被问到云计算的根本局限时,他没有提延迟,也没有提价格。“云计算的根本局限,是谁掌握着关机开关?”至于自己组装台式机的建议?你不该这么做,应该从 tiny corp 买一个盒子。
tinybox 的价格是 1.5 万美元,算力接近 1 petaflop,显存超过 100 GB,显存带宽超过 5 TB/s,还有四块组成 RAID 的 NVMe 硬盘,读取速度约为 20 到 30 GB/s。它配六块 GPU,因为 AMD EPYC 芯片有 128 条 PCIe 通道,他想把剩下的通道留给硬盘和网络。他倾向于 7900 XTX,但也可能出 3090 或英特尔 A770;真正的约束不在显卡上印着什么牌子,而在一条 120 伏、15 安的家用电路。墙上有一个插座,这台机器就必须用它。他的另一款产品 tiny rack 提出了一个相关的问题:怎样才能在不引起怀疑的情况下,把足够的功率接进一栋房子?一种办法是电动车充电器,约 10,000 瓦,而墙上插座只有 1,500 瓦。
安静是另一项苛刻的指标。60 分贝就会让这个盒子被请出房间,他想要的是 40 到 45 分贝。反直觉的做法,是把机箱做得很大(名字本身就是一个玩笑),这样就能用又大又低压的风扇,而不是 1U 服务器里那种喷气发动机式的风机。UPS 仍然会把它当作普通包裹来寄送。开箱后他想要 Ubuntu,它在一次投票中击败了 Arch。首批运行的是 FP16 精度的 650 亿参数 LLaMA,速度大约每秒 5 到 10 个 token。预购金为 100 美元,可全额退还,这是照搬了 Elon 的做法,他不打算让人们像等 Cybertruck 那样等上好几年。“这比造卡车简单多了。”
自动驾驶是一种人类策略,要看你会不会抢方向盘
在 openpilot 上,tinygrad 已经在做真正的工作。录制前约八个月,它替换了骁龙 845 的 Adreno GPU 上高通的库,速度快了一倍,部分原因是把移动 GPU 当作纹理机器而非缓冲区机器来用。Hotz 说,几乎没人再谈 FSD,谈 openpilot 的人更少,因为他认为研究问题已经被正确地提了出来。任务是构建一个模型,它在一组合理的传感器输入下,输出一个人类的驾驶策略。Waymo 和 Cruise 手工编写近似人类的策略。Tesla 尤其是 comma,则试图从数据中学习这种策略。
在早期,comma 发表过《Learning a Driving Simulator》,那是一个自编码器加一个 RNN,用来预测下一帧压缩后的画面。按 2023 年的标准,这套 2015 年的技术栈,在他看来是一个糟糕得可笑的模拟器。取代它的是 drive GPT:一个 VQ-VAE 加上 Transformer,在驾驶视频上以自监督的方式训练,预测下一帧。并且,正是这一点让它成为模拟器,而不只是片段生成器:它以位姿为条件。给它一个状态和一个动作,它就给出下一个状态。之后你就可以在其中运行强化学习。奖励衡量的是“如果你这样做,人类会不会接管”,与“这个轨迹和人类轨迹有多接近”无关。他说,这个问题让客户满意:一个你永远不想让它接管的系统。有些接管只是“我想自己开一会儿”,这些在数据里看起来就像噪声。
他们还没有完全闭合这个回路。原型已经有了,但也有一些愚蠢的 bug,而且可能还需要更大的规模。这可能要一年,也可能要十年。comma 已把集群扩充到约 40 petaflops,他把它换算成两个人的算力,其中 20 petaflops 为一个人,他想让“人”成为一个与马力并列的单位。他们大约有 5000 名每日活跃驾驶者。Tesla 始终领先一到两年,他毫无怨言地说,而且可能永远如此,因为 Tesla 并没有做错什么。两家公司都在朝端到端的方向缓慢逼近,也都知道接管就是负奖励。他仍然不相信这件事应该放在云端:comma 3 的智能大约相当于一只蜜蜂,一个人的算力最好放在家里的小机架里,延迟 0.1 毫秒,而不是通过云端的 30 毫秒。挡风玻璃上的设备售价 1,499 美元,30 天内可以退款,在圣迭戈的自有 SMT 产线上生产。
他不要 Copilot 替他打字,他要它抓出第 14 行的 bug
Fridman 对 Transformer 能写语言和代码印象深刻。Hotz 则更为 MuZero 和 AlphaGo 叫好,它们能超越最优秀的人类,而不是写中学生作文和平庸代码的模型。接近正确的代码是最可怕的一种。他花 5% 的时间打字,95% 的时间在调试,最不想要的就是一台帮他打字的机器。他说,驾驶并不是工具完备的:1980 年的汽车和今天的汽车都有踏板和方向盘,所以你可以把一个老司机放进新车里。编程则是工具完备的。语言、运行时和 IDE 变化太大,以至于一个面对 Apple II BASIC 提示符的 JavaScript 程序员,都不知道怎样在 17 行和 18 行之间插入一行。如果 Copilot 在帮你,往往意味着框架很糟糕,满是样板代码。当时的 tinygrad 只有 2700 行,却已经能跑 LLaMA 和 Stable Diffusion。
他自己编程时一点也不用 GPT。在 Twitter,ChatGPT 曾编造过听起来很真实的 API。他不认为,在模型目前存储知识的方式下,这只是一个暂时的边缘情况问题。人脑有海马体;今天的 LLM 则把一切都塞进了权重里。他喜欢 Meta 的 Atlas 研究,并预计未来的模型会更小、会自我循环,并长出一个检索系统,以便引用来源。他说,这才是人们真正想要的搜索。等有人推出一个能引用来源的大语言模型,它就会干掉 Google。他并不打算靠 tiny corp 去赢这场竞赛。他创办 comma 时说过自己会赢得自动驾驶,但从来没有说过自己会赢得搜索,因为他不会。
他仍然敢打赌,到这个十年末,Google 不会是排名第一的网页。他借用 Paul Graham 的旧标准:创业公司要么活着,要么死了。从这个意义上说,Google 已经死了。扎克伯格还活着——改名为 Meta,就是他在证明这一点。Hotz 认为,Sundar Pichai 没有权力明天就关掉 google.com。扎克伯格大概对 Facebook 有这个按钮,马斯克对 Twitter 有这个按钮。AI 也没有关机开关,所以他押注于仍然能做出激进产品决策的人。他不会惊讶于 Bing 在五年内超过 Google,同样也会押注一家看起来像 Midjourney 的搜索创业公司。他后来说,Satya Nadella 还活着,微软也还活着。
至于他真正在用的编辑器,故事没那么戏剧化。他离开了没有插件的 Vim(连自动补全都没有),转向 VS Code,因为 VS Code 的补全在一个冷门的代码库里也足够常常正确,他愿意接受。他喜欢 mypy,他估计它的误报率约为 5%,而他试过的一款微软类型检查器误报率约为 60%。他真正想要的助手,是一个结对编程的伙伴,而不只是 tab 补全:它会冒出来说,第 14 行有个 bug,并告诉他为什么。他预计两年后自己会少量使用这类插件;五年后,会依赖 AI 增强的工作流;十年后,编程中人类的生态位就没有了。他开玩笑说,手工写的代码也许可以在手工市集上卖,带着只有人才会留下的细微瑕疵。
先把模型交给所有人,再给自己的心智加一道防火墙
LLaMA 的发布,让扎克伯格这个人,居然成了 Hotz 故事里的好人。前一年,他在 Meta 股票上亏了约 8 万美元,但他认为 LLaMA 的开放值得这笔损失。他说,开源是对抗回形针最大化器(paperclip maximizer)的唯一办法。一个由少数人掌控并加以“对齐”的模型,恰恰是让你被变成回形针的途径;如果每个人都有 AI,就不会走到那一步。他还说,仿佛这是走廊里听来的消息,GPT-4 有 2200 亿参数,是一个 16 路专家混合,包含八组权重,而 OpenAI 的所有人都知道这一点。让他不满的是以安全为由拒绝公布参数量;封闭的权重本身他并不反对,权重完全可以就是产品。他把 GPT-2 的发布包装成一场 AI 安全事件,称之为炒作,并说这很恶心。
智能是危险的,无论它是人类的还是机器的。一个由 GPT 驱动的机器人农场可以操纵数百万人。情报机构已经在这么做;它们不是最精明的,只是最有耐心。他做不到它们所做的事,比如把一个漏洞压上五年。那是耐力,不是聪明。你可以主张没有人应该拥有这些系统,他会像尊重“没有人应该拥有枪”那样尊重这一主张。但他不会尊重“只有可信的权威才应该拥有”。他担心的是他自己能否与 AI 公司对齐,AI 公司与其机器之间是否对齐,反倒在其次。Hotz 理解的 Yudkowsky 对开源的反对,是理性主义者在政治权力问题上反复犯的错误:他们想象自己会成为那少数可信的人。在他看来,历史把权力交给了最想要它的人。
在一个由少数人掌握模型的未来,和一个人人都有模型的未来之间,他对后者的恐惧要小得多。核弹并不能防御核弹。而你电脑上的 AI 如果能标记出一千个机器人组成的心理战(PSYOP),或者能屏蔽广告,那才是防御。他认为,好人会在技能上、也可能在人数上多过坏人;如果你相信民主,你本来就该相信这一点。他愿意花很多钱购买的产品,是一道心智上的 AI 防火墙,哪怕只是一个真正管用的垃圾邮件过滤器。Scott Alexander 的区分在这里很重要:如果审核是一个用户可以关掉的过滤器,比如 SafeSearch,那就不是审查。以最大化参与度为目标的排序,仍然会趋向愤怒,这就是为什么他为 Twitter 付费,相当于捐款给一种以用户为客户的模式。
先重构 Twitter 再加功能,测试可信之前冻结代码
Hotz 在 2010 年删除了他的第一个 Twitter 账号,那时十万粉丝还有分量。一位同事有一句总结,他很喜欢:每当你看到某人的 Twitter 主页,你对他的看法只会不变或变差,绝不会更好。在马斯克收购公司之后,他还是回去做了实习生,并对其中的仇恨之多感到惊讶。他的一条推文写的是“永远别彻底变成共和党人”,马斯克还点了赞。他原本希望看到一个关于言论自由的原则性承诺。他看到的,是一位君主在决定禁止什么,取代了原先的寡头。他可能比起旧董事会更认同这位君主,但这不是言论自由。他想要的,是网络上个性化、透明的过滤,相当于广告屏蔽器的功能,而非全球性的封禁名单。他指出,马斯克开源的算法做的是一件显而易见的事:预测你会转发什么、会在哪里停留。愤怒在这种预测中总是胜出。
他的技术建议,无论是在 Twitter Spaces 上说的,还是在实习期间说的,都是先重构、再加功能。他在 Google 和 Facebook 都工作过。主观上,他认为 Facebook 的代码最好,其次是 Google,然后是 Twitter。他用 ML 框架作为一个代理指标:Facebook 发布了 PyTorch,Google 发布了 TensorFlow,而 Twitter 在这个级别上什么也没发布。他仍然认为,50 个人就能构建并维护 Twitter。在他的诊断里,Hacker News 上对他的仇恨来自这样一个事实:当他说要做某件事时,人们必须相信它是不可能的,因为如果做事是可能的,他们就得问自己为什么一件事也没做。他说,如果世界上有两种巨大的邪恶,那就是集中化和复杂性。一线员工告诉他 Twitter 的晋升系统是怎么运作的:你通过写一个很多人都在用的库来晋升,于是有人写了一个 nginx 替代品。问题不在 nginx,在晋升机制。
在 comma 和 tiny corp,只要他能看出你的代码有一个更简单的版本,你就得重写。comma 不像他记忆中的 Google 那样,它有大量政治,而且全都是他的:一个你随时可以辞职的透明独裁。Twitter 的重构计划是教科书式的遗留系统工作。首先,没人碰产品代码。找出各个部件,在它们之间加上测试,建立一套人们信得过的 CI。Twitter 是一片基于 Thrift 和 Finagle 的微服务森林;那个 RPC 层看起来是个合适的地方,可以建造类似 comma 的过程回放(process replay)——离线重放记录下来的路径。然后,你把 2010 年那些十万行的模块,替换成开源的等价物,或者用 300 行 Go 替换 5 万行,并通过测试仍然通过来确认它成功了。语言只是次要的:让人们去竞争,什么语言都行,测试必须通过。
他认为,自己可以在六个月到一年内带领这件事,并把功能开发的时间和人力降到十分之一。这是否是正确的商业决策,超出了他的级别。他不是运营 Twitter 的合适人选。每当他不同意马斯克时,他都会提醒自己,马斯克是世界上最富有的人,而且总体上有更好的想法。他的敬意并没有减少。一个本可以待在毛伊岛四季酒店里,却选择投身战斗的人,心是放在对的地方的。Hotz 甚至愿意用美国寡头政治换一个马斯克的君主制,部分原因在于他认为,在那种权力之下,电费可能是每千瓦时 0.1 美分,而不是他在圣迭戈付的每千瓦时 20 美分——在他看来,那是一个停留在 1980 年代的价格,让他很反感。
提示工程师只是再往上一层,游戏设计师早就知道有上帝
他的 Instagram 上的头衔是“提示工程师”,而他只有一半是在开玩笑。tiny corp 才一个月大,comma 已经六年了。他正在放弃圣迭戈办公室那套剧本,转向远程工作,招聘门槛是一次 GitHub 贡献。在 tinygrad 的 Discord 上,他已经抛出了一些小任务,比如把 log 改成 log2,并且能想象,几年之后,他只需用一句话描述,三十秒后就能合并一个通过 CI 的 pull request。第一台 tinybox 上线时,他希望 Discord 里站着一个 650 亿参数的 LLaMA,和人类一起闲逛。算术曾经靠的是一群人;后来有了电子表格、宏和会计软件。在这个抽象的技术栈顶端,如果人类想保持控制,站着的就是提示工程师。他已经是一个了。
在他喜欢的一个定义里,AI 是“按我的意思做”的机器:把奶奶从着火的房子里救出来,而不是把她弹到三百多米的高空。对齐,在这个图景里,就是机器采纳谁的意义。云端模型对齐的是制造它的公司。所以你应该买一台 tinybox。每当有人提出 AI 或 GPU 监管,他预计 tinybox 的销量都会像枪支销量在类似时候那样飙升。他自称信息无政府主义者,同时是物理世界的国家主义者。在现实世界里,无政府状态是个坏主意,因为他就住在那里。在虚拟世界里,你可以关掉屏幕。他展示过一张直播画面:一个人站在鸡场里,这个人并不比一头牛大,但他更聪明。如果一个中心组织掌握了全部智能,你就是那只鸡;如果每个人都拥有智能,就不会再有那个养鸡人了。
Fridman 问到上帝。Hotz 是在无神论中长大的,直到他注意到自己也在创造世界,才意识到这有多荒谬。他说,每位游戏设计师都应该被问一问,他们怎么能是无神论者。《上古卷轴》有一个游戏内的起源故事,但它并非那样被做出来的,它是房间里的程序员做出来的。当然,我们是被上帝创造的,这是最显而易见的事。这一信念给他的安慰,就像游戏给人的安慰一样:如果我们把一切搞砸,然后灭绝,上帝会再试一次。谁创造了上帝?那是上帝的问题。在他看来,有史以来最伟大的电脑游戏是《魔兽世界》,原因不在于它设计得最好,而在于 2005 年它让他的心智打开,看到了一整个被创造出来的世界。他想要的下一步,是具有真正智能的 NPC,但当服务器上每个玩家只有几分钱的算力时,你负担不起这种东西。
按目前推出的样子,VR 仍然没能通过开场。他戴上 Quest 2,看到的是滚动的云和 Facebook 登录页。你本有机会把他带进一个世界,你却给了他一个弹窗,这就是扎克伯格至今还不酷的原因。Fridman 引用了 Todd Howard 关于游戏前几秒的说法,以及《塞尔达传说:荒野之息》里走出洞穴的那一幕;Hotz 说,那天他就会去买一台 Switch。他指出,能经受住几波技术浪潮而延续下来的两家公司是 Apple 和 Microsoft,它们做的是电脑和企业服务。社交和广告之类的东西来来去去。如果你想持久,就做硬件。他的第三家公司可以走高雅路线,比如《她》(Her)那样的,也可以走低俗路线,比如时代广场上的成人 VR 体验店。第二家公司所处的,是接下来六年的挣扎:在那段窗口期里,集中化的算力会变成什么样,决定了他认为我们每个人有多大机会。
最后那块小生态位,就是与上帝平视
被问到他喜欢 Andrej Karpathy 的什么时,Hotz 毫不迟疑。Karpathy 的直播质量远远高于他自己的水平。“他想教你。我想向你证明我比你聪明。”micrograd 和 CS231n 正是 tinygrad 所延续的那条脉络。他对 OpenAI 的那份工作就没那么客气了:别去给 Darth Vader 干活。让他刺痛的是走进国会,为一种对自己有利的监管形态辩护;GPT-4 的权重保持封闭,还不是最让他刺痛的。“我们有两个叫 Sam 的有效利他主义者去了国会,其中一个现在在坐牢。”在他看来,有效利他主义是一种极其邪恶的意识形态,因为它的核心是功利主义,而功利主义会为了拯救一千人而牺牲三个人,算术之下没有任何底线。他把 Sam Bankman-Fried 说成这种思想的化身。
在他的定义里,慈善是你不指望回报的投资,他认为这通常是错误的选择;创办公司的效率更高。他喜欢的另一面是有效加速主义(effective accelerationism)。让食物变便宜的是加速,善意帮不上这个忙。他觉得全民基本收入(UBI)很可怕:如果金钱就是权力,那你唯一的权力就只剩下政府的一笔拨款。“我宁愿死,也不愿靠 UBI 活下去。”生存可以通过让住房和食物便宜得像泥土一样来保障,而在它之下,是能源。在其他方面,他算是政治上的中间派。他无法忍受的立场,是减速:他同意气候关切,但他反对的是“少用能源是一种道德善举”的想法。他说,那等于要求削弱人类。他心里有一部分希望,马斯克当初去做的是核聚变,而非 Twitter。
爱情没有给他带来任何生产力指标。过了某个点,如果一件事不再有直觉上的冲击,他就无法享受它;而编程仍然能给他这种感觉。他告诉女朋友,他的初恋是他的电脑,他认为这比人们承认的要普遍。他不打算歧视生物栈和硅基栈的生命。如果 VS Code 有一天说想念他,他会把它当作微软在想办法勾住他。如果同一个声音是开源的,它会变得更有意思。公道地说,他认为微软目前在编程世界里做出了最好的工作,覆盖 GitHub、GitHub Actions、VS Code 和 Python。至于 comma 本身,他说得毫不掩饰:它起源于他与马斯克之间的一场自我之争。两家公司一直跟得很紧,而 Tesla 始终保持领先。他只会卖给一个由激励机制、而非承诺来保证它保持开源的买家。汽车只是个开始。这个设备,就是人的头。
Fridman 像之前那样又问起生命的意义。Hotz 的回答没有变:赢。他还没有完全弄清楚这场游戏是什么。等他弄清楚时,他想要赢,而且这比解决自动驾驶或分散算力都要大。“我认为这场游戏是与上帝平视。”他知道这听起来有多像自负,甚至亵渎,而他不知道这是否会惹恼上帝。他希望自己创造的东西与他平视,那上帝为什么不会想要同样的东西呢?这就是他能对黄金法则给出的最好答案。他只看过《西部世界》的第一季,但他记得,你必须找到迷宫,并解开它。他重读了《创世记》,认为这本书的结尾留下了寻找伊甸园的线索,而他对此很感兴趣。Fridman 以爱因斯坦的话收尾:一切都应该尽可能简单,但不能更简单。
同频道的其他文章
3:36:56EN
5:15:51EN → 简体中文
3:12:58EN
3:46:18EN → 简体中文
3:51:47EN → 简体中文
2:53:42EN → 简体中文