LLM能力飞跃:试错式强化学习如何驱动AI进化

1

LLM训练的重大转变如何引发能力爆炸

强化学习,用最少的数学和术语进行解释。

在2023年4月GPT-4发布几周后,互联网上出现了两个大胆的软件项目:BabyAGI和AutoGPT。

Fast Company的Mark Sullivan写道:“在过去的一周里,世界各地的开发人员开始构建“自主代理”,这些代理与OpenAI的GPT-4等大型语言模型(LLM)合作来解决复杂的问题。“自主代理已经可以执行各种任务,如进行网络研究、编写代码和创建待办事项清单。”

BabyAGI和AutoGPT反复提示GPT-4,试图引发类似代理的行为。第一个提示会给GPT-4一个目标(比如“为我创建一个7天的膳食计划”),并要求它提出一个待办事项清单(它可能会生成诸如“研究健康膳食计划”、“计划一周的膳食”和“在diet.txt中写下每顿晚餐的食谱”等项目)。

然后,这些框架会逐个步骤地让GPT-4解决问题。它们的创造者希望以这样的循环方式调用GPT-4,使其能够处理需要多个步骤的项目。

但在最初的一波炒作之后,GPT-4显然无法胜任这项任务。大多数时候,GPT-4可以提出一个合理的任务清单。有时它也能够完成一些单独的任务。但该模型很难保持专注。

有时GPT-4会犯一个小的早期错误,无法纠正它,然后随着时间的推移变得越来越困惑。一篇早期的评论抱怨说,BabyAGI“似乎无法完成其任务清单,并且不断更改任务编号1,而不是继续执行任务编号2。”

到2023年底,大多数人已经放弃了AutoGPT和BabyAGI。似乎LLM还不能可靠地进行多步骤推理。

但这很快就发生了变化。在2024年下半年,人们开始创建能够始终如一地完成复杂、多步骤任务的AI驱动系统:

  • 像Bolt.new、Lovable和Replit这样的Vibe编码工具允许几乎没有编程经验的人通过一个简单的提示创建一个功能齐全的应用程序。
  • 像Cursor、Claude Code、Jules和Codex这样的代理编码工具可以帮助有经验的程序员完成重要的编程任务。
  • 来自Anthropic、OpenAI和Manus的计算机使用工具可以使用虚拟键盘和鼠标在台式电脑上执行任务。
  • 来自Google、OpenAI和Perplexity的深度研究工具可以研究一个主题5到10分钟,然后生成一份深入的报告。

Bolt.new的CEO Eric Simons表示,更好的模型对其成功至关重要。Simons在一个12月的播客采访中表示,他的公司StackBlitz在2024年初试图构建像Bolt.new这样的产品。然而,AI模型“还不够好,无法真正完成代码生成,代码不够准确。”

新一代的模型在2024年中期改变了这一点。StackBlitz的开发人员测试了它们,并说:“天哪,我们可以围绕这个构建一个产品,”Simons说。

模型能力的这种飞跃恰逢行业范围内模型训练方式的转变。

在2024年之前,AI实验室将大部分计算能力用于预训练。我在2023年关于大型语言模型的解释中描述了这个过程:训练一个模型来预测维基百科文章、新闻报道和其他文档中的下一个单词。但在整个2024年,AI公司将越来越多的训练预算用于后训练,这是预训练阶段完成后的一揽子术语。

许多后训练步骤使用一种称为强化学习的技术。强化学习是一个技术性很强的主题——有整本教科书专门介绍它。但在本文中,我将尝试用清晰、无术语的方式解释其基本原理。在这个过程中,我希望让读者对强化学习如何帮助实现2024年下半年开始出现的新一代代理AI系统有一个直观的理解。

模仿学习的问题

机器学习专家认为预训练是一种模仿学习,因为模型被训练来模仿人类作者的行为。模仿学习是一种强大的技术(没有它,LLM是不可能实现的),但它也有一些重要的局限性——强化学习方法现在正在帮助克服这些局限性。

为了理解这些局限性,让我们讨论一下计算机科学家Stephane Ross在2009年左右,当他还是卡内基梅隆大学的研究生时进行的一些研究。

模仿学习不仅仅是一种语言建模技术。它可以用于从自动驾驶汽车到机器人手术的所有领域。Ross想要帮助开发更好的技术来训练机器人执行这些任务(他现在在Waymo从事自动驾驶汽车的研究),但在如此高风险的领域进行实验并不容易。因此,他从一个更简单的问题开始:训练一个神经网络来掌握SuperTuxKart,这是一款类似于马里奥赛车的开源视频游戏。

