📱

Get Our Mobile App

Take your business learning on the go!

Download on the App StoreGet it on Google Play

Jeff Dean & Noam Shazeer — 25 years at Google: from PageRank to AGI

Dwarkesh Patel2:15:36

Transcription

今天我很荣幸能与 Jeff Dean 和 Noam Shazeer 对话。Jeff 是谷歌的首席科学家,他在公司工作的 25 年里,参与了现代计算领域几乎所有最具变革性的系统:从 MapReduce、BigTable、Tensorflow、AlphaChip——说实话,这个列表没完没了——到现在的 Gemini。而 Noam 是当前人工智能革命最主要负责的个人。他是现代大型语言模型所使用的所有主要架构和技术的发明者或共同发明者:从 Transformer 本身,到 Mixture of Experts,到 Mesh Tensorflow,以及许多其他东西。他们两人是谷歌 DeepMind Gemini 项目的三位联合负责人中的两位。太棒了。非常感谢你们的到来。谢谢。很高兴来到这里。好的,第一个问题。你们两位都在谷歌工作了 25 年,或者接近 25 年。在公司早期,你们可能都明白一切是如何运作的。这种情况是什么时候停止的?你们觉得有一个明确的时刻发生了吗?我加入的时候,大概是 2000 年底,当时公司有一个规定:每个人都有一个导师。我一无所知。我什么都问我的导师,而我的导师什么都知道。结果发现我的导师是 Jeff。并不是谷歌的每个人都知道一切。只是 Jeff 知道一切,因为他基本上写了所有东西。你太客气了。我认为随着公司的成长,你会经历这些阶段。我刚加入时,我们只有 25 个人,26 个人,大概是这样。所以你最终会认识每个人的名字,即使我们在成长,你也会跟踪加入的每个人。到某个时候,你就会记不住公司里每个人的名字,但你仍然知道所有从事软件工程工作的人。然后你就会记不住软件工程团队里所有人的名字,但至少你知道每个人都在做什么项目。然后到某个时候,公司足够大了,你会收到一封邮件说“项目鸭嘴兽”周五要上线了,而你会想,“项目鸭嘴兽是什么鬼?”通常这是一个非常好的惊喜。你会想,“哇,项目鸭嘴兽!”我完全不知道我们在做这个。但我认为,即使你不知道每一个细节,也要了解公司正在发生的事情,即使是很高层面的事情,也是有益的。而且认识公司里很多人也很好,这样你就可以去问别人更多细节,或者弄清楚该和谁谈。通过一个层级的间接联系,如果你有一个随着时间建立起来的良好人脉网络,通常就能在公司里找到合适的人。顺便问一下,谷歌是怎么招募到你的?我其实是主动联系他们的。Noam,你是怎么被招募的?我其实在 1999 年的招聘会上看到了谷歌,我以为它已经是一家大公司了,加入它没什么意义,因为我认识的每个人都在用谷歌。我想那是因为我当时是伯克利的研究生。我想我曾经几次辍学。结果发现它其实并没有那么大。结果我并没有在 1999 年申请,而是在 2000 年一时兴起给他们发了份简历,因为我认为它是我最喜欢的搜索引擎,所以我想应该多申请几家公司。但后来发现它真的很有趣,看起来是一群聪明人在做着有意义的事情。他们墙上有一张非常漂亮的蜡笔画,上面是某人一直在维护的每日搜索查询数量。看起来呈指数级增长。我想,“这些人会非常成功,而且他们似乎有很多好问题要解决。”所以我想,“好吧,也许我会在那里工作一段时间,然后就有足够的钱去研究人工智能了,想做多久就做多久。”是的,是的。某种程度上你做到了,对吧?是的,完全按照计划实现了。你在 1999 年就考虑人工智能了吗?是的,那是 2000 年左右。是的,我记得在研究生院的时候,我当时的一个朋友告诉我,他 2000 年的新年决心是活到公元 3000 年,他将通过发明人工智能来实现这一目标。我想,“哦,这听起来是个好主意。”当时我并没有想到可以在大公司里做到这一点。但我认为,“嘿,很多人似乎在初创公司赚了很多钱。也许我只需要赚点钱,然后就有足够的钱生活,然后就可以长期从事人工智能研究了。”但实际上,谷歌是一个非常适合从事人工智能研究的地方。我喜欢谷歌的一点是,我们的雄心壮志一直都是需要相当先进的人工智能。因为我认为,组织世界信息并使其普遍可访问和有用,实际上其中有一个非常广泛的使命。这不像公司只做一件小事然后就一直做下去。而且你也可以看到,我们最初所做的就是朝着这个方向发展,但你可以在这个方向上做得更多。在过去的二三十年里,摩尔定律是如何改变你在设计新系统、确定项目可行性时需要考虑的因素的?仍然存在哪些限制?现在有哪些事情是你以前显然做不到的?我认为在过去的几十年里,情况确实发生了很大的变化。二十年前到十年前,这很棒,因为你只需要等待,大约 18 个月后,你就会得到快得多的硬件,而你什么都不用做。而最近,我觉得通用 CPU 的机器扩展性并没有那么好,比如制造工艺的改进现在需要三年而不是每两年一次。多核处理器等的架构改进并没有像我们 10 到 20 年前那样提供相同的提升。但我认为,与此同时,我们看到了更多专门的计算设备,比如机器学习加速器、TPU,以及最近非常专注于 ML 的 GPU,这使得我们能够从我们想要运行的更现代的计算中获得真正的高性能和良好的效率,这与试图运行微软 Office 之类的 C++ 代码堆栈不同。感觉算法正在追随硬件。基本上,现在的情况是,算术运算非常非常便宜,而移动数据则相对昂贵得多。所以几乎所有的深度学习都是因此而兴起的。你可以用 N 立方运算和 N 平方字节数据通信来构建它。嗯,我会说转向围绕这个的硬件是一个重要的过渡,因为在此之前,我们有 CPU 和 GPU,它们对深度学习并不特别适合。然后我们在谷歌开始构建 TPU,它们本质上是低精度线性代数机器,一旦你有了这个,你就会想利用它。这似乎完全是关于识别机会成本。就像,好吧,这是拉里·佩奇,我想,他总是说:“我们第二大的成本是税收,而我们最大的成本是机会成本。”如果他没这么说,那我多年来一直在误引他。但基本上就是,你有什么机会正在错过?在这种情况下,我想是你拥有了所有的芯片面积,而你只在上面放了很少的算术单元。把这个芯片填满算术单元!你可以完成数量级更多的算术运算。现在,还有什么需要改变?好吧,算法和数据流以及其他一切。哦,顺便说一句,算术运算可以非常低精度,这样你就可以塞进更多的乘法器单元。Noam,我想接着你说的,算法一直在追随硬件。如果你想象一个反事实的世界,假设内存的成本比算术运算下降得更多,或者只是颠倒了你看到的动态。好吧,数据流非常便宜,而算术运算则不便宜。那么今天的人工智能会是什么样子?你会需要查阅非常大的内存。是的,它可能看起来更像 20 年前的人工智能,但方向相反。我不确定。我想我是在 2012 年加入了 Google Brain。我离开了谷歌几年,碰巧回去吃午饭拜访我的妻子,我们碰巧坐在 Jeff 和早期的 Google Brain 团队旁边。我想,“哇,那是一群聪明人。”我想我说,“你们应该考虑深度神经网络。我们在那里取得了一些相当不错的进展。”“听起来很有趣。”好吧,所以我又回来了……我把他挖回来了,这太棒了……加入 Jeff,那是在 2012 年左右。我似乎每 12 年加入一次谷歌:我分别在 2000 年、2012 年和 2024 年重新加入了谷歌。2036 年会发生什么?我不知道。我想我们拭目以待。你们在为未来版本的 TPU 考虑哪些权衡,以整合你们对算法的思考?我认为一个普遍趋势是,我们在量化或使用更低精度的模型方面做得越来越好。我们从 TPUv1 开始,甚至不确定我们是否可以用 8 位整数进行量化和模型服务。但我们有一些早期的证据,似乎是可能的。所以我们想,“太好了,让我们围绕这个构建整个芯片。”然后随着时间的推移,我认为人们也能够使用更低的精度进行训练。但推理精度也下降了。人们现在使用 INT4 或 FP4,如果 20 年前你对一个超级计算浮点专家说我们要使用 FP4,他们会说,“什么?这太疯狂了。我们喜欢我们的浮点数是 64 位。”甚至更低,有些人将模型量化到两位或一位,我认为这是一个趋势——一位?就像零或一?是的,只是一个 0-1。然后你有一个符号位用于一组位或其他东西。这确实需要协同设计,因为如果算法设计者没有意识到你可以通过较低的精度获得显著提高的性能和吞吐量,那么算法设计者当然会说,“当然,我不想要低精度。这会带来风险。”然后会增加麻烦。然后如果你问芯片设计者,“好吧,你想做什么?”然后他们会问今天写算法的人,他会说,“不,我不喜欢量化。这很麻烦。”所以你实际上需要看到整个图景,然后弄清楚,“哦,等等,我们可以通过量化来大大提高我们的吞吐量与成本比。”然后你会说,是的,量化很麻烦,但你的模型会快三倍,所以你必须处理。在你们的职业生涯中,你们在不同时期都曾从事过与我们现在用于生成式 AI 的技术惊人相似的工作。在 1990 年,Jeff,你的毕业论文是关于反向传播的。而在 2007 年——这是我在准备这一集时才意识到的——在 2007 年,你们训练了一个两万亿个 token 的 N 元模型来进行语言建模。请详细介绍一下你们在开发那个模型时的情况。当时你们脑子里有这样的想法吗?当时你们认为自己在做什么?我先从本科论文说起。在我高年级的一门并行计算课的一个部分,我接触到了神经网络。我需要写一篇论文才能毕业,一篇荣誉论文。所以我找到了教授,我说,“哦,做一些关于神经网络的事情会很有趣。”所以,我和他决定在 1990 年实现几种不同的方法来并行化神经网络的反向传播训练。我在论文中给它们起了些有趣的名字,比如“模式分区”之类的。但实际上,我在一个 32 核的 Hypercube 机器上实现了模型并行和数据并行。一种方法是将所有样本分成不同的批次,每个 CPU 都有一个模型的副本。另一种方法是将一批样本沿着流水线传输到拥有模型不同部分的处理器。我比较了它们,这很有趣。我真的很兴奋于这种抽象,因为我觉得神经网络是正确的抽象。它们可以解决当时其他方法无法解决的微小玩具问题。我天真地认为,32 个处理器可以训练出非常棒的神经网络。但事实证明,在它们真正开始解决实际问题之前,我们需要大约一百万倍的计算能力。但从 2008 年底、2009 年、2010 年开始,由于摩尔定律,我们开始拥有足够的计算能力来让神经网络真正地解决实际问题。那大概是我重新开始研究神经网络的时候。但在此之前,在 2007 年……抱歉,我能问一下这个吗?哦,当然。首先,与其他学术成果不同,它实际上只有四页,你可以直接阅读。它有四页,然后是 30 页 C 代码。但它确实是一份制作精良的成果。告诉我 2007 年的论文是如何诞生的。哦,是的,当时我们在谷歌有一个机器翻译研究团队,由 Franz Och 领导,他大概一年前加入了谷歌,还有其他一些人。每年他们都会参加 DARPA 的比赛,将几种不同的语言翻译成英语,我记得是中文到英语和阿拉伯语到英语。谷歌团队提交了一个参赛作品,比赛的规则是周一给你 500 句话,周五提交答案。我看到了结果,我们在比赛中以相当大的优势获胜,以 Bleu 分数衡量,这是翻译质量的衡量标准。所以我联系了 Franz,这个获胜团队的负责人。我说,“这太棒了,我们什么时候能上线?”他说,“哦,嗯,我们不能上线这个。它实际上不太实用,因为它翻译一句话需要 12 个小时。”我说,“嗯,这似乎需要很长时间。我们该如何解决这个问题?”结果发现他们并没有真正为高吞吐量设计它,这很明显。它在一个大型语言模型中进行了 10 万次磁盘寻道,他们对这个模型进行了统计计算——我不会说“训练”——来翻译每个单词。显然,进行 10 万次磁盘寻道并不算非常快。但我说,“好吧,让我们深入研究一下。”所以我和他们一起花了大约两三个月的时间,设计了一种内存中的 N 元语法数据压缩表示。我们当时使用的是——N 元语法基本上是统计数据,关于每个 N 词序列在大型语料库中出现的频率,所以基本上我们有,在这种情况下,我们有 2 万亿个词。当时大多数 N 元语法模型使用二元语法或三元语法,但我们决定使用五元语法。所以,每五个词的序列在当时我们能处理的尽可能多的网络上出现的频率。然后你有一个数据结构,上面写着,“好吧,‘我真的很喜欢这家餐厅’在网络上出现了 17 次,或者类似的东西。”所以我构建了一个数据结构,可以让你在 200 台机器上将所有这些数据存储在内存中,然后有一个批处理 API,你可以说,“这是我需要在这个回合中查找的 10 万个词,”我们会把它们全部并行返回给你。这使得我们能够从翻译一句话需要一晚的时间,缩短到基本上在 100 毫秒内完成。有一个关于 Jeff Dean 的笑话列表,就像查克·诺里斯的笑话一样。例如,“对 Jeff Dean 来说,NP 等于‘没问题’。”其中一个,很有趣,因为现在你说了,实际上,这有点真实。其中一个说,“光速曾是每小时 35 英里,直到 Jeff Dean 决定在一个周末对其进行优化。”仅仅是从 12 小时到 100 毫秒,我就完成了数量级的提升。所有这些都非常令人奉承。它们非常有趣。它们就像我同事们搞砸了的愚人节玩笑。显然,回想起来,通过仅仅考虑词语之间的关系来开发整个互联网的潜在表示的想法就像:是的,这就是大型语言模型。这就是 Gemini。当时,这只是一个翻译的想法,还是你认为这是另一种范式的开端?我认为一旦我们为翻译构建了它,大型语言模型的服务就开始用于其他事情,比如补全……你开始打字,它会建议哪些补全是有意义的。所以这无疑是谷歌中语言模型大量使用的开端。Noam 也曾在谷歌从事过许多其他事情,比如使用语言模型的拼写纠正系统。那大概是 2000 年、2001 年,我记得当时是在一台机器上全部内存。是的,我记得是台机器。他 2001 年开发的拼写纠正系统非常棒。他向全公司发送了一个演示链接。我尝试了各种他能想到的、被破坏的拼写查询,比如“scrumbled uggs Bundict”——我记得那个,是的,是的。——而不是“scrambled eggs benedict”,它每次都能准确地纠正。是的,我想那就是语言建模。但当时,当你开发这些系统时,你是否有一种感觉,“看,你让这些东西越来越复杂,不要考虑五个词,考虑一百个词,一千个词,那么潜在的表示就是智能”。基本上,这个想法是什么时候出现的?不完全是。我不认为我曾经觉得,“好吧,N 元语法模型将——席卷全球——是的:‘成为’人工智能。”我认为当时,很多人对贝叶斯网络感到兴奋。那似乎令人兴奋。当然,看到那些早期的神经网络语言模型,既有其中的魔力,“好吧,这正在做一些极其酷的事情”,而且,它也让我觉得这是世界上最好的问题,因为它,首先,非常、非常简单地陈述:给我一个关于下一个词的概率分布。其次,大约有无限的训练数据。有网络的文本;你有数万亿个无监督数据的训练样本。是的,或者自监督。自监督,是的。这很好,因为你有了正确的答案,然后你可以训练所有除了当前词之外的词,并尝试预测当前词。这是一种从世界观察中学习的惊人能力。然后它是 AI 完全的。如果你能在这方面做得很好,那么你几乎可以做任何事情。科学史上有一个有趣的讨论,关于想法是否只是在空气中,并且存在一种重大想法的必然性,或者它们是否是从某个切线方向被提取出来的。在这种情况下,我们以非常逻辑的方式来阐述这一点,这是否意味着基本上,这种……这确实感觉像是空气中弥漫着。确实有一些,有神经图灵机,一些关于注意力(attention)的想法,比如拥有这些键值存储(key-value stores),它们在神经网络中可能很有用,可以专注于事物。我认为在某种意义上,它就在空气中,在某种意义上,你需要一个团队去完成它。我喜欢把很多想法看作是部分在空气中,那里有几个不同的,也许是独立的研究想法,当你试图解决一个新问题时,你会眯着眼睛看它们。你从中汲取一些灵感,然后有一个方面没有解决,你需要弄清楚如何解决它。现有事物的某种融合和一些新事物的结合,导致了一些新的突破或新的研究成果,而这些成果以前是不存在的。有没有一些关键时刻让你印象深刻,你正在研究一个领域,你有了这个想法,然后你就有这种感觉,“我的天,我不敢相信这奏效了?”我记得的一件事是在 Brain 团队的早期。我们专注于“让我们看看是否能构建一些基础设施,让我们能够训练非常、非常大的神经网络”。当时,我们的数据中心里没有 GPU;我们只有 CPU。但我们知道如何让大量的 CPU 一起工作。所以我们构建了一个系统,通过模型和数据并行化,使我们能够训练相当大的神经网络。我们有一个系统,可以在 1000 万个随机选择的 YouTube 帧上进行无监督学习。它是一种空间局部表示,所以它会通过尝试从高层表示中重建事物来构建无监督表示。我们让它在 2000 台计算机上运行并训练,使用了 16000 个核心。过了一段时间,那个模型实际上能够在最高层构建一个表示,其中一个神经元会被猫的图像激活。它从未被告知什么是猫,但它在训练数据中看到了足够多的猫的正面面部视图的例子,以至于那个神经元会为此而激活,而对其他事物则不会。同样,你也会有其他神经元用于人脸和行人的背部,以及类似的东西。那很酷,因为它来自于无监督学习原理,构建了这些非常高层的表示。然后我们在有监督的 ImageNet 20000 类别挑战赛中取得了非常好的结果,相对提高了 60%,这在当时是非常好的。那个神经网络可能比以前训练过的神经网络大 50 倍,而且效果很好。所以这对我来说就像是说,“嘿,实际上扩大神经网络的规模似乎是一个好主意,而且它似乎确实是,所以我们应该继续推进。”这些例子说明了这些人工智能系统如何融入你刚才提到的内容:谷歌本质上是一家组织信息的公司。在这种背景下,人工智能是寻找信息、概念之间的关系,以帮助更快地将想法、你想要的信息传递给你。现在我们正在使用当前的人工智能模型。显然,你可以在谷歌搜索中使用 BERT,你可以问这些问题。它们仍然擅长信息检索,但更根本的是,它们可以为你编写整个代码库并完成实际工作,这超越了信息检索。那么你们是如何考虑的?如果谷歌正在构建通用人工智能(AGI),它仍然是一家信息检索公司吗?AGI 可以进行信息检索,但它还可以做很多其他事情。我认为我们是一家“组织世界信息”的公司,这比信息检索更广泛。也许是:“组织信息,并根据你给它的指导创建新信息”。“你能帮我写一封信给我的兽医,关于我的狗吗?它有这些症状,”它会起草。或者,“你能输入这个视频,然后每隔几分钟生成一个视频内容的摘要吗?”我认为我们的多模态能力表明,它不仅仅是文本。它是关于理解信息存在的各种模态的世界,既有人类的,也有非人类导向的,比如自动驾驶汽车上的奇怪激光雷达传感器,或者基因组信息,或者健康信息。然后,你如何从中提取并转化为有用的见解,并利用这些见解帮助人们做他们想做的各种事情?有时是,“我想通过与聊天机器人聊天来娱乐。”有时是,“我想回答这个非常复杂的问题,没有单一的来源可以检索。”你需要从 100 个网页中提取信息,弄清楚发生了什么,然后将其组织成一个综合版本的数据。然后处理多模态事物或与编码相关的问题。我认为这些模型的能力非常令人兴奋,而且它们正在快速改进,所以我很期待看到我们能走向何方。我也很期待看到我们能走向何方。我认为组织信息显然是一个万亿美元的机会,但万亿美元已经不再酷了。酷的是万万亿美元。显然,这个想法不是要堆积一堆巨额财富,而是要在世界上创造价值,而当这些系统能够真正为你做些事情,为你编写代码,或者解决你无法自己解决的问题时,就可以创造更多的价值。要大规模地做到这一点,我们将不得不非常、非常灵活和动态地改进这些模型的能力。是的,我对许多基础研究问题感到非常兴奋,因为你看到我们正在做的事情可以通过尝试这种方法或大致朝着这个方向努力来得到显著改进。也许会奏效,也许不会。但我也认为,看到我们能为最终用户取得什么成就,以及我们如何从那里反向构建能够做到这一点的系统,是有价值的。举个例子:组织信息,这意味着世界上任何信息都应该被任何人使用,无论他们说什么语言。我认为我们已经在这方面做了一些工作,但这远非完整的愿景,即“无论你说什么语言,在数千种语言中,我们都可以让你获得任何内容,并使其可用。任何视频都可以用任何语言观看。”我认为那将是相当了不起的。我们还没有完全做到,但这绝对是我在视野中看到应该可能实现的事情。说到你可能尝试的不同架构,我知道你现在正在研究的一个领域是更长的上下文。如果你想到谷歌搜索,它拥有整个互联网的索引作为其上下文,但它是一个非常浅层的搜索。然后显然语言模型目前有有限的上下文,但它们确实可以思考。这就像黑魔法,上下文学习。它真的可以思考它看到的东西。你如何看待将谷歌搜索和上下文学习之类的东西结合起来会是什么样子?是的,我先来尝试一下,因为——我考虑这个问题有一段时间了。你看到这些模型的一个问题是它们相当好,但它们确实会产生幻觉,有时会有事实错误。部分原因是,你已经训练了,比如说,数十万亿个 token,并且你已经将所有这些都混合在你的数百亿或数千亿个参数中。但这一切都有些模糊,因为你已经将所有这些 token 混合在一起了。模型对这些数据有相当清晰的视图,但有时会感到困惑,并给出错误的日期。而上下文窗口中的信息,模型输入中的信息,非常清晰明了,因为我们在 Transformer 中有非常好的注意力机制。模型可以关注事物,并且它知道它正在处理的确切文本或视频、音频的确切帧。现在,我们的模型可以处理数百万个 token 的上下文,这相当多了。相当于几百页 PDF,或者 50 篇研究论文,或者几个小时的视频,或者几个小时的音频,或者这些东西的某种组合,这相当酷。但如果模型能够关注数万亿个 token 就太好了。它能关注整个互联网并为你找到正确的东西吗?它能关注你所有的个人信息吗?我希望有一个模型能够访问我所有的电子邮件、我所有的文档和我所有的照片。当我让它做某事时,它可以在我的许可下利用这些信息来帮助解决我想要解决的问题。但这将是一个巨大的计算挑战,因为朴素的注意力算法是二次方的。你几乎无法在相当多的硬件上处理数百万个 token,但没有希望 naively 地将其扩展到数万亿个 token。所以,我们需要很多有趣的算法近似来达到你真正想要的东西:一种让模型在概念上关注更多、更多的 token,数万亿个 token 的方法。也许我们可以将整个谷歌代码库放在每个谷歌开发者的上下文中,将全世界的源代码放在任何开源开发者的上下文中。那将是惊人的。那将是不可思议的。模型参数的美妙之处在于它们在记忆事实方面非常节省内存。你可能每模型参数可以记忆一个事实左右。而如果你在上下文中有一个 token,每一层都有很多键和值。每 token 可能需要千字节、兆字节的内存。你取一个词,然后将其扩展到 10 千字节左右。是的。实际上有很多创新正在进行,关于,A,你如何最小化这个?B,你需要有哪些词?有没有更好的方法来访问这些信息片段?Jeff 似乎是解决这个问题的人。好吧,我们的内存层次结构是什么样的,从 SRAM 到全球数据中心级别?我想多谈谈你提到的:看,谷歌是一家拥有大量代码和大量示例的公司。如果你只考虑那个用例以及它所暗示的,那么你就有谷歌的 monorepo。也许你解决了长上下文问题,你可以将整个东西放入上下文,或者对其进行微调。为什么这还没有完成?你可以想象谷歌拥有多少专有代码,即使你只是在内部使用它来提高开发者的效率和生产力。需要明确的是,我们实际上已经对 Gemini 模型进行了进一步的训练,使用了我们内部的代码库,为我们的内部开发者。但这与关注所有代码不同,因为它将代码库混合成了一堆参数,我认为将其置于上下文中会使事情更清楚。但即使是经过进一步训练的内部模型也极其有用。Sundar,我想,他说,我们现在提交到代码库的字符中,有 25% 是由我们基于 AI 的编码模型生成的,并带有某种程度的人工监督。你如何想象,在未来一两年内,基于你看到的视野中的能力,你自己的个人工作?在谷歌做一名研究员会是什么样子?你有一个新想法或什么东西。以你与这些模型互动的方式,一年后,那会是什么样子?嗯,我假设我们会拥有更好的模型,并有望能够提高很多很多生产力。是的,除了某种研究背景,任何时候你看到这些模型被使用,我认为它们都能提高软件开发者的生产力,因为它们可以接受一个高层次的规范或句子描述你想要做什么,并给出一个相当合理的初步尝试。从研究角度来看,也许你可以说,“我真的很想让你探索一下类似于这篇论文中的想法,但也许让我们尝试让它变成卷积的或者别的什么。”如果你能做到这一点,并让系统自动生成大量的实验代码,然后你看看它,你说,“是的,看起来不错,运行它。”这似乎是一个不错的梦想方向。在未来一两年内,你可能会在这方面取得很大进展。这似乎被低估了,因为你可能拥有数百万的额外员工,并且你可以立即检查他们的输出,员工可以互相检查对方的输出,嘿,立即流式传输 token。抱歉,我不是故意低估它的。我认为这非常令人兴奋。我只是不喜欢夸大尚未完成的事情。我确实想更多地玩这个想法,因为它似乎是一件大事,如果你拥有某种类似于自主软件工程师的东西,特别是从研究人员的角度来看,他们会想,“我想构建这个系统。”好吧,让我们来玩玩这个想法。作为一个在职业生涯中致力于开发变革性系统的人,而不是不得不编写今天相当于 MapReduce 或 Tensorflow 的东西,而是简单地说,“这就是我想要的分布式 AI 库的样子。帮我写出来。”你认为你的生产力可能会提高 10 倍吗?100 倍?我印象深刻。我想我在 Reddit 上看到我们有一个新的实验性编码模型,它在编码和数学等方面都好得多。有人外部尝试了一下,他们基本上提示它说,“我想让你实现一个 SQL 处理数据库系统,没有任何外部依赖,请用 C 语言实现。”根据那个人的说法,它做得相当好。它生成了一个 SQL 解析器、一个分词器、一个查询规划系统,以及一些磁盘上数据的存储格式,并且实际上能够处理简单的查询。从那个提示,就像一段文字一样,得到一个初步的尝试,这似乎是软件开发者的生产力的一次巨大提升。我认为你最终会得到其他类型的系统,它们可能不会试图在一个半交互式的、“40 秒内响应”的模式下做到这一点,但可能会运行 10 分钟,并在五分钟后打断你,说,“我已经做了很多了,但我现在需要一些输入。你关心处理视频还是只处理图像,或者别的什么?”这似乎你需要管理工作流程的方法,如果你有很多这样的后台活动正在发生。你能多谈谈吗?如果你真的可以拥有数百万的员工,可以按需启动数十万的员工,他们能够以惊人的速度打字,而且他们——这几乎就像你从 1930 年代的股票交易到现在的现代 Jane Street 一样。你需要某种界面来跟踪所有正在发生的事情,让 AI 集成到这个庞大的 monorepo 中并发挥它们的优势,让人类能够跟踪正在发生的事情。基本上,三年后,Jeff 或 Noam 的日常工作会是什么样子?可能和现在差不多,因为我们已经有了并行化这样一个主要问题。我们有非常、非常多杰出的机器学习研究人员,我们希望他们都能合作并构建 AI。所以实际上,人与人之间的并行化可能与机器之间的并行化相似。我认为这肯定对需要大量探索的事情有好处,比如,“想出下一个突破。”如果你有一个绝妙的主意,在 ML 领域肯定会奏效,那么你只有 2% 的机会成功,如果你很聪明的话。大多数事情都会失败,但如果你尝试 100 件事或 1000 件事或一百万件事,那么你可能会遇到一些惊人的事情。我们有充足的计算能力。就像现代顶尖实验室现在拥有的计算能力可能比训练 Transformer 所需的计算能力多一百万倍。是的,实际上,这是一个非常有趣的想法。假设当今世界上大约有 10,000 名 AI 研究人员在这个社区中取得突破——可能不止。上周 NeurIPS 有 15,000 人。哇。100,000 人,我不知道。是的,也许。抱歉。不,不,有正确的数量级是好的。这个社区每年取得 Transformer 规模突破的可能性,比如说,是 10%。现在假设这个社区大了一千倍,而且它在某种意义上,就像这种对更好的架构、更好的技术的并行搜索。我们是不是每天都有突破?——每年或每天都有突破?也许。听起来很有可能。但这感觉像是机器学习研究的样子吗?如果你能够尝试所有这些实验……这是一个好问题,因为我不知道人们是否没有做过那么多。我们确实有很多伟大的想法。每个人似乎都想以最大规模运行他们的实验,但我认为这是一个人的问题。对一个 1/1000 的规模问题进行测试,然后对 100,000 个想法进行筛选,然后扩大那些看起来有前景的想法,这是非常有帮助的。所以,有一件事全世界可能没有认真对待:人们意识到让模型大 100 倍会呈指数级难度。需要 100 倍的计算量,对吧?所以人们担心从 Gemini 2 到 3,或者以此类推,这是一个指数级更难的问题。但也许人们没有意识到另一个趋势,即 Gemini 3 提出了所有这些不同的架构思想,尝试它们,然后看看什么有效,并且你不断地提出算法进展,使得训练下一个模型越来越容易。这个反馈循环能走多远?我认为人们应该意识到的一件事是,模型一代又一代的改进,部分是由硬件和更大规模驱动的,但同样甚至更重要的是由重大的算法改进和模型架构、训练数据混合等方面的重大变化驱动的,这使得模型在应用于模型的每次浮点运算中都变得更好,所以我认为这是一个很好的认识。然后我认为,如果我们能够自动化地探索想法,我们将能够筛选更多的想法,并将它们引入到下一代模型的实际生产训练中。这将非常有帮助,因为这基本上就是我们目前与许多杰出的机器学习研究人员所做的:查看大量的想法,筛选出那些在小规模下似乎效果不错的东西,看看它们在中小规模下是否效果不错,将它们引入到更大规模的实验中,然后决定为最终模型配方添加大量新的有趣的东西。如果我们能够通过这些机器学习研究人员将这个过程的速度提高 100 倍,让他们轻轻地引导一个更自动化的搜索过程,而不是自己手动管理大量的实验,那将是非常、非常好的。唯一不能加速的是最大规模的实验。你仍然会做这些 N=1 的实验。真的,你只是尝试让一群聪明的人坐在房间里,让他们盯着看,然后弄清楚为什么它有效,为什么它无效。为此,更多的硬件是一个很好的解决方案。以及更好的硬件。是的,我们指望你了。所以, naively 地说,有这个软件,有这个算法方面的改进,未来的 AI 可以做到。还有你正在做的事情。我让你来描述一下。但如果你陷入一种情况,即仅仅从软件层面,你可以在几周和几个月内制造出越来越好的芯片,而更好的 AI 也能做到这一点,那么这个反馈循环不会最终导致 Gemini 3 需要两年,然后 Gemini 4——或者同等水平的飞跃现在是六个月,然后 Gemini 5 是三个月,然后是一个月?你比你 naively 想象的要快得多地达到超人智能,因为这个软件,无论是硬件方面还是算法方面的改进。我最近对我们如何能够极大地加速芯片设计过程感到非常兴奋。就像我们之前讨论的,你设计芯片的当前方式大约需要 18 个月才能从“我们应该制造芯片”到你可以交给台积电的东西,然后台积电需要四个月来制造,然后你拿回来并将其放入你的数据中心。所以这是一个相当长的周期,而且今天的制造时间只是其中的一小部分。但如果你能让它成为主导部分,那么与其让 150 人花费 12 到 18 个月来设计芯片,你可以将其缩减到几个人,通过一个更自动化的搜索过程,探索整个芯片设计空间,并从芯片设计过程的各个方面获得反馈,以了解系统在高层次上试图探索的选择。然后我认为你可以获得更多的探索和更快速的设计,从而得到你真正想交给代工厂的东西。那将是伟大的,因为你可以缩短制造时间,你可以通过以正确的方式设计硬件来缩短部署时间,这样你就可以拿到芯片,然后直接将其插入某个系统。这将带来更多的专业化,硬件设计的时间框架会缩短,这样你就不必展望太远的未来,去考虑什么样的 ML 算法会很有趣。相反,就像你展望六到九个月后,它应该是什么?而不是两年,两年半。那将是相当酷的。我认为制造时间,如果它在你的改进内循环中,你会喜欢……它有多长?领先的节点,不幸的是,需要的时间越来越长,因为它们比以前的旧节点有更多的金属层。所以这通常需要三个到五个月。好吧,但那也和训练运行所需的时间一样,对吧?所以你可能可以同时进行。可能。好吧,所以我想你不能比三到五个月更早。但你可以得到——但同样,是的,你正在快速开发新的算法思想。那可以很快。那可以很快,可以在现有芯片上运行并探索很多很酷的想法。所以,难道不是一种情况,你……我认为人们的期望是,啊,会有一个 S 形曲线。再次,这并非板上钉钉。但就像,这是可能的吗?就是说,你有一个能力爆炸,在人类智能的末端非常迅速地发生,并且以越来越快的速度变得越来越聪明?很有可能。是的。我喜欢这样想。现在,我们有模型可以处理一个相当复杂的问题,并且可以在模型内部将其分解成一系列步骤,可以拼凑出这些步骤的解决方案,并且通常可以给你一个你所要求的整个问题的解决方案。但它不是超级可靠的,而且它擅长将问题分解成五到十个步骤,而不是一百到一千个步骤。所以如果你能从,是的,80% 的时间它能给你一个完美的答案,对于一个十步长的问题,变成 90% 的时间它能给你一个完美的答案,对于一个一百到一千步的子问题,这将是这些模型能力的一次惊人改进。我们还没有到那里,但我认为这就是我们渴望达到的目标。我们不需要新的硬件来实现这一点,但我们会接受。永远不要拒绝新硬件。在不久的将来,一个主要的改进领域是推理时间计算,在推理时间应用更多的计算。我想我喜欢这样描述它,即使是一个巨大的语言模型,即使你每 token 进行一万亿次运算,这比大多数人现在做的都要多,运算成本大约是 10 的负 18 次方。所以你每美元可以得到一百万个 token。我的意思是,与一种相对便宜的消遣相比:你出去买一本书,然后读它,你每美元支付 10,000 个 token。与语言模型交谈比阅读平装书便宜 100 倍。所以有巨大的空间可以说,好吧,如果我们能让这个东西更昂贵但更聪明,因为我们比阅读平装书便宜 100 倍,我们比与客服代理交谈便宜 10,000 倍,或者比雇佣软件工程师或与你的医生或律师交谈便宜一百万倍或更多。我们能增加计算量并使其更聪明吗?我认为在不久的将来,我们将看到很多这样的起飞。过去,我们一直在利用和改进预训练,以及训练后,这些东西将继续改进。但利用推理时间的“更深入思考”将是一次爆炸。是的,推理时间的一个方面是,我认为你希望系统能够积极地探索一系列潜在的解决方案。也许它自己进行一些搜索,获得一些信息,然后消耗这些信息,然后弄清楚,哦,我现在真的很想了解更多关于这个东西。所以现在它会迭代地探索如何最好地解决你向这个系统提出的高级问题。我认为有一个旋钮,你可以让模型给你更好的答案,用更多的推理时间计算,似乎我们现在有一些技术可以做到这一点。你转动旋钮的次数越多,计算成本就越高,但答案就越好。这似乎

