主持人: 究竟是 pre-training 还是 post-training,使得模型能够以这些神奇的涌现方式进行泛化,并且我们如何控制这个过程,使得当一家公司拥有一套私有数据时,我们能让模型学好这些私有数据,就像它们知道法国的首都,或者知道怎么写 Python 一样?我认为这是一个非常有趣的值得思考的问题。

主持人: 欢迎来到《Training Data》。我们非常高兴今天邀请到 Engram 的联合创始人 Dan Biderman 和 Jessy Lin。Engram 是一家专注于 memory 和 continual learning 的新型实验室(neolab),这也是当今所有 AI 研究中最热门的两个话题。好的,今天 Sean 和我很高兴能与你们深入探讨这些话题。

Dan: 太棒了。很高兴来到这里。

主持人: 很好。首先,Engram 的网站上写着:“我们不通过 pre-training 或 post-training 的视角来看待世界。我们的模型始终在进行 training。”这是什么意思呢?

Jessy: 我觉得当今的模型显然已经知道很多东西,它们极其聪明。但我们认为,让这些模型变得更有用的瓶颈,实际上不在于原始的智能,而在于理解新的、不断发展的 context。所以,无论是你正在做的一项新任务,还是某个特定工作的 context,你如何将这些知识烘焙进模型 weights 中,就像 pre-training 和 post-training 极其深度地将知识烘焙进模型 weights 里一样。这就是为什么我们认为自己正在解决 memory 和 continual learning 这两个根本性问题,它们其实是一体两面。你如何让模型学习新事物,并将它们深度烘焙进模型的 weights 中?

主持人: 那么你们的假设是,把 memory 作为一个独立的数据库,或者某个你塞进 context window 里的独立事物,这并不是真正的 memory,也不是真正的 continual learning 吗?

Jessy: 我认为所有这些工具最终会结合在一起。目前人们解决这些问题的方法主要是 context engineering。比如你写一个巨大的 prompt,或者你花几个小时和模型进行多轮对话,重新组织 context 以便让模型更好地理解你想做什么。我们认为像工具使用、context engineering 这类东西会发挥作用。但我认为目前一个未被充分利用的工具是,使用 frontier 实验室用来让模型精通前沿数学或代码的那种 training pipeline、框架或工作流,将其应用到公司的每一种领域、每一种 context 中去。

Dan: 是的。对我来说,就像作为个人,做笔记和贴便签是非常有价值的,我们不应该抛弃它。但是当我们第二天回到工作中时,我们大脑里总会有某种记忆的痕迹,对事情应该是什么样以及我们应该去哪里寻找信息有了一些新的直觉。所以这两件事应该结合起来。而目前的解决方案更多是外化的 memory。这有两个问题。一个是,我们所有人集体和个人生成的 tokens 数量很快就会达到每天数千万的规模。所以仅仅是保存它们、在其中搜索,并且重新读取它将会非常昂贵,而且除非我们取得重大的突破,否则这对模型来说也会变得非常困难和令人困惑。

主持人: 对 Sean 来说可能是数十亿个 tokens。[笑声]

Dan: 不错,那得看是哪天了。

主持人: 你们能给我们介绍一下 Engram 的架构,或者 Engram 的产品以及它是如何运作的吗?

Jessy: 当然,从宏观层面上讲,我们想要做的是提取任何 context,比如说各种不同的 workspaces。我们正与 Notion、Microsoft 和 Harvey 等合作伙伴合作,人们在这些地方长期进行大量工作。这里存在着所有的 context,无论是你们团队已经写好的文档,还是现在人们越来越多地在这些产品上与 agents 进行交互,或者是进行对话、提供反馈,我们要弄清楚如何让一个模型深刻理解这些 context。不仅仅是在测试时读取文件,而是像在你们公司工作多年的员工那样真正理解它。所以你在宏观上就能理解,哦,这些是整个公司的各种项目;这是我们做事的方式;你研究过如何运作招聘流程,或者如何在公司内做各种事情。而且模型在公司里运作得和任何其他人一样出色。因此,我们正在做的是在这些 workspaces 内,为每个团队训练模型,让它们深刻理解那些 context,并能随着时间的推移,在人们关心的事情上不断改进。在技术层面上,我们的做法可能是将这些信息 training 进 weights 中。所以我们做了很多类似 adapter fine-tuning 的工作。各种类型的 adapters,我想人们对这方面的研究已经有几十年了,无论是 LoRA、prefixes,还是稀疏架构。我认为所有这些工具我们都可以使用。然后是弄清楚什么是合适的数据。你如何将任何原始文档或交互转化为模型有用的 training signal?同样,我们现在有各种各样的工具,比如 supervised fine-tuning、RL、同策略蒸馏等等,这些都是整个领域已经发展出来的东西。我们正试图将这些部分拼凑在一起,构建一个能围绕人们关心的事情进行 continual learning 的模型。