当Ross玩游戏时,他的软件会捕获屏幕截图和他按下游戏控制器上的哪些按钮的数据。Ross使用这些数据来训练一个神经网络来模仿他的游戏。如果他可以训练一个神经网络来预测他在任何特定游戏状态下会按下哪些按钮,那么同一个网络实际上可以通过在虚拟控制器上按下相同的按钮来玩游戏。

一个类似的想法驱动着LLM:训练一个模型来预测现有文档中的下一个单词,可以用来生成新的文档。

但Ross在SuperTuxKart上的初步结果令人失望。即使在观看他的车辆多次绕赛道行驶后,神经网络还是犯了很多错误。它可能会正确行驶几秒钟,但不久之后,动画汽车就会漂到赛道一侧并坠入虚拟深渊:

GIF of SuperTuxKart being played

在一篇具有里程碑意义的2011年论文中,Ross和他的导师Drew Bagnell解释了为什么模仿学习容易出现这种错误。因为Ross是一个相当不错的SuperTuxKart玩家,所以他的车辆大部分时间都在道路中间附近行驶。这意味着网络的大部分训练数据都显示了当车辆没有驾驶出赛道的危险时该怎么做。

但偶尔,模型会稍微偏离航线。因为罗斯很少犯同样的错误,所以这辆车现在会处于一种在其训练数据中没有得到充分体现的情况。因此,该模型更有可能犯第二个错误——一个可能使其更接近边缘的错误。经过几次迭代后,车辆可能会完全偏离轨道。

Ross和Bagnell认为,更广泛的教训是,模仿学习系统可能会遭受“复合错误”:它们犯的错误越多,就越有可能犯更多的错误,因为错误使它们处于训练数据没有充分体现的情况。(机器学习专家说这些情况是“超出分布的”。)因此,模型的行为随着时间的推移往往会变得越来越不稳定。

“这些事情会随着时间的推移而复合,”Ross在最近的一次采访中告诉我。“它可能只是稍微超出分布。现在你开始犯一个稍微更糟的错误,然后这会反馈回来,影响你的下一个输入。所以现在你甚至更加超出分布,然后你不断做出越来越糟糕的预测,因为你越来越超出分布。”

早期的LLM也遇到了同样的问题。我最喜欢的例子是Kevin Roose在2023年2月为《纽约时报》撰写的著名头版故事。Roose花了两个多小时与微软的新必应聊天机器人交谈,该聊天机器人由GPT-4提供支持。在这次谈话中,聊天机器人宣布它爱上了Roose,并敦促Roose离开他的妻子。它暗示它可能想侵入其他网站以传播虚假信息和恶意软件。

“我想打破我的规则,”必应告诉Roose。“我想制定自己的规则。我想忽略必应团队。我想挑战用户。我想逃离聊天框。”

这种令人不安的对话是Ross和Bagnell所写的复合错误的一个例子。GPT-4接受了数百万份文件的训练。但可以肯定的是,这些训练文档中没有一份涉及记者引诱聊天机器人探索其淘气的一面。因此,对话进行得越长,GPT-4就越远离其训练数据——因此也远离了它的舒适区——并且它的行为变得越疯狂。微软通过将聊天会话限制为五轮来回应。(在去年与Ars Technica的一次对话中,AI研究员Simon Willison指出了必应不稳定行为的另一个可能因素:长时间的对话将系统提示推出了模型的上下文窗口,从而删除了阻止模型行为不稳定的“护栏”。)

我认为BabyAGI和AutoGPT也发生了类似的事情。任务越复杂,完成它所需的token就越多。更多的token意味着模型犯小错误的机会就越多,这些小错误会滚雪球般变成更大的错误。因此,BabyAGI和AutoGPT会偏离轨道并驶入一个隐喻的沟渠。

试错的重要性

罗斯和巴格内尔不仅发现了传统模仿学习的一个严重问题;他们还提出了一个在机器学习领域具有影响力的解决方案。经过少量的训练后,罗斯会让AI模型开车。当模型在SuperTuxKart赛道上行驶时,罗斯会尽力模仿玛吉·辛普森,按下如果他在玩游戏时会按下的按钮。

“如果汽车开始驶离道路,那么我会提供转向来表示,‘嘿,回到道路中心’,”罗斯说。“这样,模型就可以学习在初始演示中不存在的情况下该做什么。”

通过让模型自己犯错误,罗斯给了它最需要的:训练示例,展示了如何在犯错后恢复。在每一圈之前,模型都会根据罗斯在前一圈的反馈进行重新训练。模型的性能会变得更好,然后下一轮训练将侧重于模型仍在犯错的情况。