就像一个很好的权衡,因为有时你想要非常努力地思考,因为它是一个超级重要的问题。有时你可能不想花费大量的计算资源来计算“一加一等于多少”。也许系统——不应该决定提出集合论的新公理或诸如此类的东西!——应该决定使用计算器工具,而不是一个非常大的语言模型。有趣。

那么,在推理时间方面,是否存在任何障碍,比如有没有某种方式可以让你线性地扩展推理时间的计算?或者这基本上是一个已经解决的问题,我们知道如何投入100倍的计算量、1000倍的计算量,并获得相应更好的结果?我们正在研究这些算法。所以我相信,随着这超过10,000名研究人员(其中许多在谷歌)正在攻克它,我们将看到越来越好的解决方案。

我认为在我们自己的实验工作中确实看到了一些例子,如果你应用更多的推理时间计算,答案会比你只应用10倍时更好,你可以获得比x量计算推理时间更好的答案。这看起来很有用也很重要。但我认为我们希望的是,当你应用10倍的计算量时,答案质量的提升能比我们今天获得的更大。所以这关乎设计新算法,尝试新方法,弄清楚如何最好地花费那10倍而不是x的计算量来改进事物。

它更像搜索,还是更像只是在线性方向上持续更长时间?我非常喜欢Rich Sutton关于《苦涩的教训》的论文,这篇《苦涩的教训》实际上是一篇很棒的单页论文,但其精髓是你可以尝试很多方法,但两种极其有效的技术是学习和搜索。你可以在算法上或计算上应用和扩展这些技术,然后你通常会获得比任何其他方法更好的结果,你可以将其应用于相当广泛的问题。搜索必须是花费更多推理时间解决方案的一部分。也许你探索了几种解决这个问题的方法,那个没奏效,但这个奏效了。我会再多探索一下。

