微信扫一扫,关注公众号

  • 科技行者

  • 算力行者

见证连接与计算的「力量」

首页 UC伯克利大学突破性研究:让AI自己决定何时"并行思考",推理效率飙升23%

UC伯克利大学突破性研究:让AI自己决定何时"并行思考",推理效率飙升23%

2025-07-15 09:59
分享至:
----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.-
2025-07-15 09:59 科技行者

这项由加州大学伯克利分校的潘佳艺、李修宇、连龙等研究团队领导的创新研究发表于2025年4月,论文题为《Learning Adaptive Parallel Reasoning with Language Models》。有兴趣深入了解的读者可以通过GitHub仓库github.com/Parallel-Reasoning/APR获取完整代码和数据。

说到大语言模型的推理能力,你可能会觉得这个话题有些抽象。但不妨这样想象:当你面对一道复杂的数学题时,你的大脑是如何工作的?有时候你会一步步按顺序思考,就像沿着一条路慢慢走;但有时候你会同时考虑几种不同的解题思路,就像同时派出几个侦探去调查不同的线索。现在的AI大多只会"按顺序思考",而伯克利大学的研究团队成功教会了AI如何像人类一样"同时思考多个问题"。

目前的AI推理系统面临一个有趣的困境。传统的思维链推理就像一个勤奋的学生,必须把每一个推理步骤都详细写下来,从第一步写到最后一步。这种方法确实有效,但就像写作文时字数越来越多,很快就会超出页面限制,而且写得越长,读者(或者说AI)就越难找到重点信息。另一方面,现有的并行推理方法就像让多个学生同时做同一道题,然后比较谁的答案最好。虽然这样可以提高正确率,但问题是这些学生之间完全不交流,经常在重复同样的工作,浪费了大量时间和精力。

研究团队提出的自适应并行推理方法就像培养了一个非常聪明的"项目经理"。这个AI项目经理不仅自己会思考问题,还知道什么时候应该把任务分配给团队成员并行处理,什么时候应该自己独立思考。更重要的是,这个决策过程完全由AI自己学会,不需要人类事先设定固定的规则。

让我们通过一个具体的例子来理解这个突破。研究团队使用了一个叫做"倒计时"的数学推理任务进行测试。这个任务要求AI用给定的几个数字,通过加减乘除运算,得到一个目标数字。比如给你数字22、26、31、53,要求得到27。传统的串行推理方法就像一个人坐在那里,一步步尝试所有可能的组合:先试试53减22等于31,然后看看能不能用26和这两个31凑出27,如果不行就回头尝试其他组合。这种方法的问题是,当推理链变得很长时,AI就像一个桌子太小的学生,纸张写满了就没地方继续写了。

而新的自适应并行推理方法就像一个智能的团队协作。当AI发现一个有前途的思路时,它会"派遣"几个子任务同时进行。比如在上面的例子中,主线程(可以想象成团队负责人)发现可以用53减去其他数字,于是它同时派出两个"工作线程":一个专门尝试53减22的路线,另一个专门尝试53减31的路线。这两个工作线程可以同时进行计算,不会互相干扰。当其中一个工作线程找到了解决方案(比如26加上53减31再除以22等于27),它就把结果报告给主线程,整个团队的任务就完成了。

这种方法的巧妙之处在于,AI学会了自己判断什么时候需要"开会讨论"(串行思考),什么时候可以"分头行动"(并行思考)。就像一个经验丰富的项目经理,它知道有些复杂问题需要团队成员分工合作,而有些简单问题自己独立处理就够了。

为了让AI学会这种智能的任务分配,研究团队采用了两个阶段的训练方法。第一个阶段就像教小孩子模仿大人的行为。研究团队先用计算机程序生成了大量的"标准答案",展示在各种情况下应该如何进行并行推理。这些标准答案就像是优秀项目经理的工作记录,AI通过模仿这些记录来学习基本的并行推理技能。

第二个阶段更像是让AI在实战中积累经验。研究团队使用了强化学习的方法,让AI在真实的问题上反复练习。每当AI成功解决一个问题,就给它一个"奖励";如果失败了,就让它反思哪里做得不好。经过大量的练习,AI逐渐学会了在合适的时机启动并行推理,在合适的时候整合各个子任务的结果。这个过程就像培养一个项目经理的直觉:什么时候应该开会,什么时候应该分工,完全通过经验积累来掌握。

