那么,究竟是 pre training(预训练)甚至 post training(后训练)中的什么,让模型能够以这种近乎神奇的 emergent(涌现)方式实现泛化?以及,如何控制这个过程,使得当一家公司拥有一组私有数据时,我们能让模型把这些内容学得和它知道 France 的首都、或者知道怎么写 Python 一样好?所以我觉得这是一个非常有趣、值得思考的问题。
我觉得,如今的模型显然已经知道很多东西了。它们非常聪明,但我们认为,要让这些模型在当下变得更有用,瓶颈其实并不在于原始智力,而在于理解新的、不断演变的 context(上下文)。无论是你正在做的一项新任务,还是某个工作的特定 context,或者类似的东西,关键在于:你如何把这些内容像 pre training 和 post training 那样,深深地烘焙进 model weights(模型权重)里?这也是为什么我们认为自己是在解决 memory 和 continual learning 这些基础问题——它们其实是一枚硬币的两面。你如何让模型学会新的东西,并把它们深深写入模型的 weights 之中?
可以。我的意思是,从高层来看,我们想做的是获取任何上下文(context)。可以说,现在存在各种不同的工作空间(workspaces)。我们正与 Notion、Microsoft 和 Harvey 这样的合作伙伴合作,它们都有一些场景:人们会在这些地方长期进行大量工作。这里面包含着大量上下文,既包括你们团队已经写过的文档,也包括现在人们越来越多地在这些产品里与这些 agent 互动,或者与它们对话、给它们反馈。我们要做的是,弄清楚如何构建一个能够深度理解这些上下文的模型。所以不只是让它在 test time 读取文件,而是真正像一个已经在你公司工作多年的员工那样去理解这些内容。
你如何把任何类型的原始文档或交互,转化为对模型有用的训练信号?再说一次,现在我们已经有各种工具,比如 supervised fine tuning(监督微调)、RL(强化学习)、on-policy distillation(同策略蒸馏)等等,这些都是这个领域发展出来的方法;现在要做的,是尝试把这些部分拼接起来,构建一个能够围绕人们关心的事情持续学习的模型。
我觉得,这是一个非常、非常宽泛的想法。大意只是:这里可能缺少了一个阶段——你拿到一个 context(上下文),然后把它深度内化。现在更像是一切都发生在 test time(测试时)。你查看用户给你的 context,然后临场做一些思考。但再说一次,这样你走不了太远,或者说也许能走一段,但过程中会不断犯错。
对。我有一个例子,Jesse 也可以再讲一个。先说一个假设性的例子:比如某家 AI lab,假设 OpenAI,必须在一周后赢下一项数学奥林匹克竞赛。他们会不会去整理一整套数学教材目录,再让人逐章标注该学哪些章节、该看哪些图表?还是说,他们其实会把这些资料收集起来,合成一些 training data(训练数据),启动一个 training job(训练任务),看看五六天后训到什么程度,然后开始评估之类的。
所以,对任何训练过模型的人来说都很明显:要把各种想法和能力更优地整合起来,是有一种更好的方式的,而这涉及 training(训练)这种近乎魔法的过程。我们也很清楚,这件事必须发生在数学、coding(编程)、cyber(网络安全)这些高风险领域里。我们只是认为,这种“魔法”其实可以以很有意思的方式落到更多人的手中。为什么最终产品一定只能由 Foundation Model Labs 掌控?你要怎样在这些巨头之间找到空间?
但 human memory(人类记忆)里面有一些非常不同的东西。比如说,如果你想存储整个 code base(代码库),你完全可以用计算机;你甚至都不需要在计算机上用 AI,就能把所有东西无损地存下来并直接取用。但 human brain(人脑)是在这些约束条件下演化出来的,比如 information capacity(信息容量)的限制,以及拥有这些模糊表征;而这些表征随后可以被抽象化、建立连接,并在第二天继续形成新的东西。当前系统其实并没有这种能力,除了那个通用的 pre-training(预训练)步骤之外。我当时真正感兴趣的是:有哪些方法可以把这种东西构建进去?
有些人是在声称,有些人确实做到了,对吧?而且一些最好的 Chinese model 的层受到了那些 state space architectures(状态空间架构)的启发,在成本上不是 quadratic(二次)的。问题是,以我们的实测来看,你总是在这种 memory(记忆)上拿 accuracy(准确率)做交换。天下没有免费的午餐。我们的意思是,听着,如果你真的是那种极度“bitter-less and pilled”的人,你想做的其实是去想:我怎么才能烧掉更多 compute(算力)?
而我们希望看到这样一种未来:你在某件事上投入的时间越多,最后就真的能转化为更高的表现质量,至少在那些你在意的事情和领域里是这样。这其实很难实现。而我们之所以认为它有可能实现,唯一的原因是:如果你开始扩大 compute(算力)规模,并用这些数据去训练,同时又不会把这些数据全都“毁掉”——这一点很关键,而这本身也相当难。这只是随便玩玩的 rapid fire questions(快问快答),话题刚好转到