这如何改变你未来数据中心规划等方面的计划?这种搜索可以在哪里异步进行?它必须在线还是离线?这如何改变你所需园区的规模以及这些考量?

一个普遍趋势是,很明显,推理时间计算——你有一个基本已经训练好的模型,并且你想对其进行推理——将成为一种不断增长且重要的计算类别。也许你会更倾向于围绕它来专门化硬件。实际上,第一代TPU就是专门用于推理的,并非真正为训练而设计。随后的TPU则更多地围绕训练以及推理进行设计。但可能当你真的想在推理时大幅增加计算量时,更专业的解决方案会非常有意义。

这是否意味着你可以容纳更多的异步训练?训练?还是推理?或者只是你可以让不同的数据中心不需要相互通信,你可以让他们做一堆……我喜欢把它看作是,你正在尝试进行的推理是否对延迟敏感?比如用户正在主动等待它,还是它是一个后台任务?也许我有一些推理任务,我正在尝试对一整批数据运行,但它不是针对特定用户的。我只是想对它进行推理并提取一些信息。

现在我们可能有很多东西还没有,但你可以在我们大约一周前发布的深度研究工具中看到它的端倪。你可以给它一个相当复杂、高级的任务,比如,“嘿,你能去研究一下可再生能源的历史,以及风能、太阳能和其他技术成本的所有趋势,然后把它放在一个表格里,给我一份完整的八页报告吗?”它会返回一份八页的报告,其中有大约50个参考文献条目。这相当了不起。但你不会主动等待它一秒钟。完成这个大约需要一两分钟。我认为这种计算会有相当一部分,这就是你围绕用户界面会遇到一些问题的地方。好的,如果你有一个用户,后台有20个这种异步任务正在进行,也许每个任务都需要从用户那里获取更多信息,比如,“我找到了你飞往柏林的航班,但没有直飞的。你能接受非直飞的吗?”当你需要更多信息,然后你想把它放回后台让它继续做,比如,寻找柏林的酒店或其他什么的时候,这个流程如何运作?我认为这将非常有趣,推理将很有用。推理将很有用。