Dan: 是的。这并不是在打赌工具不存在,我们的模型始终在某些知识是外化的假设下运行。一些工具总是存在的。但你需要做的是,弄清楚——这也是一项艰巨的任务——哪些东西需要内化,哪些东西可以外化。即使对于外化的东西,许多个人和公司都有自己定制的工具和做事方式。并不是每个人都拥有 frontier 模型 training 时用的那种 bash CLI 工具。如何让模型更好地理解你们团队定制的设置,我认为这本身就是一件非常有趣的事情。

主持人: 那么,前提是我的 Notion agent 将成为一个经过 LoRA fine-tuning 的定制 agent,或者通过某种 adapter 进行调优,以便它能够不断学习我 Notion workspace 中添加的新内容。是这个前提吗?

Dan: 是的。他们正在使用许多模型,并且他们是所有 frontier 模型的早期用户,他们可能会继续这样做。

主持人: 这种方法在 frontier 模型上有效吗?还是说那些闭源的 frontier 模型……

Dan: 我们需要白盒权限,你需要对 weights 拥有白盒访问权限,对吧?所以我们可以与那些拥有闭源 weights 的公司合作来做这件事,但是使用开源模型对我们来说是最容易的。不过任何基于 Transformer 的模型,我们都可以对其进行我们的处理。

主持人: 那么,当人们比较使用你们产品前后时的权衡是什么?是不是他们不再需要发送那么多的 context 了?所以权衡就是,你前期消耗更多的算力,将你们公司的做事方式学习到 weights 中,然后你在每次推理时发给模型的 context 就会更少。大概是这种权衡吗?

Dan: 权衡?这是一方面。你不需要重新搜索和重新阅读东西,也不需要写那些极其庞大的 system prompts,这已经能让你在 token 的推理消耗上减少两个数量级了。它不是减少 50%,而是可能节省 100x fewer tokens。因为很多事情,尤其是涉及人员、团队、组织和优先级的事情,除非你们真的极其严谨并且把所有事情都记录下来了,否则你无法在单一文档中找到这些信息。这些东西模型可以通过对部分数据的 training 隐式地学习到,并且在 100 个 tokens 内回答出最顶尖的 frontier 模型需要消耗 10 万个 tokens 才能完成的事情。所以这些例子很有趣。另外还有质量问题,有些任务对于当前一代模型来说并不是非常自然能处理的,我们认为在这方面将会持续存在三到六个月的差距,即一些人们正在探索的定制化事物,当前模型还不能很好地处理。模型在未来的某个时候会变得擅长处理这些,但如果你能以一种非常轻量级的方式进行自主学习,它将在这段时间内提供能力上的价值。

主持人: 比如说,为什么要选择在 workspace 级别进行 training,而不是在个人级别?

Dan: 其实两者对我们来说都可以。只是从团队开始更容易,因为团队在收集 context 方面更有纪律性,而且他们多年积累的 context 数量也很大,所以我们很容易从这里起步。但总有一天,每个人的电脑和手机都会成为我们技术的有用目标,事实上走到那一步会非常有趣。我们只是认为,目前信息的巨大存储库在于从事知识工作并且相互协作的团队。

主持人: 大型语言模型中内置了如此多的事实记忆,这究竟是一个 feature 还是一个 bug?有一种观点认为,模型只是死记硬背像“法国首都是巴黎”这样的事实,这实际上是件坏事。

Dan: 我们更希望模型做的是抽象地学习国家和首都的概念。是的。

主持人: 而不是在 weights 中记住所有这些事实。所以我很好奇,你们对解耦 memorization 记忆与 learning 学习有什么看法?当今模型中是如何做的,以及你们打算如何处理它?

Jessy: 是的,我认为这是一个非常有趣的问题。在某种程度上,你需要记住一些东西,才能将它们组合成更复杂的概念。我认为现在缺少的是,弄清楚什么是重要的、值得记住的。即使是现在,当你考虑学习新知识时,如果你去看看许多学术基准测试,你会发现它们关注的是:我们如何学习非常具体的事实,比如非洲某个国家某座桥的长度,但这并不是你真正希望模型投入算力去记忆的东西,也不是我们投入算力去解决的方向。所以,如果你看看人类的记忆——当然 Dan 可以就此说得更多——它是会丢失信息的。因为智能的特征之一就是压缩重要的东西,并将其与不重要的东西分离开来。因此,我认为你不能像某些人想象的那样,真正地把事实学习与非事实学习或技能学习分开。如果你拿一个模型,有些人曾经这样做过,你把所有的事实都剥离掉,只保留纯粹的核心或其他类似的东西,这作为一个模型来说是非常不自然的,它不知道最基础的东西,你或多或少需要那部分。但我认为……

主持人: 为什么你需要那个?为什么你不能只查找事实,然后直接……

Jessy: 我觉得如果你观察模型是如何思考的,如果需要回忆基本事实才能进行下一步思考,你很难走得太远。这也许只是一种高层直觉,但这正是为什么我们认为 training 非常重要的一部分原因。

主持人: 为了能对事物进行越来越复杂和深度的思考,你需要将一些东西内化,这样你才能将它们组合成更加抽象的概念。