实验结果令人印象深刻。在相同的计算资源限制下,新方法的成功率比传统方法提高了23.4%(从60.0%提升到83.4%)。这个提升幅度相当可观,就好比一个学生的考试成绩从60分提高到83分。更重要的是,当增加计算资源时,新方法的性能提升更加明显,从66.6%跃升到80.1%,而传统方法的提升幅度要小得多。

从延迟角度来看,新方法的优势更加突出。在大约5000毫秒的相同等待时间内,传统串行方法只能达到57.3%的成功率,而新的并行方法达到了75.2%的成功率,提升了近18个百分点。这就像两个厨师在相同时间内做菜,使用新方法的厨师能够做出更多美味的菜肴。

研究团队还发现了一个有趣的现象:经过强化学习训练后,AI更倾向于"宽度优先"而非"深度优先"的搜索策略。简单来说,AI学会了同时尝试更多不同的思路,而不是在一个思路上钻得很深。这就像解迷宫时,与其沿着一条路走到底,不如同时探索几条不同的路径,这样更容易找到出口。

具体数据显示,经过强化学习后,AI平均每次会启动8.2个子线程,比训练前的6.1个增加了34.4%。同时,每个推理序列的平均长度也从1471个词增加到1796个词,增幅为22.1%。这些数字表明,AI确实学会了通过更广泛的并行探索来提高推理成功率。

技术实现方面,研究团队基于SGLang框架构建了这套系统。SGLang是一个高性能的语言模型服务框架,支持连续批处理和基数注意力机制,这使得并行推理的实际部署成为可能。在硬件配置上,团队使用了8GPU的NVIDIA RTX A6000服务器,其中一个GPU处理主推理线程,其余GPU负责并行执行子线程。

实验设计非常严谨。研究团队使用了一个包含228M非嵌入参数的Llama2架构模型,支持4096个词的上下文窗口。所有模型都通过50万个训练样本进行监督学习初始化。为了公平比较不同方法的性能,团队采用了预算约束的方法,通过限制上下文窗口大小来控制计算资源的使用。

对比实验包括了多个基线方法。传统的串行方法(SoS+)就像让一个学生独自完成所有题目,而自洽性方法(cons@n)则像让多个学生独立做题然后投票选择最佳答案。还有一个pass@n指标,表示多次尝试中至少有一次成功的概率,这代表了简单并行方法能达到的理论上限。

结果显示,在低计算预算下(少于4000个词),新方法由于需要额外的协调开销,性能略低于传统方法。但随着计算预算的增加,并行方法的优势迅速显现。当总词数达到20000个时,新方法的成功率达到80.1%,显著超过传统方法的66.6%,甚至超过了多次独立尝试的理论上限(68.4%)。

上下文窗口限制实验更加清楚地展示了新方法的优势。在固定的上下文长度限制下,传统方法很快就会因为推理链过长而无法继续,而新方法通过将计算分散到多个并行线程,可以在相同的上下文限制下进行更复杂的推理。当上下文窗口为4096个词时,配置10个子线程的新方法比传统方法的成功率高出约20个百分点。

延迟测试在实际的8GPU服务器上进行,模拟了真实的应用场景。结果表明,在相同的等待时间下,新方法能够达到更高的成功率。这主要是因为并行处理减少了总的等待时间,即使子线程的数量增加,但由于它们可以同时执行,总的处理时间反而下降了。

强化学习的效果分析揭示了一个重要发现:性能提升主要来自于测试时计算资源的更有效利用,而不是决策质量的提升。当研究团队强制AI使用最大数量的子线程时,强化学习前后的性能差异很小(83.2%对83.3%),这说明强化学习的主要作用是教会AI何时应该使用更多的计算资源,而不是如何在固定资源下做出更好的决策。

温度参数(控制AI输出随机性的参数)的实验显示,新方法在不同设置下都保持了一致的优势。无论是确定性输出(温度为0)还是更随机的输出(温度为1),新方法都能稳定地超越传统方法,这证明了其良好的鲁棒性。

研究团队还进行了详细的消融实验来分析各个组成部分的贡献。他们发现,仅使用监督学习就能获得显著的性能提升,而强化学习进一步放大了这种优势。同时,他们也测试了改进监督学习数据质量的效果,发现传统串行方法受到上下文窗口大小的根本限制,即使提高训练数据质量也无法完全解决这个问题。

从计算效率角度来看,新方法在顺序词数(需要串行处理的最长序列)方面表现出色。虽然总词数可能会增加,但关键路径上的词数保持相对较低,这意味着实际的延迟时间并没有成比例增加。这就像虽然动用了更多的工人,但由于可以并行工作,项目的总完成时间反而缩短了。