推理中也存在一种计算效率,这是训练中没有的。通常,Transformer在训练时可以使用序列长度作为批次,但在推理时却不能真正做到,因为你一次只生成一个token,所以我们可能会设计不同的硬件和推理算法,以提高推理效率。是的,一个很好的算法改进例子是使用草稿模型。所以你有一个非常小的语言模型,你在解码时一次处理一个token,它会预测四个token。然后你把它交给大模型,你说,“好的,这是小模型生成的四个token。检查一下你同意哪些。”如果你同意前三个,那么你就直接前进。那么你基本上就能够在大模型中进行四token宽度的并行计算,而不是一token宽度的计算。这些是人们正在研究的,以提高推理效率,这样你就不会有这种单token解码瓶颈。对,基本上大模型被用作验证器。对,“你能验证吗”,是的。[听不清] 生成器和验证你可以做。对。“你好吗?”这听起来很棒。我将跳过那个。

所以,一个很大的讨论是关于我们如何在向一个单一园区供电方面已经耗尽核电站的潜力。我们是否必须在一个地方只有两千兆瓦,在一个地方只有五千兆瓦,还是可以更分散,并且仍然能够训练模型?这种新的推理扩展模式是否使那里的不同考量变得合理?你现在如何看待多数据中心训练?

我们已经在做了。我们支持多数据中心训练。我认为在Gemini 1.5技术报告中,我们提到我们使用了多个都会区,并在每个地方用一部分计算资源进行训练。然后这些数据中心之间有相当长的延迟但高带宽的连接,这运行良好。训练有点意思,因为训练过程中的每一步,对于大型模型来说,通常至少是几秒钟左右。所以,50毫秒的延迟并不那么重要。只是带宽。是的,只是带宽。只要你能在完成一个步骤所需的时间内,同步模型在不同数据中心的所有参数,然后累积所有梯度,你就做得相当不错了。

然后我们有很多工作,甚至从早期的Brain时代开始,那时我们使用CPU机器,它们非常慢。我们需要进行异步训练来帮助扩展,其中模型的每个副本会进行一些本地计算,将梯度更新发送到一个集中式系统,然后异步应用它们。模型的另一个副本会做同样的事情。这会让你的模型参数稍微摆动,并让人们对理论保证感到不安,但它实际上在实践中似乎是有效的。

从异步到同步是如此令人愉快,因为你的实验现在可以重现,而不是你的结果取决于同一台机器上是否有网络爬虫在运行。所以,我在TPU Pods上运行要开心得多。我喜欢异步。它只是让你扩展更多。带着这两部iPhone和一台Xbox什么的。是的,如果我们能给你异步但可重现的结果呢?哦。所以,一种方法是你有效地记录操作序列,比如哪个梯度更新何时在哪个批次数据上发生。你不一定会在日志或其他地方记录实际的梯度更新,但你可以重放那个操作日志,这样你就能获得可重复性。那我想你会很高兴。可能。至少你可以调试发生了什么,但你不一定能比较两次训练运行。因为,好吧,我在超参数上做了一个改变,但同时我也有一个——网络爬虫。——网络爬虫搞砸了,而且当时有很多人同时在观看超级碗直播。

促使我们从CPU上的异步训练转向完全同步训练的原因是,我们拥有这些超快的TPU硬件芯片和Pod,它们在Pod内的芯片之间拥有惊人的带宽。然后,在此基础上进一步扩展,我们拥有非常好的数据中心网络,甚至跨都会区网络,这使我们能够为我们最大的训练运行扩展到多个都会区中的许多Pod。我们可以完全同步地做到这一点。正如Noam所说,只要梯度累积和跨都会区参数的通信相对于步长足够快,你就万无一失了。你真的不在乎。

但我认为随着你规模的扩大,我们的系统中可能会有更多异步的倾向,而不是现在这样,因为我们可以让它工作,我们的机器学习研究人员一直很高兴我们能够将同步训练推到如此远的程度,因为它是一个更容易理解的心理模型。你只是让你的算法在某种程度上与你对抗,而不是异步性和算法都在与你对抗。随着你规模的扩大,会有更多的事情与你对抗。这就是扩展的问题,你并不总是知道是什么在与你对抗。是不是你在某个地方把量化推得太远了?还是你的数据有问题?也许是你的对抗性机器MUQQ17正在设置你指数的第七位和所有梯度什么的。对。而所有这些事情只会让模型稍微变差,所以你甚至不知道正在发生什么。

这实际上是神经网络的一个问题,它们对噪声的容忍度很高。你可以在很多方面把事情设置得有点不对劲,而它们只是会想办法绕过或学习。你的代码可能有bug。大部分时间那什么都不会做。有时它会让你的模型变差。有时它会让你的模型变好。然后你发现了一些新东西,因为你以前从未在大规模上尝试过这个bug,因为你没有预算。