Dan: 是的。之前也有过一些难以扩展的尝试,试图将两者解耦,并以一种允许模型检索和搜索事物而不是内化它们的方式进行 pre-train。只是我们目前集体用来爬坡的秘诀就是这种事实的 pre-training 阶段。我认为这种方法的神奇之处或神秘之处在于,在传统的 CS 中,数据库会作为自己的一门学科,我们会有算法。数据库就像关于世界的事实和各国首都,你存储它们并查询它们;同时也存在如何高效处理信息并在样本高效的情况下获取答案的算法。我认为深度学习的神奇之处在于这两者现在被混杂在了一起,我们需要所有这些聪明人和 Anthropic 的 interpretability 研究来试图将它们拆分开。我认为我们现在在 AI 融入经济过程所看到的很多情况是,这些东西又在逐渐分离,公司拥有自己的 context,他们非常小心地处理它们并精心策划,而存在一个对这些 context 完全陌生的通用模型,该模型在这些数据上运行。但对我们来说很清楚,两者之间必须要进行某种融合,至少保持一定的节奏,将这些事实、故事和细节混合进模型中。这也有劣势,因为你知道像国家首都虽然会变但并不频繁,但还有很多其他事实无时无刻不在改变,仅仅是将它们烙印进 weights 中是一件非常有挑战性的事。

主持人: 我明白了。所以你是在说,试图将算法与数据库分离开来是一种错误的二元对立。真正重要的是如何区分什么是值得记忆的。

Dan: 以及什么是不重要的。

主持人: 没错。关于人类如何做梦这也是个开放性问题,你们在 ranking 方面有从中汲取什么灵感吗?

Jessy: 非常非常宽泛的灵感。我觉得就是缺少了这样一个阶段:你接受一个 context 然后将它深度内化。现在一切都发生在 test time。你看着用户提供的 context,并在进行实时的思考。但再说一遍,你无法走得太远。或者你可能只能走这么远,并在过程中犯错。你该如何把这些经验消化并反馈回模型中,好让下次你做这件事时,用正确的方式去做并取得更大的进展?

Dan: 是的。那什么是梦呢?如果说我们想建立一个像人类做梦一样的 AI,听起来可能有点疯狂。梦境中没有太多连贯性。但有趣的是梦里发生的事:我们会看到事物,会自言自语,我们会试验在这个世界上、在社交场合中,哪些事情我们能做、哪些不能做。你知道,梦极其偏重于社交方面的东西,对吧。所以对我们正在构建的东西来说也是如此,我们给模型时间去回顾,从实际的交互中抽离出来,去试验它的潜能。它在某个环境中能做什么?它知道什么?它能多快地处理那些我们在夜里做梦时会遇到的极端长尾事件?

主持人: 你们有着学术背景,有没有一个经典的例子可以激发人们去解决这个问题,或者目前有没有什么成功的案例?

Dan: 是的,我有一个例子,也许 Jessy 还能给另一个假设的例子。比如,想象其中一家 AI 实验室,就说 OpenAI 吧,必须在一周之后赢得某个数学奥林匹克竞赛。他们是会构建一个所有数学教科书的目录,然后让人工去标注需要看哪些章节、看哪些图表呢,还是说,他们实际上会收集这些资料,合成一些 training data,启动一个 training job,看看五六天后效果如何,然后开始评估等等?对于任何训练过模型的人来说,很明显存在一种更好的方式来整合各种想法和能力,而这涉及到 training 的魔法。我们很清楚,这必须发生在数学、编程和网络安全等高风险领域中。我们只是认为这种魔法中的很大一部分,实际上最终能以非常有趣的方式,落到更多人的手中。

主持人: 那为什么不能是由 frontier 模型实验室来掌控最终产品呢?你们如何在巨头之间生存?

Jessy: 是的。我认为我们的世界观和 frontier 实验室的世界观有点不同。他们会希望有一个越来越大的模型,在各种领域中都越来越聪明。相反,我们的看法是,我们想象一个每个人都拥有自己模型的未来世界。人们希望模型学习的很多东西要么是私有的(就像那些永远不会在 post-training 数据集中曝光的数据),要么甚至是相互冲突的(比如我想要完成任务的方式,与另一家公司或另一个人想要的方式截然不同)。并且我认为我们已经看到,许多这类的东西很难用我们在机器学习领域用了几十年的相同工具 training 进模型中——传统的做法是你有非常干净的监督数据,你有 ground truth 的 reward signals,然后你创造一个很好的环境,接着你去训练模型让它使用工具来更好地完成类似写代码的任务。相反,现实世界中实际发生的很多事情都非常模糊,或者很难去定义什么才算做得好。因此,我认为许多这类事情都非常因人而异,而且我认为这在某种程度上与 frontier 实验室关于整个 training pipeline 以及长期内将存在什么样模型的构想存在偏差,或者说不太一致。