技术创新的核心在于spawn()和join()操作的设计。spawn()操作允许AI在推理过程中的任何时刻创建多个子线程,每个子线程都有自己的上下文和任务。join()操作则负责收集子线程的结果并整合到主线程中。这种设计借鉴了操作系统中多线程编程的概念,但应用到了AI推理领域。

子线程的设计特别巧妙。每个子线程只接收父线程传递给它的有限上下文,这避免了上下文窗口的快速消耗。同时,子线程完成任务后只返回关键信息(比如找到的解决方案),而不是完整的推理过程,这进一步节省了上下文空间。这就像项目经理只需要知道下属的工作结果,而不需要了解具体的工作过程。

训练策略的设计也很有创新性。监督学习阶段使用符号求解器生成的混合搜索路径,这些路径既包含深度优先搜索又包含广度优先搜索的特征,为AI提供了丰富的学习样本。强化学习阶段则使用GRPO算法(一种策略优化算法)来端到端地优化整个推理过程,让AI学会平衡探索的广度和深度。

实际部署时,系统充分利用了现代GPU服务器的并行计算能力。主线程运行在一个GPU上,多个子线程可以同时在其他GPU上执行,这样就能真正实现并行推理。SGLang框架的批处理功能还能进一步提高效率,多个推理请求可以在同一批次中处理。

研究的局限性也需要考虑。目前的实验主要集中在数学推理任务上,而且使用的是相对较小的语言模型。虽然结果很有希望,但要将这种方法扩展到更大的预训练模型和更广泛的任务类型,还需要进一步的研究工作。此外,当前的方法需要从头开始训练,对于已经部署的大型语言模型来说,适应成本可能比较高。

不过,这项研究为AI推理能力的提升开辟了一个全新的方向。传统的方法要么专注于让AI"想得更深"(更长的推理链),要么让AI"想得更多"(更多的独立尝试),而这项研究首次让AI学会了"想得更智能"——知道何时应该深入思考,何时应该并行探索。

从更广阔的视角来看,这种自适应并行推理能力可能对未来的AI系统产生深远影响。当AI能够智能地分配自己的计算资源时,它们就能在相同的硬件条件下处理更复杂的问题,或者在相同的复杂度下更快地给出答案。这对于需要实时响应的AI应用来说尤其重要,比如智能客服、实时翻译或者自动驾驶系统。

研究团队在论文中也提出了未来的发展方向。首先是将这种方法扩展到预训练的大型语言模型上,这需要解决如何在不破坏原有能力的情况下添加并行推理能力的问题。其次是减少对监督学习的依赖,探索是否可以直接通过强化学习来训练并行推理能力。最后是设计更复杂的线程间通信协议,比如允许子线程之间直接交换信息,而不仅仅是通过父线程中转。

这项研究的意义不仅在于技术层面的突破,更在于它展示了一种新的思考方式:让AI系统自己学会如何优化自己的推理过程。这种"元认知"能力——知道如何思考的知识——可能是实现更智能AI系统的关键所在。

总的来说,UC伯克利团队的这项研究为AI推理能力的发展提供了一个重要的新思路。通过让AI学会自适应地分配计算资源,他们不仅提高了推理的效率和准确性,更重要的是开启了一个让AI更智能地使用自己能力的新时代。虽然目前还只是在特定任务上的初步成果,但这种方法的潜力是巨大的,值得我们持续关注其后续发展。有兴趣的读者可以通过GitHub仓库github.com/Parallel-Reasoning/APR深入了解这项技术的具体实现细节。

Q&A

Q1:自适应并行推理和传统的AI思考方式有什么区别? A:传统AI就像一个人坐在那里一步步思考问题,而新方法让AI学会了像项目经理一样,知道什么时候自己独立思考,什么时候把任务分给团队成员并行处理。关键是AI可以自己决定何时采用哪种方式,不需要人类预先设定规则。

Q2:这种方法会不会消耗更多计算资源? A:虽然总的计算量可能会增加,但实际运行时间反而会减少,因为多个子任务可以同时进行。就像虽然雇佣了更多工人,但由于可以并行工作,项目完成得更快。研究显示在相同等待时间下,新方法的成功率比传统方法高出近18个百分点。

Q3:这项技术现在可以应用到ChatGPT这样的产品中吗? A:目前还不能直接应用。研究使用的是相对较小的模型,而且需要从头开始训练。要应用到像ChatGPT这样的大型预训练模型上,还需要解决如何在不破坏原有能力的情况下添加并行推理能力的技术挑战。

分享至
0赞

好文章,需要你的鼓励

推荐文章
----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.-