实际调试或解码是什么样子?你有这些东西,其中一些让模型变得更好,另一些让它变得更糟。明天你去上班时,你如何找出最显著的输入是什么?在小规模上,你做很多实验。研究的一部分涉及,好吧,我想独立地发明这些改进或突破。在这种情况下,你想要一个你可以分叉和修改的漂亮简单的代码库,以及一些基线。我的梦想是早上醒来,想出一个主意,一天之内把它实现,运行一些实验,一天之内得到一些初步结果。比如,好吧,这看起来很有希望,这些东西奏效了,这些东西没奏效。我认为这是非常可实现的,因为——在小规模上。在小规模上,只要你保持一个良好的实验代码库。也许一个实验运行一小时或两小时,而不是两周。这很棒。

所以研究有那一部分,然后有一些扩展。然后你有集成部分,你想要将所有的改进叠加在一起,看看它们在大规模下是否有效,看看它们是否都能协同工作。对,它们如何互动?对,你可能认为它们是独立的,但实际上,也许在改进我们处理视频数据输入的方式和我们更新模型参数的方式之间存在一些有趣的互动。也许这对于视频数据比其他东西的互动更多。可能会发生各种你可能没有预料到的互动。所以你想运行这些实验,你将一堆东西放在一起,然后定期确保你认为好的所有东西在一起也很好。如果不是,就理解为什么它们不能很好地协同工作。

两个问题。第一,事情不总能很好地叠加在一起的情况有多常见?这是一种罕见的情况还是经常发生?它发生50%的时间。是的,我的意思是,我认为大多数东西你甚至不会尝试叠加,因为最初的实验效果不佳,或者它显示的结果相对于基线来说没有那么有前景。然后你就会把这些东西拿出来,尝试单独扩展它们。然后你会说,“哦,是的,这些看起来很有前景。”所以我现在要把它们包含在一个我将捆绑在一起的东西中,并尝试推进并与其他看起来有前景的东西结合。然后你运行实验,然后你会说,“哦,好吧,它们并没有真正奏效。让我们尝试调试原因。”然后就存在权衡,因为你希望你的集成系统尽可能干净,因为复杂性——从代码库的角度。——是的,代码库和算法上。复杂性会带来损害,复杂性会使事情变慢,引入更多风险。然后同时你希望它尽可能好。当然,每个独立的研究人员都希望自己的发明能融入其中。所以那里肯定存在挑战,但我们一直合作得很好。

好的,那么回到整个动态,“你找到越来越好的算法改进,模型随着时间变得越来越好”,即使你把硬件部分排除在外。世界应该更多地思考,你们也应该更多地思考这个问题吗?有一个世界,人工智能是一个需要二十年才能随着时间慢慢变好的东西,你可以不断地完善它。如果你搞砸了什么,你修复它,那也不是什么大问题,对吧?它就像没有比你发布的上一个版本好多少。还有另一个世界,你有一个巨大的反馈循环,这意味着Gemini 4和Gemini 5之间的两年是人类历史上最重要的两年。因为你通过这个反馈循环,从一个相当不错的机器学习研究员变成了超人类智能。如果你认为第二个世界是可信的,那会如何改变你处理这些越来越高智能水平的方式?

我已经停止清理我的车库了,因为我在等机器人。所以我可能更倾向于我们将会看到的第二种情况,即大量的加速。是的,我的意思是,我认为理解正在发生什么以及趋势是什么非常重要。我认为目前的趋势是模型一代比一代好得多。我认为在接下来的几代中,这可能不会放缓。所以这意味着两到三代之后的模型将能够……让我们回到将一个简单任务分解成10个子部分并80%的时间都能做对的例子,到能够将一个任务,一个非常高级的任务,分解成100或1000个部分并90%的时间都能做对的东西。这是模型能力上的一个巨大飞跃。所以我认为人们了解该领域正在发生的进展非常重要。然后这些模型将被应用于许多不同的领域。我认为确保我们作为一个社会,从这些模型能够改进事物中获得最大利益是非常好的。我对教育和医疗保健等领域感到非常兴奋,它们能让所有人都能获取信息。但我们也意识到它们可能被用于散布虚假信息,可能被用于自动化攻击计算机系统,我们希望尽可能多地设置保障措施和缓解措施,并理解模型的能力。我认为谷歌作为一个整体,对我们应该如何处理这个问题有很好的看法。我们的负责任AI原则实际上是一个很好的框架,用于思考在不同背景和设置下提供越来越好的AI系统时的权衡,同时也要确保我们在确保它们安全、不发表有害言论等方面做正确的事情。

我想,如果从宏观角度审视人类历史的这个时期,最让我印象深刻的是,如果我们处在一个世界,你看,如果你对Gemini 3进行后期训练时做得不好,它可能会散布一些虚假信息——但你可以修复后期训练。这是一个糟糕的错误,但它是可以修复的错误,对吧?对。然而,如果你有这种反馈循环动态,这是一种可能性,那么引发这种智能爆炸的错误就是错位的,它不是在尝试编写你认为它正在编写的代码,而是为了其他目标进行优化。而在这个持续几年,甚至可能更短的非常快速的过程的另一端,你拥有的东西正在接近或超越Jeff Dean的水平,或Noam Shazeer的水平。然后你拥有数百万个Jeff Dean级别的程序员副本,而且——总之,那似乎是一个更难恢复的错误。

随着这些系统变得越来越强大,你必须越来越小心。我想说的是,两端都有极端的观点。有一种是,“天哪,这些系统将在所有方面都比人类好得多,我们将会被压倒。”然后还有一种是,“这些系统会很棒,我们根本不必担心它们。”我认为我介于两者之间。我曾是《塑造AI》这篇论文的合著者,你知道,那两种极端观点通常将我们的角色视为一种放任自流,就像我们只是让AI按照它自己的路径发展。我认为实际上有一个很好的论点可以提出,那就是我们要做的是尝试塑造和引导AI在世界上的部署方式,以便它在我们想要获取和受益的领域,比如教育、我提到的一些领域、医疗保健,能够最大程度地有益。并尽可能地引导它远离——也许通过政策相关的事情,也许通过技术措施和保障——远离,你知道,计算机将接管并无限控制它能做的事情。所以我认为那是一个工程问题:你如何设计安全的系统?我认为这有点像我们过去在老式软件开发中所做事情的现代等价物。就像如果你看看,你知道,飞机软件开发,它在如何严格开发安全可靠的系统以执行相当危险的任务方面有很好的记录。困难在于,那里没有某种反馈循环,比如你把一架737飞机和一堆计算资源放在一个盒子里几年,然后它就出来了一个1000版本。

我认为好消息是分析文本似乎比生成文本更容易。所以我相信,语言模型实际分析语言模型输出并找出哪些是有问题或危险的能力,将实际上是解决许多这些控制问题的方案。我们肯定正在研究这些东西。我们现在谷歌有一群杰出的人才正在研究这个。我认为这只会变得越来越重要,无论是从“为人们做好事”的角度,还是从商业角度来看,很多时候,你所能部署的东西都受到保持事物安全的限制。因此,在这方面做得非常非常好变得极其重要。

是的,很明显,我知道你们认真对待这里的潜在利益和成本,这确实非常了不起。我知道你们因此获得了赞誉,但还不够。我认为,你们已经推出了如此多不同的应用,利用这些模型来改进你所谈论的各个领域。嗯,但我确实认为……再次,如果你有一个可能存在某种反馈循环过程的情况,在另一端,你有一个与Noam Shazeer一样好,与Jeff Dean一样好的模型。如果有一个邪恶版本的你在四处游荡,假设有一百万个,我认为那真的非常非常糟糕。那可能比任何其他风险都糟糕得多,也许仅次于核战争之类的。试想一下,比如一百万个邪恶的Jeff Dean什么的。我们从哪里获取训练数据?但是,如果你认为那是一些快速反馈循环过程的合理输出,那么你的计划是什么,好吧,我们有了Gemini 3或Gemini 4,我们认为它正在帮助我们更好地训练未来的版本,它正在为我们编写大量的训练代码。从现在开始,我们只是大致检查一下,验证它。即使你谈到的那些查看这些模型输出的验证器,最终也将由你制造的AI来训练,或者大部分代码将由它们编写。在我们让Gemini 4帮助我们进行AI研究之前,你确切想知道什么?我们真的想确保,在我们让它为我们编写AI代码之前,我们想对它进行这项测试。

我的意思是,我认为让系统探索算法研究思想,这似乎仍然是由人类负责的事情。比如,它正在探索这个空间,然后它会得到一堆结果,我们将做出决定,比如,我们是否要将这个特定的,你知道,学习算法或对系统的改变整合到核心代码库中?所以我认为你可以设置这样的保障措施,使我们能够获得系统的好处,这种系统可以在人类监督下进行改进或某种程度的自我改进,而无需让系统在没有任何人查看其行为的情况下完全自主改进,对吗?这就是我所说的工程保障措施,你希望能够审视你正在部署的系统的特性,不要部署那些在某些衡量标准和某些方面有害的系统,并且你对它的能力以及它在某些场景下可能做什么有了解。

所以,你知道,我认为这绝不是一个简单的问题,但我确实认为让这些系统安全是可能的。是的。我的意思是,我认为我们也将大量使用这些系统来检查自身,检查其他系统。即使作为人类,识别事物也比生成事物更容易。

我想说的一点是,如果你通过API或人们交互的用户界面暴露模型的能力,那么我认为你就有了一定程度的控制权,可以了解它是如何被使用的,并对其能做什么设定一些界限。我认为这是你确保它将要做的事情符合你心中设定的一些标准的方法之一。

是的。我的意思是,我认为目标是赋能人们,但大多数情况下,我们应该主要让人们用这些系统做有意义的事情,并尽可能少地关闭空间中的部分。但是的,如果你让某人拿走你的东西并创造一百万个邪恶的软件工程师,那么那并不能赋能人们,因为他们会用一百万个邪恶的软件工程师伤害他人。所以我反对那样做。我也是。我继续。

好的,我们来谈谈一些更有趣的话题。让它轻松一点。在过去的25年里,最有趣的时光是什么?你对哪个时期最怀念?

我认为在谷歌的最初四五年里,当时我是少数几个从事搜索、爬虫和索引系统工作的人之一,我们的流量增长得非常快。我们当时试图扩大索引规模,并使其每分钟更新一次,而不是每月更新一次,或者如果出现问题就每两个月更新一次。看到我们系统的使用量增长,个人感觉非常满足。建造一个每天被二十亿人使用的东西是相当不可思议的。但我也会说,同样令人兴奋的是今天与Gemini团队的人一起工作。我认为在过去一年半中,这些模型的能力所取得的进展真的很有趣。人们非常投入,对我们正在做的事情非常兴奋。我认为模型在相当复杂的任务上变得越来越好。就像如果你向20年前使用电脑的人展示这些模型的能力,他们不会相信。甚至五年前,他们可能也不会相信。这相当令人满意。我认为我们将看到这些模型的使用量和对世界的影响也会有类似的增长。