Dan: 是的,补充一下,我想你们知道对 frontier 实验室来说,P0 是什么,你们在座的有些人也跟他们走得很近。他们的目标是实现 AGI,获得一个在编程和数学方面能力极强的通用模型,然后利用它来实现经济的自动化,或者解决密码学、国防等领域极其困难的长期问题。而推动这一切的发展需要什么条件也是非常清晰的:你需要更多的 pre-training、更大的模型、更多的数据、更多的 RL、更多的 inference time compute,诸如此类。这就是 P0。这也是绝大部分资金和人才投入的方向。毫无疑问,他们全都在思考 memory,全都在思考 continual learning。只是目前这更像是一种产品层面的努力。我们认为这应该得到专属的关注,我们认为这里需要取得突破。Demis 在大约一个月前的 Sequoia 活动上也非常清楚地表示,我们需要围绕这些主题取得新的突破,显然他们也在考虑这些问题。我们只是专注于这一点,而且我们认为关于数据在哪里以及模型归谁所有的激励机制等方面非常有趣。所以,如果你能大规模地从许多人类或组织身上学习,而不必非要派人与他们并肩工作,那将是一个相当大的突破。

Jessy: 关于这一点可能还有另一个原因,我认为未来的世界很多事情都需要有不同的面貌。第一是需要有新的研究突破。第二是需要新的 training 基础设施,比如为每个人训练小模型,而不是只跑一个大模型。第三我认为是需要一种将研究和产品结合起来的不同的方式。所以现在,我觉得这些 frontier 实验室里有研究人员。他们负责训练模型。然后把模型“扔过墙”交给产品团队,产品团队接着在核心模型之上,通过 prompts 或 context engineering 去开发新的产品界面。但是在一个模型永远都在 training 的世界里,我认为用户提供的输入与模型从中学习的内容(即 training signal)是极其紧密相连的。因此,研究和产品之间需要有更多的整合闭环。所以,虽然我们专注于解决许多核心的研究挑战(这也是我们的背景),但我觉得我们也非常专注于如何尽快将这些部署下去,以便从现实世界的实际反馈中进行学习。

主持人: 是什么驱使你们去致力于解决这个问题?

Jessy: 我觉得这显然是 AI 领域的一大挑战。我想现在大家都在谈论它,因为现在的模型已经如此聪明了。还剩下什么呢?我认为就是在边缘进行学习,学习那些能够让这些模型变得有用的剩余部分。这已经不再仅仅关乎原始的智能。它是关于学习新事物。我觉得这也感觉非常根本,因为它其实追溯到真正理解究竟是什么让模型变得如此优秀。现在模型有点像是在 pre-training 中偶然知道了很多事情,而我们其实并不明白为什么。就像是互联网赐予了我们的一份礼物,那里有各种各样的数据集,包含了所有这些不同的编程、写作等等的例子,这一切就这么发生了。现在要弄清楚如何破解 continual learning 这个难题,就是要搞清楚 pre-training 或 post-training 的什么特质,使得模型能够以这些神奇的涌现方式进行泛化,并且如何控制这个过程,这样当一家公司拥有一套私有数据时,我们如何让模型学好这些私有数据,就像它们知道法国首都在哪,或者知道怎么写 Python 一样?所以,我认为这是一个非常有趣的值得思考的问题。

主持人: 还有 Dan,你来自神经科学领域,对吧?

Dan: 是的。是的。所以我最初感兴趣的是关于意识和人类状况之类的问题。

主持人: 模型有意识吗?

Dan: 在这方面我并没有比大家平时读到的有更多什么高深的见解。我不觉得模型有意识。但是聪明人去思考这个问题是很重要的。我想说的是,我一直对人类是如何思考、人类是如何感知世界的很感兴趣。就像以色列心理学家 Amos Tversky 常说的那样,他对人工智能不感兴趣,他对自然愚蠢感兴趣。所以我可以说我也是类似地开始,试图观察人类和动物是如何体验这个世界的。渐渐地,我的兴趣将我带到了统计学和 AI 领域,在那里我发现关于 memory 和 continual learning 的很多相同问题真的是非常非常紧迫,而我们在当前系统中拥有的解决方案,与生物学上的现象相差甚远。而且我并不是那种认为机器就应该像动物或者人脑那样运作的人。我不这么认为。有很多事情电脑做得比我们好得多。但人类记忆有着非常不同的特性。比如如果你想存储整个代码库,你可以用电脑,你甚至不需要在这台电脑上使用 AI 就能无损地存储所有内容并将其提取出来。但人类的大脑是在信息容量等约束条件下进化出来的,并且会形成这种模糊的表征,然后这些表征能被抽象出来,建立联系,并在第二天提供指引。除了通用的 pre-training 阶段之外,目前的系统其实并不具备这种能力。

Dan: 我真的很想知道,我们如何将这种机制构建进去,如何从中学习。

主持人: 这是一个比较偏哲学的问题。你提到大脑里有很多不同的“地盘”,有不同的协处理单元(co-processing units)。现代计算机架构也是如此,有 CPU、GPU、内存(memory),还有各种协处理器。结合“苦涩的教训”(the bitter lesson),你认为现在发生的事情是 LLMs 会收敛到一种完全占据主导地位的协处理器吗?就好像所有的计算都会发生在一个相当于语言模型的“GPU”里。或者你认为,这些模型实际上正在其内部涌现式地构建一系列的协处理器?就像你提到的记忆,你认为模型本身会构建出某种相当于大脑中擅长记忆的部分,还是说你需要一种独立的架构来处理?

