30 秒看懂
网上超过 90% 的钟表照片显示的都是 10:10,因为这个指针摆放看起来像在笑,而视觉模型也就老老实实地把时间读成 10:10。在 No Priors 节目上,o3 的研究员 Eric Mitchell 和 Brandon McKinzie 借这个小毛病,说明人类视觉和模型视觉之间的差距:前者是在躲避捕食者的世界里长出来的,后者则是在网络上长出来的。这场访谈的重点其实很务实:o3 比上一代 o 系列模型更聪明,但真正的突破在于,它会在思考途中伸手去用浏览器、Python 解释器或裁剪工具;而且你应该把任何一次回复都只当作某个分布中抽出的一个样本。
- 1只把模型做得更聪明,只是起点。o3 的实质变化是:推理途中它会自主判断要不要动用工具,并且一步扣一步地连续调用。
- 2理想的等待时间应该恰好等于模型得出正确答案所需的时间,“快”和“慢”本身都不是关键。
- 3给视觉模型一个裁剪工具,测试时计算(test-time scaling)的曲线就会变得更陡。没有工具时,模型只会在思维链(chain of thought)里絮絮叨叨;有了工具,多出来的 token 才真正换来了信息。
- 4工具的用处,是把模型没有比较优势的工作交给别的办法去做。比如,与其在上下文里硬拟合估值系数,不如写一段代码把它们算出来。
- 5让模型完全控制电脑,看上去会很惊艳。但省下的时间和可能犯下的错误,两边的得失并不对称,这就是 o3 仍然待在沙箱里的原因。
- 6一次提问的结果只是一个样本,不是定论。把同一个提示词多发几次,直到你对结果的分布有直觉为止,尤其是当一长串工具调用碰巧产生了一次神奇的瞬间,而这种瞬间未必还能重现的时候。
按章节阅读整理后的全文
更聪明的下一个 token 预测器只是基线
在 No Priors 节目上,Sarah Guo 和 Elad Gil 请来了 o3 背后的两位研究员:Eric Mitchell 和 Brandon McKinzie。o3 属于 o 系列,也就是在回答之前会先仔细思考的系统。Mitchell 的类比很平常,也很有人味:先想清楚再回答,更容易答对。和上一代 o 系列模型相比,o3 在数学题和事实性问题上就是更强。团队还会继续训练更聪明的模型。他说,这并不是最让人兴奋的部分。
真正令人兴奋的是工具。Mitchell 认为,即便训练出非常聪明的模型,如果它不能上网查最新信息,也不能写代码并运行,它依然会碰到天花板。一个相对简单的 Python 程序,就能解决一些大语言模型(LLM)只能低效解决的问题。o3 可以做调研、跑数据分析、查看结果,然后中途改变方向,用户不必逐步指定每一步怎么做。你给它一个高层次的请求,比如对一家公司做尽职调查、做一个预测模型、写一份摘要,它就能推断出一套合理的行动顺序。交互的层级因此提高了一层。
这和一个核心的 GPT 式基础模型(foundation model)在构造上有什么不同?Mitchell 的简短回答是强化学习(reinforcement learning)。预训练依然是在海量语料上预测下一个 token。o 系列则把这个目标换成了一个更有针对性的目标:解决非常困难的任务,并且想花多长时间就花多长时间。Elad 把产品上的变化概括为:推理时算力(inference-time compute)更多了,再加上模型自己推断出的按顺序执行的步骤。Mitchell 表示同意。停下来思考,和串起一连串工具,本质上是同一个训练故事。
应该恰好等到正确答案算出来为止
Sarah 问,世界会不会一分为二:一边是快速、便宜的模型,负责做杂活;另一边是慢速、昂贵的模型,能吞下一整份并购法律材料,思考一整天,然后交回一个月的团队产出。McKinzie 则主张统一。Sam Altman 已经公开这样说过。ChatGPT 的模型切换器,Altman 也公开形容它“又大又离谱”。理论上,可能会有一个在任何工作上都足够好的模型,但如果用户分不清该选哪一个,这也没什么帮助。把选择的决定权放进模型内部,产品体验会更直观,即便每家实验室都会针对不同用户尝试不同的划分方式。
Sarah 说,从消费者的角度看,没人在乎命名。他们要的是正确的答案,而且等待时间尽量短,短到所需的智能水平允许的程度。McKinzie 理想中的模型,是能精确地判断自己有多不确定:如果它已经知道答案,就直接说;如果要想一天才能想明白,那就想一天。等待的时间,应该恰好等于这个模型得出正确答案所需的时间。他认为他们正在朝这个方向前进。
Mitchell 在想,面向终端用户的 ChatGPT 和面向开发者的 API 会不会继续分叉。那些为特定任务调用 API 的公司,或者运行开源模型、以低廉且可控的成本做推理的公司,可能需要说明:这是一个 API 场景,你可不能让它想上十分钟。McKinzie 把这看作可操控性(steerability)。足够聪明的模型,在你指定好上下文之后,就应该做出正确的选择。麻烦在于,判断什么才是正确的做法,本身可能就需要思考,所以没法做到十全十美。在他看来,把更多选择交给模型,仍然是个好目标。
没有工具,多想只是在思维链里絮絮叨叨
Guo 回到测试时计算(test-time scaling)的话题。OpenAI 公布过一张图,展示思考时间与准确率的关系。Guo 问,为什么加上工具后,这条曲线的斜率会陡得多。McKinzie 用一个视觉问题给出了具体的例子。你问模型一个关于图片的问题,模型会坦率地说,它其实看不清你说的那个东西,几乎已经意识到自己的视觉不够好。有了工具,它就不会放弃:它会裁剪、放大、处理图片。这些 token 都是有产出的。他说,有工具和没有工具的视觉推理,测试时计算的斜率“差别非常明显”。没有工具时,尤其是在感知任务上,模型知道自己看不清需要的东西,于是就“彻底乱了方寸”。
代码是同一个效率问题的另一个角度。大语言模型可以在上下文中硬算一个估值模型,拟合系数、自我核对,代价是要试很多次。或者,它可以写一个小程序,直接得出答案。工具让你能把算力分配到模型没有比较优势的地方。McKinzie 对 o3 的第一印象是:等待时间更长,结果确实更好;而且你能看到它做出一些符合直觉的操作,而不会乱跑。他指出,人在任何任务上面临的都是同样的选择:是去外部寻求验证,还是关起门来闷头苦想。前者通常效率更高,闭门苦想并不总是最好的办法。
Elad 经常用 Deep Research,那是一个会查资料、做综合分析、画图表的分析师。他问,它是不是需要自己单独的强化学习分支。Mitchell 说不用另起炉灶。浏览是最自然的第一个工具:对任何需要最新信息的事情都很有用,同时也是在检验强化学习能否教会模型长程行为。几年前,GPT-4 的浏览功能很难做到稳定可靠。在这个领域,两年已经是很久以前的事了,条件终于成熟了。McKinzie 补充说,强化学习的目标是可以为用户量身定制的:他们能不能忍受一次 30 分钟的运行?他们要一页、五页,还是一大堆?
被问到软件工程和分析工作之外,近期会有哪些应用,Mitchell 选的是编程和研究,包括 OpenAI 内部研究的推进速度。模型正处在一个拐点上,他现在希望一天用好几次,而以前并非如此。过去,他们在 OpenAI 的内部代码库里摸索,进度会落后一些;现在他们把时间花在问题上,回来时已经省下了几个小时。Elad 称之为通往下一代模型的自举。Mitchell 说,研究并不是象牙塔。硬件、训练、评测,每一块都可以变成一个你去优化的任务。
重力不会等,飞来的球也不会等
Elad 对交互界面很不耐烦。他讨厌打字,也不明白,为什么模型还没有一直待在他的电脑上:看着他的屏幕,等他碰到难题时随时可以问。他补充说,这个功能默认是关闭的,因为会让一些人感到不安。Mitchell 对电脑操作很兴奋,但依然不肯把控制权交出去。成本是不对称的:一边是省下的时间,另一边可能是给老板发出一封离谱的邮件,或者一块被删掉的硬盘。他会放心交给它的事情,一天比一天多。眼下,他们特意把这些功能放在沙箱里。
有没有一个框架,能判断哪些任务更需要智能、测试时计算和工具?Mitchell 给出了两个维度。第一个是你需要应对多大的环境不确定性。“美国第一任总统是谁”,不确定性为零:记住并说出来就行。真正解决一个问题的代码,则需要执行、测试,并等待一个模型无法完全背下来的实验结果。你越需要在真实世界里把实验跑起来,任务就越难。第二个是它能不能被模拟。受制于物理时间的任务,比可以重放的任务更难。编程智能体的成功并非巧合。机器人技术进展缓慢,他以前做过机器人,他说,其中很多地方让人很受挫。
McKinzie 补充了第三个约束:真实世界是有帧率的。球已经飞过来了,重力不会等一段两分钟的思维链。青蛙、蚂蚁这样的小脑袋,已经很擅长这类事情,这使得响应式任务的基础算力需求成了一个开放问题。Elad 问,机器人的基础模型会不会和通用模型合并成同一组权重,就像 Codex 在 GitHub Copilot 之后被并入通用模型那样。McKinzie 认为,这个强化学习模型没有理由不能是同一个,尽管如果原生生成一部一小时的电影(而不是通过工具调用来做),可能会让一组权重不堪重负。o3 在一张图片里四处翻找,看起来已经像是智能体在探索环境了。
然后说到钟表。让模型读出图中钟表的时间,它们很喜欢回答 10:10。McKinzie 说,网上大约有 90% 以上的钟表照片都停在这个时间,因为指针看起来像一张笑脸。人类的视觉,是在穿行世界、躲避捕食者的过程中形成的。模型的视觉则是用另一种方式形成的。如果你能闭合这个回路,让系统不只靠思考,也靠行动来降低不确定性,他预计会出现许多有趣的行为。
人本身是一次代价很高的工具调用
长期进行的软件工作,并不只是一串提交记录。你要和别的人讨论项目。Sarah 问,能不能把这些人模拟得足够好,用来训练。Mitchell 的大胆看法是:o3 其实已经在用浏览器模拟一个人了。那就把两个放在一起训练。多智能体强化学习已经有相关研究;如果你想和一群人协作,一个还不算太差的起点,就是和其他模型协作。“应该有人去做这件事。”他开玩笑地说。Sarah 说,这件事其实已经在进行中,所以这个观点才这么大胆。
McKinzie 希望训练循环更加互动:在思维链中途介入,告诉模型把某段删掉,让它在运行中学习,而不只是在测试时学习。人类既是高度不确定的环境,又有固定的时钟周期。直接用真人来训练,很难扩展。他的算账很直接:“我们是一次代价极高的工具调用。”在这个血肉之躯慢慢思考的时候,模型可能已经浏览了一百篇论文。不过人的因素依然重要。Mitchell 说,在任何研究项目中,他与 Brandon 的互动都是最难的部分,写代码反而容易。Elad 举了自动驾驶的例子:经典的难题在于预测人、孩子和狗会怎么做,路本身倒在其次。他补充说,主持播客也有类似的难点。Sarah 说,那部分正是她最喜欢的。
在相信图表之前,先把同一个提示词发上一百遍
o 系列的能力会不会变得更加参差不齐?因为强化学习依赖研究团队去发明环境和评测,不像预训练那样只是在现有数据上慢慢磨。McKinzie 认为这是个合理的假设,然后又把它复杂化了。Altman 在推特上发过一个创意写作的样例,这大概更新了人们对“模型经过训练后能做好什么”的看法。各家机构必须排出优先级;随着模型变强,可以做的工作范围增长得比任何一家实验室能开辟的细分领域都快,所以某种程度的参差不齐是结构性的。他反对的说法是:“这些模型只会在数学和代码上表现出色。”在他看来,这种直觉是错的。
Mitchell 描述了实验室内部的分工:一组人负责定义数据分布,然后把数据投进去;另一组人则寻找能让所有船都抬起来的算法改进。OpenAI 两件事都做。数据在某些地方总会比其他地方更密集。希望是,强化学习的收益不会被绑定在训练时用到的那一小部分数据上。Elad 那个“魔杖”式的问题是:这周你最想要什么样的完美数据?McKinzie 的回答有些躲闪,但他是认真的:未经污染的评测。衡量一个通用能力很强的智能体,难度和招聘一个这样的人差不多。近期的模型,包括 o3 和 o4-mini,已经攻克了好几个可靠的评测,所以标尺已经不够用了。在训练方面,Mitchell 也很乐意接受这样的任务:在一个百万行代码的库上进行多轮用户交互,一个为期两周的功能,多个 pull request,密集的监督,并且处在模型尚未掌握的下一个前沿。
他们拿推理模型去做什么,是其他人做得不够的事?Mitchell 的回答是:把同一个提示词发很多很多次,对结果的分布形成直觉。推特上那种把一个提示词丢给几个模型、然后宣布谁赢了的对比,让他很抓狂。o3 能把工具调用串成一次神奇的瞬间,同一个提示词也可能错过这一刻,或者干脆少做一些工作。峰值表现确实令人印象深刻。但单个样本并不等于这个模型。Sarah 希望产品里有一个按钮,把提示词运行一百次,排序或综合,然后返回最好的一两个,即使这很昂贵。她说,自己是一个对价格不敏感的 AI 用户。McKinzie 称这是个很好的建议。他们之所以还没上线,原因就是成本太高。
他自己的习惯,是把工作丢到他预期模型能处理的边缘地带。开始一项编程任务之前,他常常直接让 o3 试试。有时他会像个失望的父亲;有时它把事情做成了,省下好几个小时。他把模型当作一个后台队列:把任务发出去,成功的留下,失败的也不会有什么损失。Elad 也这么做。模型失败时,他会觉得自己还有点用;模型成功时,他反而更难受。这就是藏在这场研究对话里的用户手册:多运行几次,让它用工具,在等待就是信号的时候耐心等,并把约束条件写进提示词。
同频道的其他文章
39:23EN → 简体中文
1:09:44EN → 简体中文
35:39EN → 简体中文
42:44EN → 简体中文
38:14EN → 简体中文
45:10EN → 简体中文