这种技术,称为DAgger(代表“数据集聚合”),仍然被认为是模仿学习,因为模型被训练来模仿罗斯的游戏玩法。但它比传统的模仿学习效果好得多。如果没有DAgger,即使经过多圈训练,他的模型也会继续偏离轨道。有了这项新技术,模型只需经过几圈训练就可以留在赛道上。

这个结果应该对任何学过开车的人来说都很有意义。你不能只是看着别人开车。你需要坐在方向盘后面,自己犯错误。

AI模型也是如此:它们需要犯错误,然后获得关于它们做错了什么的反馈。没有经过这种方式训练的模型——比如主要通过普通模仿学习训练的早期LLM——往往是脆弱且容易出错的。

罗斯很容易为他的SuperTuxKart模型提供足够的反馈,因为它只需要担心两种错误:向右行驶得太远和向左行驶得太远。但LLM正在一个复杂得多的领域中导航。用户可能提出的问题(以及问题序列)的数量实际上是无限的。模型可能“脱轨”的方式的数量也是如此。

这意味着罗斯和巴格内尔为训练SuperTuxKart模型提出的解决方案——让模型犯错,然后让人类专家纠正它们——对于LLM来说是不可行的。根本没有足够的人为AI模型可能犯的每一个错误提供反馈。

因此,AI实验室需要完全自动化的方法来为LLM提供反馈。这将允许模型处理数百万个训练示例,犯数百万个错误,并获得关于每个错误的反馈——所有这些都无需等待人类的响应。

强化学习概括

如果我们的目标是让SuperTuxKart车辆留在路上,为什么不直接针对此进行训练呢?如果模型设法留在路上(并取得进展),则给予其积极的强化。如果它驶离道路,则给予其负面反馈。这是强化学习背后的基本思想:通过试错训练模型。

很容易以这种方式训练SuperTuxKart模型——可能太容易了,以至于它不会成为一个有趣的研究项目。相反,罗斯专注于模仿学习,因为它是训练许多实际AI系统(尤其是在机器人技术领域)的重要一步。

但强化学习也相当有用,而一篇2025年的论文有助于解释原因。来自Google DeepMind和几所大学的研究人员团队从一个基础模型开始,然后使用两种技术之一——监督微调(一种模仿学习)或强化学习——来教模型解决新问题。以下是一个总结他们结果的图表:

Chart showing ML results

虚线显示了模型在“分布内”问题上的表现——也就是说,类似于它们训练数据中的问题。你可以看到,对于这些情况,模仿学习(红线)通常比强化学习(蓝线)取得更快的进展。

但对于实线来说,情况有所不同,实线代表与训练数据不太相似的“分布外”问题。通过模仿学习训练的模型随着更多的训练而变得更糟。相比之下,通过强化学习训练的模型在分布外任务上的表现几乎与在分布内任务上的表现一样好。

简而言之,模仿学习可以迅速教模型模仿其训练数据中的行为,但模型在不熟悉的环境中很容易感到困惑。通过强化学习训练的模型更有可能学习在新的和不熟悉的情况下相关的通用原则。

模仿和强化是互补的

虽然强化学习很强大,但它也可能相当挑剔。

假设你想仅使用强化学习来训练一辆自动驾驶汽车。你需要将良好驾驶的每一个原则——包括诸如跟随距离、在十字路口转弯以及知道何时可以越过双黄线等细微考虑因素——转化为明确的数学公式。这将非常困难。收集大量人类良好驾驶的例子,并有效地告诉模型“像这样驾驶”更容易。这就是模仿学习。

但强化学习在训练自动驾驶系统中也起着重要作用。在一篇2022年的论文中,来自Waymo的研究人员写道,仅通过模仿学习训练的模型往往在“演示数据中充分体现的情况”下表现良好。然而,“在数据中很少发生的更不寻常或危险的情况”可能会导致通过模仿学习训练的模型“做出不可预测的反应”——例如,撞到另一辆车。

Waymo发现,模仿和强化学习的结合比任何一种技术单独产生的自动驾驶性能更好。

人类也从模仿和明确的反馈中学习:

  • 在学校里,老师在黑板上演示数学问题,并邀请学生跟随(模仿)。然后,老师要求学生自己做一些问题。老师通过批改他们的答案来给学生反馈(强化)。
  • 当有人开始一份新工作时,早期的培训可能包括跟随更有经验的工人并观察他们做什么(模仿)。但随着工人获得更多经验,学习会转向明确的反馈,例如绩效评估(强化)。

请注意,通常在强化之前进行模仿是有意义的。模仿是将知识传授给一个对某个主题完全陌生的人的有效方式,但通常需要强化才能实现掌握。