Jessy: 对,也就是说,记忆几乎是一种涌现属性(emergent property),还是说——

主持人: 或者几乎所有东西,比如我们在智能中需要的一切,都会随着更好的训练数据(training data)和更大规模的计算而涌现出来?

Dan: 我觉得从目前 AI 部署的表面现象来看,它已经远远超出了单纯的 GPU 范畴,我们看到所有的沙盒都在爆发,模型在其他计算机上运行、进行各种尝试。

主持人: 我更多是指在模型架构层面上,而不是——

Dan: 所以,还有其他一些实验,之前有许多不同架构的实验,我们也参与了其中,比如 state-space model(状态空间模型)系列以及其他尝试,旨在更高效地处理非常非常长的上下文(context)。但所有这些方法的问题在于,这最终都是一种权衡,通常是 memory(内存/记忆)和准确率之间的权衡。这里的 memory 不是指行为或认知意义上的记忆,而是计算机意义上的内存。例如 Transformer attention(注意力机制)的内存占用与序列长度成二次方关系(quadratic),而不是——

主持人: 有人声称他们做到了亚二次方(sub-quadratic)。

Dan: 是的,有人这么说,有些模型也确实做到了。一些顶尖的中国模型就采用了受 state-space 架构启发的层,其计算成本不是二次方的。但问题在于,在我们自己的实践中发现,你总是需要为了这种 memory 牺牲准确率,没有免费的午餐。我们的观点是:如果你真的深信“苦涩的教训”,你该思考的是如何消耗更多的算力(compute),并且如何将算力消耗在你从未见过的新 context 上。所以,我们和任何人一样深信不疑。而且我们不押注 AGI 的整体发展方向会很快终结。我们只是认为还有更多算力可以扩展。如果我真的想了解 Shawn、Shawn 的工作以及 Shawn 的 context,仅仅重复阅读文件是无济于事的,尤其是对于像你这样特别的人。

主持人: 我们跑题了。

Dan: 我们得为这家伙训练 [笑声] 100 万亿参数的模型。

主持人: 为什么?

主持人: 没错,没错。那么,你发现人们最希望他们的模型学习什么?是记住关于组织的那些事实吗?是记住诸如“不,我们是这样进行 CI(持续集成)的”这种事情吗?还是说,人们究竟期望模型学到什么?也许这也关系到你们如何对 memory 插槽(memory slots)进行排序?

Jessy: 是的。我认为,如果你看看最近人们在应用层(app layer)花时间做的事情,很多都只是为了让模型在特定的用例中表现得更好。比如,“我想让模型按照我的品牌风格来设计我的网站”,这在如今是一个非常常见的例子。但人们也用 agents(智能体)做很多不同类型的任务。比如学习如何运行一个工作流,或者,假设学习你特定的写作方式。所以有很多很多种类的事情。老实说,当我们在思考这些方法时,回到“事实”和“技能”之间的区别,其实这种区别并不存在。我认为这些方法对这两者是不可知的(agnostic)。

Dan: 是的。对我来说,很自然的事情是,几乎所有的 app layer 基本上都是将一个前沿模型(frontier model)包裹在带有搜索工具等东西的循环中。而他们和我们合作的共同兴趣在于,找到与他们的数据交互的方式,而且这种交互要更快、更高效,同时也更具上下文感知能力。所以几乎所有人都在说,[吸鼻涕] 我们希望把我们的公司知识编码到更高效的东西中,这样我就不用去搜索了。我们希望模型能有针对性地知道,我应该把这件事情分发给谁。而我们正在向他们展示,通过非常轻量级的训练(training),这些能力可以成为模型的本能。他们不需要有这些非常复杂、漫长的反馈循环来解决这些问题。所以在某种意义上,这是一种能够“终结 RAG(RAG killer)”的东西。当然,我们始终可以进行 RAG,我们总是可以检索,但人们感兴趣的正是以此来与非常庞大的数据平面进行交互,并以这种方式自动化非常重复的任务。

主持人: 是的,我想深入探讨一下这个“RAG 终结者”的概念。很抱歉一直纠缠这个话题,但我确实还没有完全理解。

Dan: 没关系。

主持人: 嗯。

主持人: 其前提是,在执行 RAG 和更新模型 weights(权重)之间存在某种权衡吗?是不是说你应该两者都做?哪类事情应该固化在 weights 中,哪类事情应该外包给 RAG?