是的,我同意你的看法。早期非常有趣。其中一部分只是认识所有人以及社交方面,以及你正在构建一个数百万人正在使用的东西的事实。今天也是一样。我们有那个很棒的微型厨房区域,那里有很多人聚在一起。我喜欢亲自到场,与一群优秀的人一起工作,并构建一个帮助数百万到数十亿人的东西。还有什么能比这更好呢?

这个微型厨房是什么?哦,在我们俩都在的楼里有一个微型厨房区域。它是新的,名为“梯度天篷”。它以前叫查尔斯顿东,我们决定需要一个更令人兴奋的名字,因为那里有很多机器学习研究人员和AI研究正在进行。我们设置了一个微型厨房区域,通常它就像一台意式浓缩咖啡机和一堆零食,但这个特别的区域有很多空间。所以我们在那里设置了大约50张桌子,人们就在那里闲逛。有点吵,因为人们总是在磨豆子和煮意式浓缩咖啡,但你也会获得很多面对面的想法交流,比如,“哦,我试过那个。你有没有想过在你的想法中尝试这个?”或者,“哦,我们下周要发布这个东西。负载测试看起来怎么样?”只是有很多反馈发生。然后我们有我们的Gemini聊天室,供那些不在那个微型厨房里的人使用。我们有一个遍布全球的团队,我可能在120个与Gemini相关聊天室里。在这个特别集中的话题上,我们有七个人在工作,伦敦的同事们正在分享令人兴奋的结果。当你醒来时,你会看到那里发生了什么,或者那是一大群专注于数据的人,那里正在发生各种各样的问题。这很有趣。

我觉得你们做出的一些决定令人瞩目,那就是你们预见到了当时并不明显或不显著的计算需求水平。TPU就是一个著名的例子,或者说第一代TPU就是其中一个例子。你在,我猜是2013年或更早的时候,就有了那种想法,如果你今天以那种方式思考,并估算一下,看,我们将拥有这些模型,它们将成为我们服务的骨干,我们将为它们进行持续的推理。我们将训练未来的版本。你想想看,到2030年我们需要多少计算量来适应所有这些用例,费米估算会把你带到哪里?

是的,我的意思是,我认为你会需要大量的推理。计算是这些有能力模型的一个粗略的、最高层次的看法,因为如果提高它们质量的技术之一是扩大你使用的推理计算量,那么突然之间,目前生成一些token的一个请求现在变得计算密集度是50、100或1000倍,即使它产生相同数量的输出。而且你还会看到这些服务的使用量大幅增长,因为世界上并不是每个人都发现了这些基于聊天的对话界面,你可以让它们做各种各样令人惊奇的事情。今天世界上可能只有10%或20%的电脑用户发现了这一点。随着这个比例向100%推进,人们更频繁地使用它,那将是另一个一到两个数量级的扩展。所以你现在将从那个获得两个数量级,从那个获得两个数量级。模型可能会更大,你将从那获得另一个一到两个数量级。而且你想要大量的推理计算。所以你想要极其高效的硬件来对你关心的模型进行推理。

以浮点运算次数计,2030年全球总推理量是多少?我认为越多总是越好。如果你只是大致想想,好吧,到那时人们会决定将全球GDP的多少比例花在AI上?然后,比如,好吧,AI系统会是什么样子?嗯,也许它是一种个人助理类的东西,戴在你的眼镜里,可以看到你周围的一切,并且可以访问你所有的数字信息和世界的数字信息。也许就像你是乔·拜登,你在内阁里戴着耳机,可以实时为你提供任何建议,为你解决问题,并给你有用的指导。或者你可以和它交谈,它会分析它在你周围看到的一切,以寻找可能对你有用的影响。所以我的意思是,我可以想象,好吧,然后说它就像你的私人助理或你的私人内阁什么的,而且每次你在计算上花费两倍的钱,这个东西就会变得聪明5、10个智商点之类的。那么,好吧,你宁愿每天花10美元拥有一个助理,还是每天花20美元拥有一个更聪明的助理?而且它不仅是生活中的助理,还是让你更好地完成工作的助理,因为它现在让你从一个10倍工程师变成一个100倍或1000万倍工程师?

好的,那么让我们看看:从第一性原理出发,对吗?所以人们会想把世界GDP的一部分花在这上面。世界GDP几乎肯定会大幅增长,比今天高出两个数量级,因为我们有所有这些人工智能工程师在努力改进事物。到那时我们可能已经解决了无限能源和碳排放问题。所以我们应该能够拥有大量的能源。我们应该能够拥有数百万到数十亿的机器人为我们建造数据中心。让我们看看,太阳是多少,10的26次方瓦特之类的?我猜测用于AI帮助每个人的计算量将是天文数字。

我会补充一点。我不确定我完全同意,但朝那个方向思考是一个非常有趣的思想实验。即使你只达到了一部分,那也肯定会是大量的计算。这就是为什么拥有一个尽可能便宜的硬件平台来使用这些模型并将其应用于Noam描述的问题是极其重要的,这样你就可以以某种形式让每个人都能接触到它,并尽可能降低获取这些能力的成本。我认为通过专注于硬件和模型协同设计之类的东西,我们应该能够使这些东西比今天效率高得多。

考虑到你预期的需求增长,谷歌未来几年的数据中心建设规划是否足够积极?我不会评论我们未来的资本支出,因为我们的CEO和CFO可能不希望我这样做。但我会说,你可以看看我们过去几年的资本支出,你会发现我们肯定在这个领域进行了投资,因为我们认为它很重要。我们正在继续构建新的、有趣的、创新的硬件,我们认为这确实有助于我们在向越来越多的人部署这些系统方面拥有优势,包括训练它们,以及我们如何让人们能够使用它们进行推理?

我听你谈论很多的一件事是持续学习,即你可以拥有一个随着时间不断改进的模型,而无需从头开始。这是否存在任何根本性的障碍?因为理论上,你应该能够持续微调一个模型。那个未来在你看来是什么样子?

是的,我一直在越来越多地思考这个问题。我一直很喜欢稀疏模型,因为我认为你希望模型的不同部分擅长不同的事情。我们有Gemini 1.5 Pro模型,其他模型是专家混合模型,现在模型中有些部分会针对某些token激活,有些部分则完全不激活,因为你已经决定这是一个数学导向的东西,这部分擅长数学,这部分擅长理解猫的图像。所以,这让你能够拥有一个能力更强的模型,同时在推理时仍然相当高效,因为它有非常大的容量,但你只激活了它的一小部分。但我认为目前的问题,嗯,我们今天所做的一个限制是,它仍然是一个非常规则的结构,其中每个专家的大小都相同。路径很快就合并在一起。它们不会分支出去,为数学相关的东西设置许多不同的分支,这些分支不会与猫图像之类的东西合并在一起。我认为我们可能应该在这些东西中拥有一个更有机的结构。

我也希望模型的那些部分能够稍微独立地开发。就像现在,我认为我们面临一个问题,我们要训练一个模型。所以,我们做了大量的准备工作,决定我们能想出的最棒的算法和最棒的数据组合。但总是有权衡,比如我们很想包含更多多语言数据,但这可能以包含更少编码数据为代价,因此,模型在编码方面表现较差但在多语言方面表现更好,反之亦然。我认为如果能有一小部分关心特定语言子集的人去创建真正好的训练数据,训练一个模块化的模型部分,然后我们可以将其连接到一个更大的模型上,从而提高其在,比如说,东南亚语言或关于Haskell代码推理方面的能力,那将是非常棒的。然后,你还会有一个很好的软件工程优势,那就是你将问题分解了一点,与我们今天所做的相比,我们现在是有一大群人一起工作。但随后,我们有一个这种整体性的过程,开始对这个模型进行预训练。如果我们能那样做,谷歌周围可以有100个团队。你可以让世界各地的人们致力于改进他们关心的语言或他们关心的特定问题,并共同努力改进模型。那就是一种持续学习的形式。那会非常棒。

你可以简单地将模型粘合在一起,或者将模型的碎片撕下来塞进其他……升级这部分而不丢弃整个东西……或者你只是接上一个消防水带,把这个模型里的所有信息吸出来,塞进另一个模型。我的意思是,那里存在一种对立的兴趣,那就是科学,就,好吧,我们仍然处于快速进步的时期,所以,如果你想做某种受控实验,并且,好吧,我想比较这个东西和那个东西,因为那有助于我们弄清楚要建造什么。出于这种兴趣,通常最好从头开始,这样你就可以在实践层面比较一次完整的训练运行和另一次完整的训练运行,因为它有助于我们弄清楚未来要建造什么。它不那么令人兴奋,但确实能带来快速进展。

是的,我认为可能有一些方法可以通过模块化的版本系统获得很多好处。我有一个冻结版本的模型,然后我包含某个特定模块的不同变体,我想比较它的性能或者再训练它一点。然后,我将其与这个东西的基线进行比较,现在这个特定模块的N'版本可以进行Haskell解释。实际上,那可能会导致更快的科研进展,对吗?你有一个系统,你做了一些事情来改进它。如果你为改进它所做的事情相对于从头训练系统来说相对便宜,那么它实际上可以使研究变得更便宜、更快。

是的,而且我认为在人与人之间也更容易并行化。好的,我们接下来弄清楚并做这件事。所以,这个随意提出的想法,与今天做事的方式相比,实际上将是一个巨大的制度转变。如果你认为事情的发展方向是这样,这是一个非常有趣的预测,关于……你只是有这样一个“斑点”,事物在其中来回管道化——如果你想让某个东西变得更好,你几乎可以做一种外科手术式的切口。对,或者让模型增长,在这里再添加一点。是的,我一直在Pathways中勾勒这个愿景……是的,你一直在构建……我们一直在为此构建基础设施。所以,Pathways这个系统能够支持的很多东西就是这种扭曲、奇怪的模型,它对不同的部分进行异步更新。我们正在使用Pathways来训练我们的Gemini模型,但我们还没有利用它的一些能力。但也许我们应该。哦,也许吧。

有些时候,就像TPU Pods的设置方式一样。我不知道是谁做的,但他们做得非常出色。低级软件栈和硬件栈,好的,你拥有漂亮常规的高性能硬件,你拥有这些出色的环形互连,然后你拥有正确的低级集合操作,比如all-reduce等等,我猜这些来自超级计算,但事实证明它恰好是构建分布式深度学习的正确基础。好的,几个问题。第一,假设Noam又取得了一项突破,现在我们有了一个更好的架构。你会直接把每个模块提取出来,然后把它提炼成这个更好的架构吗?然后它就是这样随着时间不断改进的吗?

我确实认为蒸馏是一个非常有用的工具,因为它能让你将模型从当前的架构形式转换成不同的形式。通常,你用它来将一个功能强大但庞大笨重的模型蒸馏成一个更小的模型,也许你希望用它来提供具有良好、低延迟推理特性的服务。但我认为你也可以将其视为在模块层面发生的事情。也许会有一个持续的过程,每个模块都有几种不同的自我表示。它有一个非常大的。它有一个小得多的,正在不断地蒸馏成小版本。然后小版本一旦完成,你就有点像删除大版本,然后添加更多的参数容量。现在,通过在更多数据上训练它,开始学习蒸馏后的小版本不知道的所有东西,然后你重复这个过程。如果你在模块化模型的后台有这种在数千个不同地方运行的东西,那看起来会运行得相当好。