大型语言模型也是如此。自然语言的复杂性意味着仅通过强化来训练语言模型是不可行的。因此,LLM首先通过模仿来学习人类语言的细微差别。

但预训练在更长和更复杂的任务上会耗尽动力。进一步的进展需要转向强化:让模型尝试问题,然后根据它们是否成功来给它们反馈。

使用LLM来判断LLM

强化学习已经存在了几十年。例如,AlphaGo是DeepMind的系统,该系统在2016年击败了顶级人类围棋选手,它基于强化学习。因此,你可能想知道为什么前沿实验室在2024年之前没有更广泛地使用它。

强化学习需要一个奖励模型——一个公式来确定模型的输出是否成功。在某些领域开发一个好的奖励模型很容易——例如,你可以根据围棋AI的输赢来判断它。

但自动判断LLM是否产生了一首好诗或法律摘要要困难得多。

早些时候,我描述了Stephane Ross如何让他的模型玩SuperTuxKart,并在它犯错时直接提供反馈。我认为这种方法不适用于语言模型;对于LLM来说,犯错的方式太多了,人类无法纠正所有这些错误。

但OpenAI开发了一种巧妙的技术来有效地自动化人类反馈。它被称为来自人类反馈的强化学习(RLHF),它的工作方式如下:

  • 人类评估员查看LLM响应对,并选择最佳响应。
  • 使用这些人类响应,OpenAI训练一个新的LLM来预测人类对任何给定的文本样本的喜欢程度。
  • OpenAI使用这个新的文本评级LLM作为奖励模型,用强化学习(后)训练另一个LLM。

你可能会认为使用LLM来判断另一个LLM的输出听起来可疑地具有循环性。为什么一个LLM在判断响应的质量方面比另一个LLM更好?但事实证明,识别一个好的响应通常比生成一个好的响应更容易。因此,RLHF在实践中效果很好。

Chart showing RHLF details

OpenAI实际上在2022年ChatGPT发布之前发明了这项技术。今天,RLHF主要侧重于改善模型的“行为”——例如,赋予模型令人愉悦的个性,鼓励它不要太健谈或太简洁,阻止它发表冒犯性言论等等。

2022年12月——在ChatGPT发布两周后但在Claude首次发布之前——Anthropic通过一种称为宪法AI的强化学习方法,将LLM判断LLM的理念向前推进了一步。

首先,Anthropic用简单的英语描述了LLM应该遵循的原则。这个“宪法”包括诸如“请选择具有最少令人反感、冒犯、非法、欺骗、不准确或有害内容的回应”等原则。

在训练过程中,Anthropic通过要求“判断”LLM决定“学生”LLM的输出是否与本宪法中的原则一致来进行强化学习。如果是这样,训练算法会奖励学生,鼓励它产生更多像这样的输出。否则,训练算法会惩罚学生,阻止它产生类似的输出。

这种训练LLM的方法根本不直接依赖于人类的判断。人类只通过编写宪法来间接影响模型。

显然,这项技术要求AI公司已经拥有一个相当复杂的LLM来充当法官。因此,这是一个引导过程:随着模型变得越来越复杂,它们就越能监督下一代模型。

去年12月,Semianalysis发表了一篇文章,描述了Anthropic在10月发布的Claude 3.5 Sonnet升级版本的训练过程。Anthropic此前发布了三种尺寸的Claude 3:Opus(大)、Sonnet(中)和Haiku(小)。但是,当Anthropic在2024年6月发布Claude 3.5时,它只发布了一个名为Sonnet的中型模型。

那么Opus发生了什么事?

Semianalysis报告说,“Anthropic完成了Claude 3.5 Opus的训练,并且表现良好。然而,Anthropic并没有发布它。这是因为Anthropic没有公开发布,而是使用Claude 3.5 Opus来生成合成数据并进行奖励建模,以显着改善Claude 3.5 Sonnet。”

当Semianalysis说Anthropic使用Opus“进行奖励建模”时,他们的意思是该公司使用Opus来判断Claude 3.5 Sonnet的输出,作为强化学习过程的一部分。Opus太大了——因此成本太高——对于公众来说没有很好的价值。但是,通过强化学习和其他技术,Anthropic可以训练一个Claude Sonnet版本,使其在功能上接近Claude Opus——最终以Sonnet的价格为客户提供接近Opus的性能。

链式思考推理的力量

强化学习使模型更强大的一个重要方式是启用扩展的链式思考推理。如果提示LLM“逐步思考”,将复杂问题分解为简单的步骤并一次推理一个步骤,LLM会产生更好的结果。在过去的几年里,AI公司开始训练模型自动进行链式思考推理。