Dan: 我认为这是一个尚未解决的问题,还没有人给出答案。我们都在研究它。这也是关于生物记忆的根本问题:什么应该被内化,什么不应该。我确实认为,像一年前你在某家酒店住过的房间号这种事情,你需要把它内化吗?可能不需要。不需要存在你的神经组织里。写下来可能更好。但是你现在需要内化你家的密码吗?很可能把它印在某个地方对未来几年是有用的。所以,这如何转化为知识工作和产品呢?这也是我们仍在弄清楚的事情。我们尝试采取的策略是,尽可能少用启发式规则(heuristics)。在数据上运行过滤器很容易,比如“我要保留这个,丢弃那个,在这个上训练,在那个上训练”。但作为人类,我们会看 TikTok,会接触到大量垃圾信息,但大脑仍然能够学习,并没有完全失控。我们认为模型也应该如此。也许具体到短期来看,我觉得人们目前非常担心的是,让这些 agents 连续运行几天会带来巨大的推理成本(inference costs)。

主持人: 推理成本高是件好事呀。[笑声]

Dan: 我的意思是,消耗 tokens 是为了什么?

主持人: Sonia 在 Fireworks 工作,她非常喜欢—— [笑声]

Dan: 推理(inference)。我们也喜欢推理。

Jessy: 是的,所以我觉得短期内这才是最直接的痛点。比如,为什么你要一遍又一遍地读取相同的文件?甚至在同一次查询中也是如此。很明显,在同一个公司里,不同的人都在对相同的文件反复运行同样的查询,而这些本应该是模型直接知道的东西。就像你问一个员工,他们不会在搜索框里输入“我昨天在做什么”,他们就是知道。

主持人: 但是缓存(caching)不就解决了这个问题吗?

Jessy: 我觉得在一定程度上是这样,但我认为这又回到了“什么应该被内化,什么应该在测试时检索(retrieve)”的问题。重申一下,我认为很大一部分在于基于你的知识进行构建。如果你总是使用 RAG,你就无法建立联想。比如,“哦,我看到团队里的某个人正在做这类研究”,然后我会在抽象层面上回想,“哦,有一个你可能想了解的相关事情”。你甚至都没问过,对吧?但我认为,这种联想只能在 weights 中发生,因为它们不是基于“你让我搜索这个,我就去搜索这个”的逻辑。

Dan: 是的。而且我认为,一般的检索系统(retrieval systems),特别是 AI 领域的检索系统,主要限制不在于存储什么或者把东西放在哪里。问题在于如何定位它,如何查询它。你甚至知道要找什么吗?

主持人: 这涉及某种模型有时不具备的直觉(intuition)。有趣的是,它们不知道去哪里找。特别是如果你局限于当前的方法,即关键字搜索,因为这在强化学习(RL)中更容易扩展,在 embeddings(嵌入)等基础设施方面的投入也最少。所以,知道该搜索什么是一种直觉,是可以在 weights 中发生的。关于 caching 和 inference,我们公司的很大一部分起点就是对 KV cache 及其缓存机制的深入研究。这是一个非常吸引人的东西,现在的 KV cache 处理方式简直是个怪物。你想想看,仅仅是一篇关于 Taylor Swift 的维基百科文章的 KV cache,在 GPU 上可能就会占据 80 GB 的 HBM 内存;而对于一个 70B 的 LLaMA 模型来说,整个模型的 weights 才大约 100 GB。由于某些失真,它们能记住整个互联网。为什么这东西能在比特层面上如此高效?我们有了梯度下降(gradient descent)的实证,它能把大量信息压缩在极少的数字中;而对于 KV cache,你拿几十 KB 的文章,它就会变成 80 GB 的“大脑状态”。当然,你可以缓存它,加载它,但这会涉及到从磁盘到 HBM 的传输问题,大家都在研究,这非常有趣。但是,如果我们能把这 80 GB 的数据,在离线状态下花一些算力(可能也是在 Fireworks 和文件中处理),然后压缩它,让它变得非常非常小,以至于我们加载到 cache 中的东西缩小了 1000 倍,这将对我们加载内容的方式、处理速度以及表征(representation)的保真度产生巨大的影响。

主持人: 超级有趣。

主持人: 是的。在未来一两年内,哪些事情的发生可能会成为记忆领域的“ChatGPT 时刻”?还是你认为事情不会那样发展?

Jessy: 这是个好问题。我不知道。我觉得,大家一直在谈论的持续学习(continual learning)的第一个概念验证(proof of concept),也就是你拥有一个实习生,你可以随着时间的推移教它东西,然后它确实变得越来越好,我认为大家都在等这个。而且不管现在的 context engineering(上下文工程)方法有多复杂,它们都还没达到那个程度。所以,我认为你需要运用你能掌握的所有这些工具来实现它。我觉得它会是类似那样的时刻,你会发现模型真的变聪明了,就像“哇,它和昨天不一样了”。

Dan: 是的。而且有一点很重要,ChatGPT 模型的出现是出乎意料的。在 ChatGPT 出现之前,我们都读过某些人关于不同产品方向的想法,那是完全不同的。我觉得对我来说,一个例子是:假设你今天辞职,你的唯一任务就是制作一个对你来说更好的模型。你会使用 OpenAI、Anthropic 以及所有这些前沿模型(frontier models),你没日没夜地做 context 的工程对吧?作为一个个体,你推动进展的能力是非常有限的。你还不如等待下一个版本的模型,然后在此基础上继续努力。而我们希望看到这样一个未来:你在一个东西上投入的时间越多,就越能真正转化为性能质量的提升,至少在你关心的事物和领域上是这样。这是相当难实现的,我们认为它能够实现的唯一前提是,你开始扩展算力,并在这些数据上进行训练,同时——最重要的是——不破坏原有的能力(catastrophic forgetting),这是非常难的。这就随便问几个快速问答,只关于记忆。