这可能是一种进行推理扩展的方式,比如路由器决定你想要多大的那个。是的,你可以有多个版本。哦,这是一个简单的数学问题,所以我将把它路由到那个非常小的数学蒸馏模型。哦,这个真的很难,所以……

第一,至少从公开研究来看,在专家混合模型中,通常很难解码每个专家正在做什么。如果你有这样的东西,你将如何强制执行对我们来说可见和可理解的模块化?实际上,过去我发现专家相对容易理解。我的意思是,第一篇专家混合论文,你只需看看专家。“我不知道,我只是专家混合的发明者。”比如,你只需看到,好吧,这个专家,就像我们做的,你知道,一千,两千个专家。好的,这个专家,它获取的是指圆柱形物体的词语。这个在日期方面超级擅长。是的。谈论时间。是的,很容易做到。并不是说你需要人类的理解来弄清楚如何在运行时操作它,因为你只是有一个某种学习过的路由器正在查看示例。

我想说的一点是,有很多关于模型可解释性以及它们内部在做什么的工作。某种专家级别的可解释性是那个更广泛领域的一个子问题。我非常喜欢我的前实习生Chris Olah和Anthropic的其他人在那里做的一些工作,他们训练了一个非常稀疏的自编码器,并能够推断出大型语言模型中某个特定神经元的特征,所以他们发现了一个金门大桥神经元,当你谈论金门大桥时它会被激活。我认为你可以在专家层面做到这一点,你可以在各种不同的层面做到这一点并获得相当可解释的结果,而且你是否一定需要它还有点不清楚。如果模型只是在某些方面表现得非常好,我们不一定关心Gemini模型中的每个神经元在做什么,只要整个系统的集体输出和特性是好的就行。那是深度学习的魅力之一,你不需要理解或手动设计每一个特征。

天哪,这有太多有趣的含义了,我简直可以一直问你这个问题——我如果不多问你一些会后悔的,所以我将继续。一个含义是,目前,如果你有一个拥有数百亿或数千亿参数的模型,你可以在少数几个GPU上提供服务。在这个系统中,任何一个查询可能只通过总参数的一小部分,但你需要将整个模型加载到内存中,谷歌投资的这种TPU基础设施,以数百或数千个Pod的形式存在,将是极其宝贵的,对吧?对于任何一种甚至现有的专家混合模型,你都希望将整个模型加载到内存中。

我想,关于专家混合模型,存在一种误解,认为,好吧,好处是你甚至不必遍历模型中的那些权重。如果某个专家未被使用,这并不意味着你不需要检索那部分内存,因为,实际上,为了高效,你是在非常大的批次大小下提供服务的。独立的请求。对,独立的请求。所以情况并非如此,好吧,在这一步,你要么查看这个专家,要么不查看这个专家。因为如果那样的话,当你查看专家时,你将以批次大小为1运行它,这是极其低效的。就像你拥有现代硬件,操作强度是几百之类的。所以那不是正在发生的事情。而是你正在查看所有专家,但你只需要将批次的一小部分通过每个专家。对,但你仍然在每个专家那里有一个较小的批次,然后通过。为了获得某种合理的平衡,当前模型通常做的一件事是,它们让所有专家具有大致相同的计算成本,然后你通过它们运行大致相同大小的批次,以便在推理时传播你正在处理的非常大的批次并具有良好的效率。但我认为你未来可能经常会想要计算成本相差100或1000倍的专家。或者在一种情况下路径经过多层,而在另一种情况下只经过一层甚至跳过连接。在那里,我