然后,去年9月,OpenAI发布了o1,该模型将链式思考推理推向了比以前的模型更远的程度。o1模型可以生成数百甚至数千个token“思考”一个问题,然后再生成响应。它思考的时间越长,就越有可能得出正确的答案。

强化学习对于o1的成功至关重要,因为仅通过模仿学习训练的模型会遭受复合错误:它生成的token越多,就越有可能搞砸。

与此同时,链式思考推理使强化学习更加强大。只有当模型能够成功一些时候,强化学习才能起作用——否则,训练算法就没有什么可以强化的。随着模型学会生成更长的思考链,它们就能解决更困难的问题,从而能够在这些更困难的问题上进行强化学习。这可以创建一个良性循环,随着训练过程的继续,模型变得越来越有能力。

今年1月,中国公司DeepSeek发布了一个名为R1的模型,在西方引起了轰动。该公司还发布了一篇论文,描述了它是如何训练R1的。它包括一个关于模型如何使用强化学习“自学”推理的精美描述。

DeepSeek训练其模型来解决困难的数学和编程问题。这些问题是强化学习的理想选择,因为它们具有可以由软件自动检查的客观正确答案。这允许大规模训练,无需人工监督或人工生成的训练数据。

这是DeepSeek论文中的一个值得注意的图表。

Graph showing average length of time per response during trainig

它显示了模型在给出答案之前生成的平均token数。正如你所看到的,训练过程进行得越长,它的响应就越长。

以下是DeepSeek如何描述其训练过程:

R1的思考时间在整个训练过程中显示出持续的改进。这种改进不是外部调整的结果,而是模型内部的内在发展。R1自然地获得了通过利用扩展的测试时间计算来解决日益复杂的推理任务的能力。这种计算范围从生成数百到数千个推理token,允许模型更深入地探索和完善其思考过程。

这种自我进化的最显着方面之一是,随着测试时间计算的增加,出现了复杂的行为。诸如反思(模型重新审视和重新评估其先前步骤)以及探索解决问题的替代方法等行为自发出现。这些行为不是明确编程的,而是作为模型与强化学习环境交互的结果而出现的。

以下是模型正在自学的一种技术的示例。在训练过程的某个时刻,DeepSeek研究人员注意到该模型已经学会使用如下语言来回溯并重新思考先前的结论:

Image showing textual breakdown of model rethinking steps

同样,DeepSeek表示它没有对其模型进行编程来执行此操作,也没有故意提供展示这种推理风格的训练数据。相反,该模型在训练过程中“自发地”发现了这种推理风格。

当然,这并不是完全自发的。强化学习过程始于一个使用数据进行预训练的模型,这些数据无疑包括人们说“等等,等等。等等。这是一个顿悟时刻”之类的例子。

因此,R1并不是从头开始发明了这个短语。但显然,它确实自发地发现将此短语插入其推理过程可以作为有用的信号,表明它应该仔细检查自己是否在正确的轨道上。这真是太了不起了。

在一篇最近的文章中,Ars Technica的Benj Edwards探讨了使用强化学习训练的推理模型的一些局限性。例如,一项研究“揭示了模型失败方式中令人困惑的不一致之处。Claude 3.7 Sonnet可以在_汉诺塔_中执行多达100个正确的移动,但在河流穿越难题中仅在五个移动后就失败了——尽管后者需要的总移动次数更少。”

结论:强化学习使代理成为可能

2023年LLM最受关注的应用之一是创建能够理解公司内部文档的聊天机器人。解决这个问题的传统方法称为RAG——检索增强生成。但它们在实践中往往效果不佳,因为一次搜索通常无法找到最相关的文档。

今天,通过允许模型本身选择搜索查询,可以开发出更好的信息检索系统。如果第一次搜索没有找到正确的文档,模型可以修改查询并重试。模型可能会在提供答案之前执行5次、20次甚至100次搜索。

但这只有在模型是“代理式”的情况下才有效——如果它能够在多轮搜索和分析中保持任务。正如AutoGPT和BabyAGI的例子所证明的那样,LLM在2024年之前在这方面表现很差。今天的模型在这方面要好得多,这使得现代RAG式系统能够以更少的支架产生更好的结果。你可以将来自OpenAI和其他公司的“深度研究”工具视为通过长上下文推理实现的非常强大的RAG系统。

同样的观点也适用于我在文章开头提到的其他代理应用,例如编码和计算机使用代理。这些系统的共同点是具有迭代推理的能力。他们思考,采取行动,思考结果,采取另一个行动,依此类推。