主持人: 你最近一次在 AI 领域的任何方面感到惊讶是什么时候?

Dan: 在读关于融资的新闻时?[笑声]

Dan: 每天都有很多惊喜。我想说,我们所有人都对代码 agents(coding agents)能力的提升感到了一点震撼。

主持人: 确实如此。

Dan: 不过,我们之前已经在涉足这些东西,并试图通过投入更多精力让它们发挥作用,所以这并不算完全出乎意料。但对我来说,我觉得大事件是 GitHub Copilot。那对我来说就是最重要的事件,然后是 ChatGPT,接着是看到那些 agentic(智能体)的东西。我觉得我们都预料到了,不同的人对它能走多远、能覆盖多长的时间跨度有不同的期望。但我觉得,是的,我们还没看到根本性的不同,人们正在研究全新的做事方法。但对我来说,模型真正以一种无害的方式发生改变,并实时学习新东西,同时在个人和经济层面都是可行的,那才是有趣的。

主持人: 现在有这样一种想法:我们每个人都会有一个 token 钱包,我们会带着它去不同的公司。

主持人: 或者去不同的 app、不同的 workspaces(工作空间)。你认为我们最终会拥有一个类似于记忆库或记忆钱包的东西,我们可以带着它移动吗?

主持人: 随着我们在数字世界中穿梭。

Jessy: 我觉得这是一个有趣的问题。我不知道我们是否已经完全弄清楚在这种意义上正确的产品形态应该是什么。在某种程度上,哪怕是用像 ChatGPT 记忆这样的东西,我也不太希望它在我的个人和工作 context 之间互通。比如,“哦,你可能会喜欢这些表格,因为你上周在 GPU 上训练了一个模型”,这就完全不相关。一方面是因为记忆有缺陷,但另一方面,我认为你确实希望你在使用的工具和产品中的记忆是隔离的,你能对其拥有控制权。所以我个人认为那里需要有一些隔离,但具体会是什么样子还有待确定。

Dan: 是的。而且我觉得,一个终极目标(holy grail)是:你去上班,你烧掉了所有这些 tokens,你创造了所有的价值。不知何故,所有的知识产权(IP)和其他东西都留在了公司,但在某种意义上,你学到的技能、你发明的东西、你的做事方式,其中有一部分你可以带着去你的下一份工作。而且是以一种经过清洗(sanitized)且不会损害任何其他公司 IP 的方式。所以我确实认为,携带一套技能将会非常有趣。我们现在的生物学机制就是这样做的,我们只是签署了保密协议(NDAs)并遵守道德规范。但我认为在数字世界中实现这一点会非常有趣,而且回报丰厚,因为它会迫使我们每个人去推动前沿技术,在我们的公司和个人生活中更深入地实施 AI,然后因此获得回报。我在 2007 年开始在斯坦福大学的一个系统神经科学实验室读博士,当时的 AI 简直无聊透顶。全都是统计学习,基本上就两个领域:计算机视觉(computer vision)和自然语言处理(NLP)。所以视觉和语言可以说是两个主要领域,我认为现在依然如此。2012 年 AlexNet 出现了,视觉主导了大概六年。对于语言(或者说语言方法)在进展上似乎超越了视觉,你们感到惊讶吗?第二个问题,你们觉得视觉还有机会卷土重来吗?你们怎么看?

Jessy: 是的,我确实觉得挺惊讶的。我的意思是,也许有些人预见到了,但我一直对语言很感兴趣。我觉得它就像一种沟通的媒介,许多复杂抽象的事物都可以用语言来表达。我确实认为,想象在更长远的未来,语言和视觉会融合进一个更加统一的系统中。在这个系统中,我们可以吸收所有这些不同模态(modalities)的输入,并以一种抽象的方式去理解它们。但是,嗯,是的。

Dan: 对我来说,我以前对语言从来不感兴趣。在我看来,它是一种如此高级的能力。整个动物界有着与我们人类交流和书写非常不同的言语和语言形式。像 AI 领域的许多其他领导者一样,我一直认为自然的方式是你必须体验世界、在其中行动,视觉和行动将是关键。但后来,我和其他人一样看到了 ChatGPT 的时刻,然后去 Mosaic 做了些工作,去了解 NLP 那边的底层原理。让人震惊的是,语言本来应该是非常难的:每个词都有这样一个 one-hot embedding vector,它与任何其他词的差异就像,你懂的,它是一个完全高维的空间,在某种意义上是非常人为构建的。而我们用来学习它的模型,比最好的视觉模型要大几个数量级,结果它依然运作得非常好。我确实认为在图像和视频领域还有很大的潜力可挖,我觉得你们在这个领域的投资很好,但我认为这两者会以不同的方式继续保持趣味性。