你认为你仍然需要非常大的批次,但你希望在推理时稍微异步地将事物推送到模型中,这比训练时更容易。这是 Pathways 的设计目标之一。你有这些组件,组件的成本是可变的,你可以说,对于这个特定的例子,我想通过模型的这个子集,而对于那个例子,我想通过模型的那个子集,并让系统进行编排。这也意味着需要一定规模和复杂度的公司才能做到……。目前,任何人都可以训练一个足够小的模型。但如果未来训练模型的最佳方式是这样,那么你就需要一家公司,它基本上可以拥有一个数据中心来服务一个单一的、所谓的“blob”或模型。所以,从这个意义上说,这将是一个有趣的范式转变。你绝对希望至少有足够的 HBM 来容纳你的整个模型。所以,根据你的模型大小,这很可能就是你最低限度想要的 HBM 量。这也意味着你不必将整个模型的占用空间扩展到数据中心的大小。你可能希望它比那个小一点。然后,可能有很多副本,其中一个特别的专家被大量使用,这样你就可以获得更好的负载均衡。这个专家被大量使用,因为我们有很多数学问题,而这个专家是关于塔希提舞的,它很少被调用。那个,你甚至可以将其分页到 DRAM,而不是将其放入 HBM。但你希望系统根据负载特性来弄清楚所有这些事情。目前,语言模型显然是这样的:你输入语言,输出语言。显然,它是多模态的。但 Pathways 的博客文章谈到了许多不同的用例,它们不一定是这种自回归性质,通过同一个模型。你能想象,基本上,谷歌作为一家公司,产品就像谷歌搜索通过这个,谷歌图片通过这个,Gmail 通过它?就像整个服务器就是一个巨大的专家混合体,专门化的?你已经开始看到一些这样的迹象,即谷歌内部大量使用了 Gemini 模型,而这些模型不一定是经过微调的。它们只是针对这个特定用例、这个功能、这个产品设置提供了指令。所以,我绝对看到了底层模型的能力在越来越多的服务中得到更多的共享。我认为这是一个非常有趣的发展方向,肯定如此。是的,我觉得听众可能没有意识到这是一个多么有趣的关于人工智能发展方向的预测。这就像在 2018 年的播客中请来诺姆·乔姆斯基,然后说:“是的,我认为语言模型将会是一种东西。”就像,如果这就是事情的发展方向,那实际上是极其有趣的。是的,而且我认为你可能会看到那可能是一个大型基础模型。然后你可能想要该模型的定制版本,并为可能具有访问限制的不同设置添加不同的模块。也许我们有一个内部版本供谷歌使用,供谷歌员工使用,我们已经对内部数据训练了一些模块,并且不允许其他人使用这些模块,但我们可以利用它。也许其他公司,你可以添加对该公司设置有用的其他模块,并在我们的云 API 中提供服务。使这种系统可行的瓶颈是什么?是系统工程吗?是机器学习吗?这与我们目前的 Gemini 开发方式非常不同。所以,我认为我们将探索这些领域并取得一些进展。但我们需要真正看到证据表明这是正确的方式,它有很多好处。其中一些好处可能是质量的提高,一些可能不那么具体可衡量,比如能够进行大量不同模块的并行开发。但这仍然是一个相当令人兴奋的改进,因为我认为这将使我们能够更快地在改进模型在许多不同领域的不同能力方面取得进展。即使是数据控制模块化似乎也非常酷,因为那样你就可以拥有那个只为我训练的模型部分。它知道我所有的私人数据。比如一个为你量身定制的个人模块会很有用。另一件事可能是你可以在某些设置中使用某些数据,但在其他设置中不能。也许我们有一些 YouTube 数据只能在 YouTube 产品界面中使用,而在其他设置中不能。所以,我们可以有一个模块,它在该数据上针对该特定目的进行训练。我们需要一百万个自动化研究人员来发明所有这些东西。这将会很棒。是的,嗯,这个东西本身,你构建了 blob,它会告诉你如何改进 blob。Blob 2.0。或者也许它们甚至不是版本,它只是一个渐进增长的 blob。是的。好的,杰夫,从大局来看,为什么这是一个好主意?为什么这是下一个方向?是的,这种有机生成的、不那么经过精心数学构建的机器学习模型的概念已经伴随我一段时间了。我觉得在神经网络的发展中,人工神经元,从生物神经元获得的灵感是一个好的想法,并且在深度学习领域对我们很有帮助。我们已经取得了很大的进展。但我觉得我们并没有像我们可能的那样多地关注真实大脑的其他功能,这并不是说我们应该完全模仿它,因为硅和生物硬件的特性和优势非常不同。但我确实认为我们可以从中获得更多灵感的是拥有不同专业化部分的概念,就像大脑中擅长不同事情的区域一样。我们在专家混合模型中有一点这个,但它仍然非常结构化。我觉得这种更具机理性的专业知识增长,当你想要更多的这种专业知识时,你就为模型增加了更多的容量,让它在这个方面学习更多。此外,将模型的连接性与硬件的连接性相匹配的概念也是一个好主意。我认为你希望在同一芯片和同一 HBM 中的人工神经元之间拥有极其密集的连接,因为这不会花费你太多。但然后你希望与附近神经元的连接数量较少。所以,比如一个芯片之外,你应该有一些连接,然后,比如许多许多芯片之外,你应该有较少的连接,在那里你通过一个非常有限的瓶颈式的东西发送:这个模型的一部分正在为模型的其他部分学习的最重要的事情,以便其他部分可以利用。即使跨多个 TPU Pod,你也希望发送更少的信息,但最突出的表示形式。然后在都会区之间,你希望发送更少。是的,然后它有机地出现。是的,我希望它有机地出现。你可以手动指定这些特性,但我认为你不知道这些连接的正确比例是多少,所以你应该让硬件稍微决定一下。比如,如果你在这里通信,而这些数据总是很早就出现,你应该增加一些连接,然后它会花费更长的时间,并在恰当的时候出现。哦,这里还有另一个有趣的含义:目前,我们将 AI 使用的增长视为一种水平增长——所以,假设你问,谷歌将有多少 AI 工程师为其工作?你考虑有多少个 Gemini 3 实例会同时工作。如果你有这个,无论你想怎么称呼它,这个 blob,它可以有机地决定激活多少自己,那么它更像是,如果你想要 10 位工程师的产出,它只是激活一个不同的模式或一个更大的模式。如果你想要 100 位工程师的产出,它不是调用更多的代理或更多的实例,它只是调用不同的子模式。我认为有一个概念是你希望在这个特定的推理上花费多少计算量,对于非常简单的事情和非常困难的事情,这可能相差一万倍,甚至一百万倍。这可能是迭代的,你可能会通过模型进行一次传递,得到一些东西,然后决定你现在需要调用模型的其他部分。我想说的另一件事是,部署起来听起来非常复杂,因为它是一个奇怪的、不断发展的实体,可能没有非常优化的组件之间的通信方式,但你可以随时从中提炼。如果你说,“这是我真正关心的任务类型,让我从这个巨大的有机体中提炼出一些我能高效服务的东西,”你可以随时进行提炼过程,每天一次,每小时一次。这似乎还不错。是的,我们需要更好的提炼。是的。任何发明了神奇提炼技术的人,能够立即从一个巨大的 blob 中提炼到你的手机上,那将是极好的。你将如何描述当前提炼技术所缺失的东西?嗯,我只是希望它能更快地工作。相关的是,我觉得我们需要有趣的预训练学习技术。我不确定我们是否从当前训练目标中提取了我们看到的每个 token 的最大价值。也许我们应该更认真地考虑一些 token。当你得到“答案是”时,也许模型在训练时应该做比得到“the”时更多的工作。对。一定有一种方法可以从相同的数据中获得更多,使其正向和反向学习。以及各个方面。以这种方式隐藏一些东西,以那种方式隐藏一些东西,让它从部分信息中推断。我认为人们在视觉模型中已经这样做了很长时间。你扭曲模型或隐藏部分模型,然后尝试让它从一半的图像中猜出鸟,比如从图像的右上角或左下角猜出鸟。这使得任务更难,我觉得对于更多文本或编码相关的数据也有类似的类比,你想强迫模型更努力地工作。你会从中得到更有趣的观察。是的,图像领域的人没有足够标记的数据,所以他们不得不发明所有这些东西。他们发明了——我的意思是,dropout 是在图像上发明的,但我们主要不将其用于文本。这是你在不发生过拟合的情况下,在更大规模的模型中获得更多学习的一种方式,就是对全世界的文本数据进行 100 个 epoch 的训练并使用 dropout。但这计算成本相当高,但它确实意味着我们不会运行它。尽管人们说,“哦不,我们几乎没有文本数据了,”我并不真正相信,因为我认为我们可以从现有的文本数据中获得更强大的模型。我的意思是,一个人看过十亿个 token。是的,他们擅长很多事情。所以显然人类数据效率设定了一个下限,或者说上限,其中一个,也许不是。这是一个有趣的数据点。是的。所以这里有一种推理模式,一种肯定模式。一种看待它的方式是,你看,LLM 还有很长的路要走,因此,如果我们能匹配人类,我们预计样本效率会提高几个数量级。另一种是,鉴于数量级的差异,它们可能在做一些明显不同的事情。你直觉上认为需要什么才能使这些模型像人类一样具有样本效率?是的,我认为我们应该考虑稍微改变训练目标。仅仅从你之前看到的 token 来预测下一个 token,似乎不是人们学习的方式。我认为这与人们学习的方式有点关系,但并非完全如此。一个人可能会读完一整本书的章节,然后尝试回答后面的问题,这是一种不同的事情。我也认为我们没有从视觉数据中学到太多东西。我们正在对视频数据进行一些训练,但我们肯定还没有接近于考虑训练所有你能获得的视觉输入。所以你有我们还没有真正开始训练的视觉数据。然后我认为我们可以从我们看到的每一份数据中提取更多信息。我认为人们之所以如此高效样本的原因是他们探索世界,在世界中采取行动,并观察会发生什么。你看到非常小的婴儿捡起东西又放下它们;他们从中学习重力。当你不是主动发起动作时,学习这一点要困难得多。我认为一个能够将动作作为其学习过程一部分的模型,会比仅仅被动地观察一个巨大的数据集要好得多。那么 Gato 是未来吗?一个模型可以观察并采取行动并观察相应结果的东西似乎非常有用。我的意思是,人们可以从不涉及额外输入的思想实验中学习很多东西。爱因斯坦从思想实验中学习了很多东西,或者像牛顿进入隔离区,一个苹果掉在他头上之类的,然后发明了万有引力。就像数学家一样——数学没有任何额外的输入。国际象棋,好吧,你让那个东西和自己下棋,它就会擅长国际象棋。那是 DeepMind,但它只需要国际象棋的规则。所以实际上有很多学习,即使没有外部数据也可以完成,然后你可以将其应用于你关心的领域。当然,有些学习需要外部数据,但也许我们可以让这个东西和自己对话,让自己变得更聪明。所以这是我的问题。你在过去一个小时里提出的可能是人工智能的下一个重大范式转变。这是一个非常有价值的见解,潜在地如此。诺姆,你在 2017 年发布了 Transformer 论文,基于此,其他公司拥有数十亿甚至数百亿美元的市场价值,更不用说谷歌长期以来发布的所有其他研究,你一直相对慷慨。回想起来,当你想到泄露这些对竞争对手有帮助的信息时,回想起来,你是觉得,“是的,我们仍然会这样做,”还是你会觉得,“啊,我们没有意识到 Transformer 有多重要。我们应该把它留在内部。”你怎么看待这件事?这是一个好问题,因为我认为我们可能需要看到机会的大小,这通常反映在其他公司正在做什么。而且它也不是一个固定的馅饼。世界目前的状况几乎不可能比固定馅饼更远。我认为我们将看到 GDP、健康、财富以及你能想到的任何其他方面的数量级改进。所以我认为 Transformer 能够传播开来真是太好了。它是革命性的。哇。谢天谢地,谷歌也做得很好。所以这些天我们确实发布了我们正在做的事情的比例有所减少。总是有这种权衡:我们应该立即发布我们正在做的事情吗?我们应该把它放到下一阶段的研究中,然后将其推广到生产 Gemini 模型而不发布它吗?还是有一个中间点?例如,在我们 Pixel 相机的计算摄影工作中,我们经常决定开发有趣的新技术,比如在低光情况下进行超好的夜视能力,或者其他什么,将其放入产品,然后在产品发布后发表一篇关于该系统的研究论文。不同的技术和发展有不同的处理方式。有些我们认为超级关键的东西我们可能不会发布。有些我们认为非常有趣但对改进我们的产品很重要;我们会将其纳入我们的产品,然后决定:我们是否发布了它,还是给它一个轻量级的讨论,但可能不是每一个细节?其他一些我认为我们公开发布并努力推进该领域和社区,因为这就是我们所有人都从参与中受益的方式。我认为去参加像上周的 NeurIPS 会议那样有 15,000 人分享大量精彩想法的会议是很棒的。我们发表了很多论文,就像过去一样,看到该领域取得进展真是令人兴奋。你如何解释……所以显然谷歌很早就有了所有这些内部见解,包括顶尖研究人员。现在 Gemini 2 已经发布了。我们没有太多机会谈论它,但人们知道它是一个非常好的模型。如此好的模型。正如我们在微型厨房里说的,“如此好的模型,如此好的模型”。所以它在 LMSYS Chatbot Arena 中名列前茅。所以现在谷歌处于领先地位。但你如何解释基本上在几年里提出了所有伟大的见解?尽管如此,其他竞争对手的模型在一段时间内更好。我们长期以来一直在研究语言模型。诺姆早期在 2001 年的拼写纠正工作,翻译工作,2007 年的大规模语言模型,以及 seq2seq 和 word2vec 以及更近期的 Transformers 和 BERT。像内部的 Meena 系统,它实际上是一个基于聊天机器人的系统,旨在让人们进行有趣的对话。在我们推出 ChatGPT 之前,我们实际上有一个内部聊天机器人系统,谷歌员工可以玩。实际上,在大流行期间,许多谷歌员工会喜欢花时间,你知道,每个人都被锁在家里,所以他们喜欢在午餐时与 Meena 聊天,因为它就像一个不错的午餐伙伴。我认为从搜索的角度来看,我们对这些模型的一个看法是它们会产生很多幻觉,它们很多时候——或者有时——不会得到正确答案,这意味着它们不像它们本可以的那样有用,所以我们想改进这一点。从搜索的角度来看,你希望 100% 的时间都能得到正确答案,理想情况下并且非常注重事实性。这些模型远未达到这个标准。我认为我们有点不确定的是,它们非常有用。哦,它们还有各种安全问题,比如它们可能会说冒犯性的话,我们必须在这方面努力,并将其提升到一个我们愿意发布模型的程度。但我认为我们没有完全认识到它们对于你不会问搜索引擎的事情来说有多么有用,对吧?比如,帮我写一封给兽医的便条,或者,你能把这段文字给我一个快速的摘要吗?我认为这就是人们真正趋之若鹜的方面,将聊天机器人视为全新的强大功能,而不是纯粹的搜索引擎。所以我认为我们花了时间,并达到了我们实际上发布了非常强大的聊天机器人,并且通过 Gemini 模型一直在不断改进它们。我认为这实际上不是一条糟糕的道路。我们是否希望更早地发布聊天机器人?也许吧。但我认为我们有一个非常棒的聊天机器人,拥有不断改进的、很棒的 Gemini 模型。这很酷。所以我们讨论了你们在过去 25 年里的一些工作,而且领域非常多,对吧?你从搜索和索引开始,到分布式系统,到硬件,到 AI 算法。而且,说实话,还有成千上万个,只需查看你们任何一个人的 Google Scholar 页面或类似的东西。拥有这种水平的职业寿命,不仅能够几十年地取得突破,而且还拥有如此广泛的不同领域,你们两个,按任何顺序,职业寿命和广度的秘诀是什么?我喜欢做的一件事是了解一个新而有趣的领域,而做到这一点最好的方法之一是关注正在发生的事情,与同事交谈,关注正在发表的研究论文,并观察不断发展的研究格局。愿意说,“哦,芯片设计。我想我们是否可以在某个方面使用强化学习?”能够深入到一个新领域,与那些对不同领域或医疗保健 AI 等有深入了解的人合作。我曾与临床医生合作过一些关于实际问题是什么,AI 如何提供帮助?对于这件事来说可能没那么有用,但对于那件事来说会非常有用。获得这些见解,并且通常与一组五六个拥有与你不同的专业知识的同事合作。它使你们能够共同完成你们任何一个人都无法单独完成的事情。然后你们的专业知识会相互影响,现在你有了更广泛的工具集,可以作为一名工程研究人员去处理下一件事。我认为这是在工作中持续学习的美妙之处之一。我珍视这一点。我真的很喜欢深入研究新事物并看看我们能做什么。我想说,也许一个很大的因素是谦逊,比如,我会说我是最谦虚的。但说真的,说我刚才所做的与我能做的或可以做的事情相比微不足道。并且能够在你看到更好的东西时放弃一个想法,比如你或某人有一个更好的想法,你看到你正在思考的,他们正在思考的,或者完全不同的东西可能以更好的方式奏效。我认为在某种程度上有一种驱动力说,“嘿,我刚刚发明的这个东西很棒,给我更多的芯片。”特别是如果有很多自上而下的资源分配。但我也认为我们需要激励人们说,“嘿,我正在做的事情根本行不通。让我完全放弃它,尝试一些别的东西。”我认为 Google Brain 在这方面做得相当好。我们有非常底层的 UBI 式的芯片分配。你有一个 UBI?是的,基本上每个人都有一张信用额度,你可以将它们汇集起来。Gemini 大部分是自上而下的,这在某种意义上非常好,因为它带来了更多的协作和人们的合作。你很少会看到五组人都在构建相同的东西或可互换的东西。但另一方面,它确实导致了一些激励措施,比如,“嘿,我正在做的事情效果很好。”然后,作为一个领导者,你听到数百个小组,每个人都说,“所以你应该给他们更多的芯片。”说“嘿,我正在做的事情实际上并不奏效。让我尝试一些不同的东西”的动力就小了。所以我想,未来,我们将会有一定程度的自上而下,一定程度的自下而上,以激励这两种行为:协作和灵活性。我认为这两者都带来了很多创新。我认为阐明我们应该前进的有趣方向也很好。我有一个内部幻灯片,名为“走,杰夫,疯狂的想法”。我认为这些更多的是面向产品的想法,比如,“嘿,我认为现在我们有了这些能力,我们可以做这 17 件事。”我认为这是一件好事,因为有时人们会对此感到兴奋,并希望与你一起开始从事其中一项或多项工作。我认为这是一种很好的方式来引导我们应该去哪里,而不必命令人们,“我们必须去这里。”好了,这太棒了。是的。谢谢你们。感谢你们抽出时间,很高兴聊天。那太棒了。