OpenAI o1 是大模型的巨大进步
OpenAI o1 被视为自 GPT-4 发布以来基座大模型最显著的进展。其逻辑推理能力的提升效果和方法超出了预期。GPT-4o 和 o1 代表了发展大模型的两种不同方向,但 o1 的方向更为根本,重要性远超 GPT-4o 这类多模态融合方向。
为什么 o1 比 4o 方向更重要?
这是两种不同的大模型发展思路。在看到 GPT-4o 发布时,业界曾期待 OpenAI 优先推进 o1 这种方向,但最终先推出了 GPT-4o。GPT-4o 本质上是在探索不同模态相互融合的大一统模型应该如何构建的问题,这对于提升大模型的基础智力水平帮助有限;而 o1 本质上是在探索大模型在通往 AGI(通用人工智能)的路上能走多远、天花板在哪里的问题,显然第二个问题更为关键。
GPT-4o 的局限性在于本身大模型的智力水平还不够高,导致无法处理复杂任务,许多应用场景难以实用化。指望靠图片、视频等新模态数据大幅提升大模型智力水平是不太可能的。尽管这能拓展更丰富的多模态应用场景,但这类数据弥补的更多是大模型对外在多模态世界的感知能力,而非认知能力。提升大模型认知能力主要还要依靠 LLM 文本模型,而提升 LLM 模型认知能力的核心在于复杂逻辑推理能力。LLM 的逻辑推理能力越强,解锁的复杂应用就越多,大模型应用的天花板也就越高。因此,不遗余力地提升大模型尤其是文本模型的逻辑能力应该是最重要的事情,没有之一。
如果 o1 模型能力越做越强,则可以反哺 GPT-4o 这种多模态大一统模型。具体方式包括:直接用 o1 基座模型替换 GPT-4o 的基座、利用 o1 模型生成逻辑推理方面的合成数据增强 GPT-4o、或者用 o1 蒸馏 GPT-4o 模型等。这些手段都能直接提升 GPT-4o 的复杂任务解决能力,从而解锁更复杂的多模态应用场景。OpenAI 未来计划两条线,一条是 o1,一条是 GPT-4o,其内在逻辑应该是通过 o1 增强最重要的基座模型逻辑推理能力,再把这种能力迁移到 GPT-4o 这种多模态通用模型上。
OpenAI o1 的做法本质上是 CoT 的自动化
我们知道,通过思维链(Chain-of-Thought, CoT)把一个复杂问题拆解成若干简单步骤,有利于大模型解决复杂逻辑问题。但之前主要靠人工编写 CoT 来达成。从用户提出的问题形成树的根结点出发,最终走到给出正确答案,可以想象成类似 AlphaGo 下棋,形成了巨大的由 CoT 具体步骤构成的树形搜索空间。这里 CoT 的具体步骤组合空间是巨大的,人写的 CoT 未必最优。
如果我们有大量逻辑数据,是由<问题,明确的正确答案>构成,则通过类似 AlphaGo 的蒙特卡洛树搜索(Monte Carlo Tree Search, MCTS)加强化学习,确实是可以训练大模型快速找到通向正确答案的 CoT 路径的。问题越复杂,这个树的搜索空间越大,搜索复杂度越高,找到正确答案涉及的 CoT 步骤越多,模型生成的 CoT 就越复杂,体现在 o1 的速度越慢,生成的 CoT Token 数越多。很明显,问题越复杂,o1 自己生成的隐藏 CoT 越长,大模型推理成本越高,但效果最重要,成本其实不是问题。最近一年大模型推理成本降低速度奇快,这个问题总有办法快速降下去。
从上面 o1 的做法可以知道,Prompt 工程会逐渐消亡。之前解决复杂问题,需要人写非常复杂的 Prompt,而 o1 本质上是 CoT 等复杂 Prompt 的自动化,所以之后不太需要用户自己构造复杂 Prompt。本来让用户写复杂 Prompt 就是不人性化的,所有复杂人工环节的自动化,这肯定是大势所趋。
Agent 属于概念火热但无法实用化的方向,主要原因就在于基座模型的复杂推理能力不够强。如果通过基座模型 Plan 把一个复杂任务分解为 10 个步骤,哪怕单个步骤的正确率高达 95%,要想最后把任务做对,10 个环节的准确率连乘下来,最终的正确率只有 59%,惨不忍睹。那有了 o1 是不是这个方向就前途坦荡?也是也不是。o1 的 Model Card 专门测试了 Agent 任务,对于简单和中等难度的 Agent 任务有明显提升,但是复杂的、环节多的任务准确率还是不太高。就是说,不是说有了 o1 Agent 就现状光明,但是很明显 o1 这种通过 Self Play 增强逻辑推理能力的方向应该还有很大的发展潜力,从这个角度讲说 Agent 未来前途光明问题应该不大。
预训练 Scaling Law 为何一定会变缓
粗分的话,大语言模型最基础的能力有三种:语言理解和表达能力、世界知识存储和查询能力以及逻辑推理能力(包括数学、Coding、推理等理科能力)。这里 Coding 有一定的特殊性,是语言能力和逻辑掺杂在一起的混合能力。从语言角度看,Coding 貌似是容易解决的,从逻辑角度看又相对难解决。总之,Coding 目前看是除了语言理解外,大模型做得最好的方向。
语言理解和表达是 LLM 最强的能力,初版 ChatGPT 就可以完全胜任各种纯语言交流的任务,基本达到人类水准,目前即使是小模型,在这方面比大模型能力也不弱。世界知识能力虽说随着模型规模越大效果越好,但幻觉问题目前无法根治,这是制约各种应用的硬伤之一。逻辑推理能力一直都是 LLM 的弱项,也是最难提升的方面,从 GPT-4 开始往后,如何有效并大幅提升 LLM 的逻辑推理能力是体现不同大模型差异和优势的最核心问题。所以,大模型最重要的一个是世界知识方面如何有效消除幻觉,一个是如何大幅提升复杂逻辑推理能力。语言能力已不是问题。
从大模型的基础能力,我们再说回已经被谈滥了的大模型 Scaling Law。现在普遍认为通过增加数据和模型规模来提升大模型效果的 Scaling Law 模式,其增长速度在放缓。其实我们对照下大模型的三个基础能力的能力来源,基本就能看出来这是为啥:
- 语言能力:本质上大模型的能力来源都来自训练数据,包含能体现这方面能力的训练数据越多,则这种能力越强。语言能力不用说了,任意一份预训练数据,其中都包含相当比例的语言的词法句法等成分,所以训练数据中体现语言能力的数据是最多的,这也是为何大模型的语言能力最强的原因。