主持人: 我刚才那是铺垫。现在我要告诉你我的“疯子理论(crackpot theory)”了。[笑声]

主持人: 这个播客不是让我来高谈阔论的,是为你们准备的。但我一直在思考这个问题,而且你们是我分享这个想法的合适人选。我确实对于语言在某种程度上超越视觉感到相当震惊,因为我对视觉存在偏见,所以我在 2018、2019、2020 年期间低估了 LLM 领域正在发生的事情。现在回想起来,我认为基本上发生的事情是:在生物学中,视觉相较于语言具有巨大的根本性优势。也许我错了,但基本上,你的大脑通过眼睛处理光学数据的比特率(bit rate),这只是我这个非生物学家的愚蠢判断,似乎要大好几个数量级。而且甚至在你到达电子信号阶段之前,就发生了大量的光学处理。所以相比起音频数据——即声波,声波的比特率从根本上说比光慢得多——你的大脑正在处理并传输进去的训练数据的总比特率似乎大得多。

主持人: 对。然后从声学到电子信号,再进入你的大脑,这几乎像是一个升频(upscaling)过程;而对于视觉,从光子到电子信号就像是一个降频(downscaling)过程。然而在今天的计算机中,一切都是电子的。所以这就好比你削弱了视觉,提升了语言,因为所有的处理都在同一个赛场上,都是电子的。我只是觉得这可能——这是我极其愚蠢的、非技术的疯狂理论——但我认为这可能部分解释了为什么从信息论的角度来看,当发展到 LLM 时,也许语言和视觉处于同一个起跑线上,而且 LLM 只是一种非常非常聪明的架构,碰巧更适合语言而不是视觉。这个想法听起来有多蠢?特别是对你这个神经科学家 Dan 来说。

Dan: Jesse 也有认知计算科学的背景,对吧。

Dan: 所以我想说的是:看,我们在知识工作中所做的大部分事情,并不是我们进化出来的能力。我们坐在电脑前读这些东西、写备忘录等等,我们并不是为了做这些而进化的,这对我们来说是新事物,我们的大脑还没有为此接好线。尽管如此,让 LLM 为我们做这些还是很有用的。作为人类,我们严重偏向视觉。而其他啮齿动物更偏向嗅觉,我以前也研究过这些。那么大脑中分配给视觉的区域(比如枕叶,occipital lobes)与语言区域(比如颞叶,temporal lobe)相比,谁占的地盘更大?可能还是视觉更大。我得向 ChatGPT 核实一下,但我认为情况就是如此。

主持人: 你不能凭记忆知道吗。

Dan: 兄弟,没有,我都是外部化的。在我的个人生活方式中,我是一个忠实的 RAG 信徒。[笑声] 但是,我觉得——

Dan: 到了极限,我们大家都在用 RAG。我只内化那些重要的事情,比如我对你的情感。不,开玩笑的,抱歉。[笑声]

Dan: 不管怎样,是的,当你训练视觉语言模型(vision language models)时,视觉是占据主导地位的,其中的视觉内容最终在模型里占据了主导。但是,很难说因为某个大脑更偏向某一种模态,就必然意味着我们能更高效地处理它。我确实认为,脑机接口(brain-computer interfaces)的研发应该考虑到这一点。你如何将信息传回大脑?这就需要去思考我们现在大脑里有哪些对应的接收区域。但对于知识工作来说,如果是文本形式,同样也是可以的。我觉得——

主持人: 最后一个问题,如果一切顺利,未来 5 到 10 年世界会是什么样子?Engram 在其中扮演什么角色?我想我正在想象这样一个世界:每个人都有自己的模型,它不仅不同于其他人的模型,也不同于前沿模型(frontier model),并且所有这些模型都服务于不同的目的。要有一个真正“懂你”的模型,人们经常谈论这个。但同时它也能够以一种对你个人——无论是个体还是团队——有意义的方式来帮助你。我认为这包含了一种在各个地方都存在不同类型智能的元素。

Jessy: 是的。对我来说,这实际上是这样一个故事的变体:在神经科学中,我们知道记忆和导航是密切相关的,大脑中负责表征空间地标的相同回路,也负责情景记忆(episodic memory)的某些元素之类的事情。对我来说,我认为这家公司可以成为每个人连接数据平面(data plane)的真正 LLM 接口。所以这与 Databricks 和 Oracle 等伟大的公司有一些相似之处,在这里我们形成这些恰好是神经记忆(neural memories)的东西,由那些恰好是个性化的模型来驱动。可能会有数亿个这样的模型,但它们基本上是一个连接数据平面的神经接口。这与我们目前所知的方式非常不同,它更高效,更具联想性。它不是原封不动地表征文件系统,它是在表征那个文件系统的“大脑状态”。对我来说,这就是愿景。

主持人: 以这样一个美好的愿景结束。非常感谢你们来分享你们正在构建的东西。

Dan: 太棒了。我很喜欢。谢谢你们。