大型语言模型(LLMs)在复杂任务中展现出了卓越的能力。近期在大型推理模型(LRMs)方面的进展,例如OpenAI的o1和DeepSeek-R1,进一步提升了在系统2推理领域(如数学和编程)的性能,通过利用监督微调(SFT)和强化学习(RL)技术增强思维链(CoT)推理。然而,尽管较长的CoT推理序列能够提高性能,但也因冗长和重复的输出引入了显著的计算开销,这被称为“过度思考现象”。高效推理旨在优化推理长度,同时保持推理能力,提供了减少计算成本和提高实际应用响应性的实际好处。尽管其潜力巨大,高效推理的研究仍处于早期阶段。
本文提供了首个结构化综述,系统地调查和探索在LLMs中实现高效推理的当前进展。总体而言,基于LLMs的固有机制,我们将现有研究分类为几个关键方向:(1)基于模型的高效推理,考虑将完整推理模型优化为更简洁的推理模型或直接训练高效推理模型;(2)基于推理输出的高效推理,旨在推理过程中动态减少推理步骤和长度;(3)基于输入提示的高效推理,旨在根据输入提示的特性(如难度或长度控制)提升推理效率。此外,我们介绍了使用高效数据进行推理模型训练,探索小型语言模型的推理能力,并讨论评估方法和基准测试。我们维护一个公共仓库,以持续跟踪和更新这一前沿领域的最新研究。
大型语言模型(LLMs)作为强大的人工智能工具,展现出在自然语言理解和复杂推理方面的先进能力。近年来,专注于推理的LLMs,即被称为具有推理能力的模型或大型推理模型(LRMs)[98],如OpenAI的o1 [65]和DeepSeek-R1 [33],在系统2推理领域[47]中显著提升了性能,尤其是在具有挑战性的数学[18,37]和编程任务[7,19]中。LRMs是基于基础的预训练模型(如LLaMA [32,86])演变而来的,这些模型通过下一个标记预测进行训练[25],通常利用思维链(CoT)[92]推理链生成明确的、逐步的推理序列,从而达到最终答案,显著提高了在推理密集型任务中的有效性。
LLMs的推理能力通常通过监督微调(SFT)和强化学习(RL)来发展,这些方法促进了迭代和系统性的问题解决能力。例如,DeepSeek-R1 [33]经过多轮SFT和RL训练,强调结构化思维模板和基于规则的奖励机制。特别是,基于规则的奖励在训练过程中提供了精确和明确的反馈信号,有效增强了超越预训练LLM的一般推理能力。
然而,尽管较长的CoT推理显著提升了准确性,逐步思考机制也导致输出响应冗长,从而产生了显著的计算开销和增加的推理时间。例如,在回答简单问题时,如“2加3等于多少?”会出现“过度思考问题”[10]。一些推理模型,尤其是较小的模型,可能生成数千个标记的推理序列。这种冗长性显著增加了推理成本和延迟,限制了推理模型在计算敏感的现实场景中的实际应用,例如实时自主驾驶系统、互动对话助手、精密机器人控制任务和大规模在线搜索引擎。
高效推理,特别是推理长度的缩减,在这些方面提供了显著的好处,直接降低成本并提高现实部署的可行性。最近,许多研究[34,35,57,59,104]探索了开发更简洁推理路径的方法,使得高效推理成为一个快速发展的研究领域。
在本文中,我们呈现了首个结构化综述,系统地探索LLMs中高效推理的进展。如图2所示,我们将现有研究分类为三个关键方向:(1)基于模型的高效推理,重点优化完整推理模型为更简洁的变体或直接训练高效推理模型;(2)基于推理输出的高效推理,在推理过程中动态减少推理步骤和长度;(3)基于输入提示的高效推理,基于输入特性(如难度或长度控制)提升推理效率。与模型压缩技术(如量化[29,50,97]或KV缓存压缩[55,76,107,110])不同,这些技术主要关注于减少模型大小以实现轻量级推理,而LLMs中的高效推理则强调通过优化生成推理序列的长度和减少不必要的思考步骤来实现聪明且简洁的推理。
总体而言,我们总结了当前高效推理的关键方法,将其组织为以下几类:
此外,我们还探讨了其他相关主题,包括:
思维链(CoT)推理[92]是一种关键方法,旨在增强大型语言模型(LLMs)的推理能力。在这种设置中,模型通常被提示生成一个结构化的推理链,然后再得出最终答案。该领域的技术已被证明能提高整体准确性[92],因为高质量的生成上下文通常会导致更一致和可靠的最终结果。已经开发出几种显著的CoT变体:自一致性CoT [90]通过采样多样的推理路径并通过边际化和聚合选择最一致的答案,取代了标准的贪婪解码方法。思维树(ToT)提示[102]进一步将推理过程结构化为树形结构并支持回溯,从而显著提高了解决可并行子任务的效率。而思维图(GoT)提示[6]则通过将思维结构化为图,允许对个别推理步骤进行迭代优化。尽管存在许多CoT变体,它们通常涉及不同的提示技术来引导模型的行为,有时还结合了类似控制器的机制来管理思维的进展和使用。
最近的推理模型,如DeepSeek-R1 [33]和OpenAI的o1 [57],被认为或已知比其非推理对手更能帮助用户,如在聊天机器人竞技场的LLM排行榜中所示。这种能力在逻辑密集型任务(例如数学和编程)中特别有利,因为多步推理使LLMs能够在得出最终答案之前生成结构化的推理步骤。OpenAI o1模型被推测采用基于树的搜索方法,如蒙特卡罗树搜索(MCTS)[20,41],结合过程奖励模型(PRM)以通过指导模拟探索推理路径并确定最佳解决方案。另一方面,DeepSeek-R1则通过监督微调和强化学习明确学习其推理能力,尤其强调规则基础的奖励机制以应对数学和编码任务。这些模型在得出最终答案之前,训练生成预定义格式的推理步骤。
长CoT推理模型中的“过度思考现象”[10,83]指的是LLMs生成过于详细或不必要的复杂推理步骤,最终降低了它们解决问题的效率。特别是许多现代推理模型,尤其是参数规模较小的模型,倾向于生成冗长的推理或冗余的中间步骤,使得它们无法在用户定义的标记预算内提供答案。在更糟糕的情况下,过多的推理步骤会引入错误或模糊逻辑的清晰度,导致错误答案。图4展示了过度思考的一个例子。尽管模型在推理过程的早期就得出了正确答案,但它仍继续生成不必要的中间步骤,导致效率低下。考虑到与LLM推理相关的巨大资源成本(例如,OpenAI o1每生成100万标记的成本为60美元),这种行为是极为不受欢迎的。此外,如果更长的推理导致错误答案,问题将变得更加严重。相反,高效推理模型则会使用更少的推理步骤来获得正确答案,同时降低推理成本。
解决这一挑战尤为困难,因为推理能力模型的预训练方案通常明确鼓励生成延长的推理步骤以提高准确性。例如,DeepSeek-R1-Zero作为DeepSeek-R1的一个开发原型,其训练时间增加与响应长度延长和基准性能提升之间呈直接相关性[33]。这些趋势通常被视为成功推理训练的代理。因此,提高推理效率要求抵制某些预训练目标,成为一项非平凡的挑战。
本文旨在系统总结各种方法和策略,以实现开发具有高效率和强大推理能力的推理模型这一富有挑战性但有价值的目标。
从模型的角度来看,这些研究专注于微调大型语言模型(LLMs),以提高它们简洁而高效的推理能力。
大多数推理模型采用基于强化学习的方法进行训练(例如,DeepSeek-R1 [33]、DeepSeek-R1-Zero [33]、OpenAI o1 [65]、QwQ-32B-Preview [84]),这些方法主要关注准确性奖励和格式奖励[33]。为了提高推理长度效率,一些研究提出在RL框架中整合长度奖励,这有效缩短了推理过程(如表5所示)。原则上,长度奖励为短的正确答案赋予更高的分数,而对冗长或不正确的答案进行惩罚,从而优化推理路径的长度。现有研究利用传统的RL优化技术结合显式的基于长度的奖励来控制思维链推理的长度。一些详细的长度奖励在表1中列出。
研究[3]提出利用基于正确性的长度奖励,较短的正确答案会获得更高的奖励。然后,他们应用传统的策略梯度方法,按照这一奖励方案引导LLMs生成简洁的推理步骤。从策略梯度扩展,以下讨论的工作主要基于近端策略优化(PPO)[71],并加入了思维链长度惩罚。《揭开神秘面纱》[104]提供了来自RL实验的实证结果,考察了推理能力如何受到长度的影响。他们证明,RL并不总是能够一致或可靠地增加思维链的长度和复杂性,强调了控制思维链长度增长以确保稳定性能的必要性。为了解决这些问题,他们提出了一种基于余弦奖励的方案,基于简洁奖励公式的Dirichlet函数[56],并提出了“超出长度惩罚”得分。由于思维链长度对性能的影响,Kimi k1.5 [83]在其策略优化中加入了长度惩罚(在线策略镜像下降的变体[85]),以改善长思维链的激活并促进有效模型合并。除了使用长度惩罚进行优化外,L1 [1]还在启动策略优化之前,使用指定长度约束指令(即“思考N个标记”)修改训练数据。O1-Pruner [57]引入了长度协调奖励,并结合PPO风格的损失,优化推理LLMs,通过有效缩短思维链的长度来实现。具体而言,长度协调奖励是基于参考模型输出与预测结果之间的思维链长度比率进行计算的。此外,该奖励结合了基于准确性的约束,比较预测与参考模型输出,确保缩短推理过程不会降低任务性能。DAST [74]不依赖于参考模型,利用SimPO [60]通过构建长度偏好数据集来微调推理LLMs。该数据集基于自定义的标记长度预算Lbudget生成,定义为正确响应的平均标记长度和最大允许生成长度的线性组合。
这些基于RL的方法能够减轻在推理能力LLMs中存在的过度思考问题,过度思考指的是不必要的延长推理过程,导致推理时间变长并超出计算预算。通过几乎无损地与LLMs的原始推理能力保持一致,这些预算高效的RL策略使推理LLMs在资源受限的场景中得到广泛应用。
使用可变长度的CoT数据微调LLMs是提高推理效率的有效方法。如图6所示,这系列工作通常包括:(1)通过各种方法构建可变长度的CoT推理数据集;(2)使用收集的数据对推理模型进行SFT,使LLMs能够学习封装有效知识的紧凑推理链。需要注意的是,这种方法不仅限于经过RL训练的推理模型;它也可以通过注入高效推理能力直接增强推理模型,类似于用于蒸馏推理模型的方法(例如,DeepSeek-R1-Distill-Qwen [33])。
可变长度的CoT推理数据集是指长/短推理步骤的数据集,这些数据集可以指导LLMs实现正确答案。现有研究通常通过对预训练推理模型进行提问来收集长CoT数据。基于长CoT数据,关键挑战是:如何收集短CoT数据?总体而言,可变长度的CoT推理数据集可以通过推理后或推理过程中创建。我们在表3中列出了一些详细的方法。
推理后CoT压缩。 这种方法通过在生成完整的推理后,使用启发式标准或LLMs减少冗余推理步骤来收集短CoT数据,如[105]、[40]和[95]所提出的。具体而言,[105]使用具有推理能力的LLMs生成推理和答案。在生成完整的CoT数据后,他们丢弃推理过程,仅使用问题和答案来提炼系统-1 LLMs。另一个工作C3oT通过压缩推理过程来提高推理效率[40]。长CoT推理步骤是通过明确提示LLMs生成的。然后,它使用GPT-4作为压缩器,以减少推理过程的长度,同时确保压缩后的推理保留所有关键信息并去除冗余词。此外,TokenSkip通过解释驱动来减少推理步骤[95]。它评估每个推理部分对最终答案的语义重要性,并减少推理标记。重要部分保留了可能提高最终答案准确性的关键推理步骤。推理后CoT压缩的优势在于能够实现更高的推理步骤减少率,促进更高效的推理。
在推理过程中获取压缩的CoT数据。 这种方法通过提示LLMs在推理和推理过程中生成短推理步骤来收集短CoT数据,如[53]、[62]、[34]和[59]所提出的。具体而言,[53]提出了一种类人步骤跳过的方法来生成更短的推理步骤。在第一阶段,基于原始训练数据集,他们手动创建通过跳过步骤获得的解决方案,或由人类专业知识引导,或随机合并或删除步骤。此外,这些简洁数据用提示标注,如“在n步骤内解决”。经过SFT后,模型能够生成更短的推理路径。在第二阶段,他们提示该模型通过内在地跳过或压缩步骤来解决问题。生成的简洁推理步骤连同问题和答案被收集为数据集,然后用于SFT,使LLMs以更少的步骤解决问题。此外,Token-Budget [34]提供了一个重要的见解:最佳的标记预算帮助LLMs主动遵循标记约束来完成推理过程。受到这个见解的启发,它提出了一种基于二分搜索的方法来实现最佳标记预算,并遵循这些预算生成短推理步骤。此外,[62]提出了一种基于采样的方法来提高推理效率。具体而言,它检查推理长度的分布,发现较短的解决方案比典型推理长度更频繁出现。基于这一发现,它提出了一种在测试时进行N个推理路径生成的最佳N(BoN)采样,并选择最短的一个。这些短推理路径被收集为数据集。最后,CoT-Value [59]通过混合长推理和非推理LLMs的参数来控制推理长度,以生成可变长度的推理步骤。在推理过程中进行CoT压缩的优势在于,天然生成的推理步骤与LLMs的内在知识对齐,从而促使LLMs更有效地学习。
在收集可变长度CoT数据后,现有研究以几种方式微调LLMs以实现高效推理,这些方法包括标准微调(例如,低秩适应(LoRA)[38]或全面微调)和渐进微调。
标准微调。 大多数工作采用标准方法微调LLMs [34,40,53,62,95,105]。具体而言,这些方法采用LoRA [38]或全面微调[40],以最小化困惑度损失函数或DPO损失函数[34]在推理效率数据集上的损失。LoRA使LLMs能够以不到1%的调优参数适应短推理步骤。此外,[53]观察到增长的推理效率能够推广到超出收集的数据集的领域。
渐进微调。 渐进微调旨在平滑地减少微调过程中的推理步骤[53,59]。一种方法是在微调LLMs时逐步减少数据的推理步骤,如[53]中所采用的。另一种有效的方法是逐步调整推理步骤的生成,如CoT-Value [59]所提出的。具体而言,它首先学习LoRA适配器∆θN和θL,其中具有∆θN的LLMs没有推理步骤,而具有∆θL的LLMs具有长推理。然后,通过α∆θN +(1−α)∆θL混合这两个参数,以生成可变长度的推理数据集。在这里,0 < α < 1 控制从∆θN到∆θL的参数转移,从而控制LLMs生成的推理长度。最终,它在生成的数据上微调LLMs,同时逐步将α从1减少到0。通过这种方式,它在微调过程中逐步提高推理效率。
从推理步骤的输出角度来看,这些研究专注于修改输出范式,以增强大型语言模型(LLMs)简洁而高效的推理能力。
尽管标准的思维链(CoT)方法通过明确写出推理步骤提高了LLM的性能,但最近的研究[24]表明,简单地添加中间“思考”标记,甚至是毫无意义的填充词(例如“……”)[67],也可以提高性能。[31]通过在隐藏空间中重复扩展来扩大更深层次的推理,而不是依赖冗长的文本。这些发现强调,收益往往来自于更多的隐藏计算,而不是纯粹的文本分解。基于潜在推理可以让LLMs更高效、灵活地推理,并减少(或不使用)明确的文本中间步骤,几种新方法专注于将显式的CoT压缩或替换成更紧凑的潜在表示。
关键问题是:如何将推理步骤压缩到潜在空间?
一般而言,这些方法可以分为两种类型:训练LLMs使用潜在表示进行推理或使用辅助模型。一些方法的可视化比较在图7中展示。
训练LLMs利用潜在表示。 在最早的探索中,Coconut(连续思维链)[35]将LLM的最终层隐藏状态视为“连续思维”,以替代传统的离散标记。然后,它重用这些隐藏状态作为下一个输入,表明将标记压缩为潜在表示能够通过减少中间“思考”标记的数量来提高准确性和效率。CODI [75]则采用与Coconut不同的训练过程,通过自蒸馏学习连续的潜在CoT。在CODI中,模型同时担任教师和学生,联合学习显式和隐式的CoT,同时对标记上的隐藏激活进行对齐,生成最终答案。这种自蒸馏过程使LLMs能够在内部进行推理,而不生成显式的CoT标记。同样,CCOT [12]将长CoT推理浓缩成简短且内容丰富的连续思考标记。首先,它为查询预计算完整的CoT,并选择最重要的隐藏状态作为压缩的金标准。CCOT模块(一个LoRA)被训练以预测这些关键标记。然后,DECODE模块(另一个LoRA)在查询和压缩标记上进行训练。在推理过程中,CCOT生成压缩的标记,DECODE利用这些标记生成简洁的推理步骤。
另一类工作是基于摘要的动态推理,正如第4.2节所提到的,探索在推理过程中压缩和总结推理步骤,这与“思考标记”的引入类似。另一项工作Heima [73],受到Coconut [35]的启发,将潜在推理引入多模态大型语言模型(MLLMs)。Heima不再总是使用完整的、冗长的推理解释,而是用单个“思考标记”替代每个详细推理阶段。通过这一变化,训练数据被更新。每个推理阶段只是这些思考标记之一。然后,他们继续对模型进行微调,以实现高效推理。Token Assorted [79]采用混合方法。在训练过程中,部分CoT被通过VQ-VAE [88]学习到的离散潜在标记替换,然后LLM与部分和高层次的推理步骤进行训练。作者表明,将文本标记与潜在标记混合可以通过将某些推理步骤以紧凑的潜在形式表示来促进训练和推理。除了显式地将离散标记压缩到潜在空间外,[70]还表明,循环k层变换器L次可以模拟kL层模型的性能。这种循环机制有效地增加了模型的深度,而不增加参数,使得在潜在空间中实现迭代推理过程成为可能。该研究揭示,经过循环的模型隐式生成潜在思维,使其能够通过连续的循环模拟多步CoT推理。
在保持LLMs不变的情况下训练辅助模块。 虽然大多数连续空间推理的方法微调已经预训练的LLM,但SoftCoT [100]保持基础LLM不变。一个轻量级的辅助模型生成特定实例的软思考标记,并将其投影到被冻结的LLM的嵌入空间中。实验表明,SoftCoT始终能够提升性能,证明了用外部潜在推理标记增强LLMs的可行性。这些方法暗示着向潜在推理的更广泛转变,其中关键思维以压缩的、非文本形式发生。这类方法能够提升速度、自适应推理、并行回溯以及新的解释或部分揭示模型推理的方式。随着LLMs规模的增大和任务复杂性的增加,平衡全面推理与计算效率对于这些灵活且紧凑的潜在CoT范式非常有益。
现有的研究集中在修改推理范式以实现更高效的推理。推理过程中的关键是选择适当的标准以指导推理策略。目前的无训练方法探索使用各种标准进行动态推理,例如基于奖励、基于置信度和基于一致性的选择性推理。此外,一种基于摘要的动态推理方法在训练期间内在地结合LLMs的输出摘要范式。
关键问题是:选择哪种标准来引导推理?什么是合适的高效推理范式?
使用强化学习(RL)进行的训练时间缩放[33]可以显著增强LLMs的推理能力。然而,它需要大量计算资源来扩大模型训练规模,这使得它变得过于昂贵[33]。作为替代方案,研究人员探索了测试时间推理,也称为测试时间缩放[77]。测试时间缩放利用各种推理策略,使模型在复杂问题上“思考更长、更广”。这种方法通过在推理过程中增加分配的计算资源,持续提高在需要推理的挑战性数学和编码问题上的性能[5,77]。
测试时间缩放利用各种推理策略生成更长和更高质量的CoT响应。缩放推理有几种方式:(1)最佳N(Best-of-N)采样[81,91]涉及为给定提示生成多个响应,扩大搜索空间以找到更好的解决方案。生成后,使用多数投票选择最佳响应,即选择出现频率最高的响应;或者通过奖励模型,基于预定义标准评估响应质量。这种方法已显示出显著增强LLMs的推理能力[5]。(2)基于束搜索(Beam-based searching)[5,26,30],与最佳N不同,将生成过程结构化为多个步骤。束搜索在每一步选择最有前途的中间输出,并使用过程奖励模型[87],同时丢弃不太理想的结果。这使得响应生成和评估的优化更加细致。(3)蒙特卡罗树搜索(MCTS)[44],在多个解决路径中并行探索。MCTS沿着解决树的不同分支生成部分响应,对其进行评估,并将奖励值回传到更早的节点。然后,模型选择具有最高累积奖励的分支,从而确保比传统束搜索更精细的选择过程。
尽管测试时间缩放可以显著减少训练时间缩放的开销[5],但生成的大量响应仍然使推理计算成本高昂。为了解决这一问题,最近的研究探索了优化测试时间缩放的方法。
基于奖励的高效推理。 规范性拒绝(Speculative Rejection)[81]是一种高效的推理时间算法,它通过动态减少计算开销来优化最佳N(BoN)解码(如图8左侧所示)。它生成多个响应,直到内存限制几乎达到,然后基于奖励模型评估丢弃低质量输出。这种自适应过滤显著降低了推理成本,相较于普通的BoN。另一方面,奖励引导的规范性解码(RSD)[48]提高了多步推理任务的规范性解码效率。与传统的规范性解码方法严格要求草稿模型与目标模型之间的准确标记匹配不同,RSD利用过程奖励模型(PRM)动态评估来自更小、更高效的草稿模型的中间输出。高奖励分数的输出被直接接受,而低分数的输出则由更大、更有能力的目标模型进一步优化。
基于置信度/确定性的自适应推理。 动态并行树搜索(DPTS)[26]通过引入两个主要的效率问题来优化LLMs中的树型推理:(1) 并行流线优化通过仅存储增量KV缓存更新和动态调整扩展节点的数量,提高内存和计算利用率;(2) 搜索与转换机制使用基于置信度的标准平衡探索与利用。总体而言,在推理过程中,系统会切断不确定的路径以节省时间。FastMCTS [44]是另一种基于置信度的方法,旨在优化多步推理数据合成。传统的拒绝采样独立生成多个候选响应,仅选择正确的,但通常效率低下,并且在不平衡采样时表现不佳。受到MCTS的启发,FastMCTS优先考虑高置信度的路径进行深层推理。此外,它根据问题的复杂性调整树的扩展,从而提高效率和推理的多样性。另一类研究利用确定性或不确定性度量来指导自适应推理。Certaindex [30]作为一种确定性度量,通过语义熵、奖励模型分数或两者的组合量化LLMs在推理过程中的置信度。较高的Certaindex表明进一步的推理步骤不太可能改变最终答案,从而允许提前终止以释放资源用于更具挑战性的查询。Dynasor是基于这一原则构建的推理系统,通过动态跟踪推理进度来优化计算调度,而不是均匀分配资源。长度过滤投票(Length-filtered Vote)[94]是另一项利用不确定性提高CoT推理的研究。该研究发现,较长的推理链并不总是提高准确性;相反,性能最初改善但最终因错误累积而下降。作者提供了数学分析,证明存在一个最佳的CoT长度,由模型能力和任务难度决定。为此,他们提出了长度过滤投票,一种基于长度的多数投票方法,通过CoT长度对答案进行分组,并基于预测不确定性选择最可靠的组。
基于一致性的选择性推理。 自截断最佳N(ST-BoN)[91]通过引入提前终止(如图8右侧所示)增强了BoN采样的效率,类似于规范性拒绝[81]。然而,与使用奖励模型的规范性拒绝不同,ST-BoN利用一致性作为衡量重要性的标准。具体而言,它利用潜在嵌入的一致性来评估响应质量。核心见解是:“样本越接近其他样本,其路径越可能导致正确答案。”然后,ST-BoN选择与其他样本最一致的嵌入链(CoE)并将其视为最佳样本。
一些现有方法选择通过训练LLMs总结中间思考步骤来优化推理效率。LightThinker [108] 提倡训练LLMs学习何时以及如何压缩中间推理步骤。LightThinker 不再存储冗长的思维链,而是将冗长的推理压缩成紧凑的“主旨标记”,以减少内存和计算成本。实施这种摘要范式需要一个稀疏模式的注意力掩码,以确保模型仅关注必要的压缩表示。InftyThink [101] 引入了一种迭代推理方法,使得基本上可以实现无限的推理链,同时保持强大的准确性而不超过上下文窗口限制。它通过迭代生成思考、进行总结并丢弃先前的思考和总结,只保留最新的总结。此外,InftyThink 提供了一种将现有推理数据集转换为此范式下的迭代格式的技术。
从输入提示和问题的角度来看,这些研究专注于根据输入提示的特征施加长度限制或引导LLMs,以实现简洁和高效的推理。
提示引导的高效推理明确指示LLMs生成更少的推理步骤,是提高推理模型效率的一种直接且高效的方法。如表5所示,不同的方法提出了不同的提示,以确保模型输出简洁的推理结果。
关键问题是:哪些提示可以准确控制LLMs的推理长度?
通过变化提示强制简洁推理。 Token-Budget [34] 提出了在提示中设定标记预算,以减少不必要的推理标记。为了在保留准确性的同时优化效率,[34] 引入了TALE-EP,这是一种无训练的零-shot预算估计方法。TALE-EP 首先通过提示LLM自身估计合理的标记预算。然后,它将该估计纳入一个指定标记限制的提示中,引导LLM生成更高效且准确的响应。这项工作也在第3.2节中归类为进一步的SFT。
CoD [99] 观察到LLMs通常生成过于冗长的推理步骤,而人类通常仅记录最基本的见解。为提高推理效率,他们提出了草稿链(Chain-of-Draft)提示。与思维链提示类似,CoD 鼓励逐步推理,但引入了限制冗长的政策。例如,他们的提示指示:“逐步思考,但每个思考步骤仅保留至少五个单词的草稿。”他们发现这种方法在保留必要的中间步骤的同时保持了准确性,显著减少了标记使用量。[43] 系统地研究了不同提示下推理长度与模型准确性之间的关系,使用了明确的压缩指令(例如,“使用10个单词或更少”)。他们的分析揭示了推理长度与准确性之间的普遍权衡,表明不同的基于提示的压缩策略在同一准确性-压缩曲线上对齐。他们假设每个任务都有一个内在的标记复杂性,即成功解决问题所需的最小标记数。通过计算准确性压缩权衡的信息理论极限,他们发现现有基于提示的压缩方法远未达到这些极限,表明有显著的改进空间。[69] 引入了简洁思维链(Concise Chain-of-Thought,CCoT)提示,这是一种提示LLMs逐步推理的技术,同时明确指示它们“要简洁”。MARP [8] 引入修改提示以限制单步计算,有效地细化了推理边界。此外,他们增加了每步的计算,并减少了全局规划步骤。
提示后微调。 如第3节所述,一些方法使用基于提示的方法收集短CoT数据,然后应用SFT开发一个高效的推理模型[34]。除了直接进行基于提示的推理外,这些经过微调的模型在处理复杂推理挑战时通常会表现得更为出色。
用户提供的提示可以从简单任务到困难任务不等。高效推理的路由策略动态决定语言模型如何处理查询,这基于它们的复杂性和不确定性。理想情况下,推理模型可以自动将较简单的查询分配给速度更快但推理能力较弱的LLMs,而将更复杂的查询指向速度较慢但推理能力较强的LLMs。
关键问题是:应该使用什么标准来确定提示的属性(例如,难度)?
未知标准。 Anthropic 发布的Claude 3.7 Sonnet [2] 是首个混合推理模型,值得注意。Claude 3.7 Sonnet通过RL开发,使其能够在复杂推理任务上分配更多时间进行深入分析,从而最终产生更好的结果。该模型提供两种响应模式:快速回答或逐步思考。用户可以利用API管理模型思考的时间。尽管路由标准的具体细节尚不明确,Claude 3.7 Sonnet代表了第一个混合推理模型,为后续的基于路由的大型推理模型奠定了基础。
训练分类器。 RouteLLM [63] 训练了一个查询路由器,以根据复杂性将传入查询分派给适当的LLMs。作者利用从Chatbot Arena收集的大量偏好数据作为训练数据,使得在问答和推理任务中能够有效做出路由决策。因此,较简单的查询被指向低延迟的LLMs,而复杂的查询则被分配给高延迟的、功能更强的LLMs,从而显著加快了整体推理效率。Sketch-of-Thought (SoT) [4] 利用路由和提示来最小化推理过程中的标记使用。一个轻量级的基于DistilBERT的路由器根据问题的特征动态选择最合适的范式。受到认知科学的启发,SoT采用三种不同的范式:概念链(Conceptual Chaining),即用最少的语言连接思想;分块符号化(Chunked Symbolism),将数学推理结构化为简洁的符号表示;专家词汇(Expert Lexicons),采用专家使用的领域特定速记。
不确定性。 除了依赖其他路由器,Self-Ref [16]使LLMs能够自主决定何时进行路由,通过提取内在的不确定性评分作为自路由指标。具体而言,他们对LLMs中的不确定性专用标记进行了微调,以使不确定性预测与问答和推理任务中的预测准确性对齐。这确保只有不确定或不正确的输出才会触发路由到更强大的LLMs,从而减少LLM推理的延迟。Confident或Seek Stronger [15]旨在为预测和初始化路由策略提供校准数据,无需访问用户查询。这种方法能够在确定LLM是否应自信地生成答案或将查询转交给更强模型的决策中实现更高效和可靠的决策,从而在在线LLM服务场景中从查询层面提高推理效率。
提高推理模型的效率不仅需要优化模型架构,还需要优化用于训练的数据。近期的研究表明,精心选择、构建和利用训练数据可以显著减少数据要求,同时保持甚至提高推理性能。尽管所有方法都专注于高效的数据选择,但它们在定义和利用效率方面有所不同。
关键问题是:如何构建更少但高质量的训练数据?
最小化但高影响的数据选择。 LIMO [103] 挑战了复杂推理任务需要大量训练数据的传统观念。他们引入了LIMO框架,利用最小但精心策划的示例来引导复杂推理能力。通过根据难度、广泛性和知识多样性选择高质量的问题,并根据最佳结构组织、有效的认知支架和严格的验证选择高质量的解决方案,仅使用817个精心挑选的训练样本,LIMO的表现超过了使用超过100,000个示例的先前模型。s1 [61] 通过控制测试时间计算资源来增强推理性能。他们基于质量、难度和多样性策划了一个紧凑的数据集s1K,包含1,000个高质量的问题及其推理轨迹。通过在该数据集上的有监督微调和实施“预算强制”,即在推理过程中调节推理时间,s1-32B在MATHandAIME24上超过了OpenAI o1-preview,证明了战略性测试时间缩放可以有效增强推理能力,而无需大量训练数据。
自我验证作为数据高效训练信号。 S2R [58] 通过强化学习为LLMs注入自我验证和自我修正能力。最初,模型在一个策划的数据集上进行微调,以建立这些能力。随后,采用基于结果和过程的强化学习进一步增强这些技能。仅用3,100个初始化样本,他们微调的模型在所有基础模型中持续提高了推理任务的性能。S2R微调后的Qwen2.5-Math-7B能够在MATH500和GSM8K上超过训练在相似数量的长CoT蒸馏数据上的模型。
大型语言模型(LLMs)在各种复杂任务中展现出卓越的推理能力,这得益于它们在多样化数据集上进行的大规模训练。然而,它们巨大的计算和内存需求在资源受限的环境(如边缘设备、移动应用和实时系统)中部署时面临挑战。在效率、成本或延迟是主要关注点的情况下,小型语言模型(SLMs)提供了可行的替代方案。SLMs在严格的资源限制下仍能保持强大的推理能力,对于扩大AI驱动推理系统的可及性和实用性至关重要。为实现这一目标,主要探讨了两类方法:蒸馏和模型压缩。
关键问题是:小型语言模型在推理任务中的表现如何?模型压缩(例如,量化)对它们的推理能力有何影响?
蒸馏。 蒸馏是一种将LLMs的推理能力转移到SLMs的关键技术,同时保持效率。然而,[46]发现了一种称为小模型学习能力差距(Small Model Learnability Gap)的现象,突显了从大型模型向小型模型蒸馏复杂推理过程的挑战,表明SLMs难以模拟其大型对应物的推理深度。为解决这一问题,各种方法相继提出。[46]和[13]都探索了混合蒸馏,其中[46]结合了长短CoT推理示例,而[13]则将CoT和PoT(思维程序)结合,以提高从LLMs到SLMs的知识蒸馏效果。相比之下,[28]引入了反事实蒸馏,通过在原始问题中屏蔽因果特征来增强训练集,促使LLM完成屏蔽文本,并为每个数据生成多视角CoT(正面和负面视角),以增强知识蒸馏的效果。此外,[112]开发了一种反馈驱动的蒸馏技术,迭代地精炼蒸馏数据集。他们首先提示LLM生成初始蒸馏数据集,然后通过从现有问题创建多样且复杂的新问题来扩展它,最后使用这个丰富的数据集对SLMs进行微调。另一种策略由[111]提出,将探测和检索机制纳入蒸馏流程。它训练两个互补的蒸馏SLMs,一个探测模型和一个推理模型,探测模型检索相关知识,推理模型则利用这些知识构建逐步推理的答案。[9]在蒸馏过程中引入了自适应思维,允许模型根据任务的复杂性动态调整推理策略。此外,[49]提出了SKIntern,一个将符号知识内化到SLM中的框架,以提高CoT推理的质量和效率,而[109]引入了SCORE,一个从SLM生成自我修正数据并微调模型以作为自我修正推理者的流程。这些多样的蒸馏技术表明,从LLMs到SLMs有效转移推理能力不仅需要减小模型规模,还需要认真和战略性地构建知识转移流程,以保持逻辑深度和泛化能力。
剪枝和量化。 除了直接从LLMs蒸馏知识到SLMs外,另一种替代方法是使用量化和剪枝等技术将LLM压缩为SLM。[78]进行了一项全面研究,分析各种模型压缩技术对推理能力的影响。他们的研究结果表明,量化能够将模型精度降低到低位表示,但仍能很好地保持推理性能,使SLMs在显著降低内存和计算成本的同时保持逻辑一致性和解决问题的能力。
相比之下,剪枝是基于权重或神经元的重要性来移除模型中特定的权重或神经元,这会导致推理质量严重下降,破坏模型遵循多步逻辑过程的能力。这表明,基于压缩的方法比从零开始训练SLMs更有效,因为它们允许模型保留从LLMs继承的推理结构。然而,仍存在一个关键挑战:SLMs通常在指令跟随方面表现不佳,表明仅仅依靠压缩是不够的。可能需要额外的微调或适应方法,以使压缩模型与用户意图对齐,并确保它们能够有效地解释和执行复杂的推理任务。
近期研究引入了创新的基准和评估框架,以系统性评估LLMs的推理能力。随着LLMs在执行复杂推理任务的能力不断提升,对严格、标准化的评估指标和框架的需求变得愈加重要。
推理时间计算。 [66] 开发了Sys2Bench,这是一个综合套件,旨在评估LLMs在五个推理类别上的表现,包括算术、逻辑、常识、算法和规划任务。该基准包含11个多样的数据集,涵盖各种推理任务。它包括用于算术问题的GSM8K和AQuA,常识推理的StrategyQA和HotPotQA,逻辑推理的ProntoQA,算法任务的Game of 24和Bin Packing,以及规划任务的BlocksWorld、Rubik’s Cube、TripPlan和Calendar Plan。研究表明,仅仅扩大推理时间计算存在局限性,因为没有单一技术在所有推理任务中始终表现优异,这强调了多样化方法在提升LLM推理能力中的必要性。[51] 检查了各种常用策略如何影响LLMs的推理能力。此外,他们提出了一个广泛的实验基准,涉及六种推理导向任务的推理时间优化技术。[52] 研究了测试时间缩放(TTS)策略对LLM性能的影响,重点关注政策模型、过程奖励模型和问题难度如何影响TTS的有效性。他们的研究结果表明,计算最优的TTS策略高度依赖于这些因素。论文发现,在适当的TTS策略下,更小的模型(例如,1B参数的LLM)能够在复杂推理任务(如MATH-500)上超越显著更大的模型(例如,405B参数的LLM),这突显了量身定制的TTS方法在评估和提升LLM推理方面的重要性。
评估过度推理。 [21] 引入一个框架,以系统性分析LLMs中的“过度推理”,即模型倾向于进行过度的内部推理,而不是必要的环境交互。通过检查4,018条轨迹,研究识别了分析瘫痪、错误行为和过早退出等模式。[21] 还提出了一种新颖的“过度推理评分”,并显示较高的评分与任务表现下降之间存在强相关性。选择低过度推理评分的解决方案等缓解策略可以提高性能30%,同时减少43%的计算开销。
长CoT推理的影响。 [104] 提供了对长CoT推理机制的全面分析。在呈现几个关键见解的基础上,他们提出了一种奖励设计,以增强训练期间推理能力的稳定性并减少CoT长度,这在第3.1节中也有提到。[39] 发现推理链的长度与模型输出的有效性之间存在强关系。模型在推理步骤较长时通常表现更好,表明CoT长度在有效问题解决中比准确性更为关键。
自主驾驶。 高效推理的LLMs能够大大改善自主驾驶技术 [22],帮助它们以类似人类的方式理解大量传感器数据,从而使汽车在复杂的驾驶情境中做出更好的决策,并在发生意外事件时快速反应。通过结合来自摄像头、激光雷达、雷达和其他传感器的信息,这些模型帮助汽车更安全地驾驶,选择更好的路线,并在发生风险时进行评估。此外,由于它们能够解释为何做出某些决策,这使得乘客和监管机构对这项技术更加信任,同时汽车也能更顺畅地与智能道路系统进行互动。
具身人工智能。 高效推理的LLMs使得具身人工智能 [27] 更加智能,帮助机器人和智能设备理解并对周围世界作出反应。这些模型以类似人类思维的方式处理来自摄像头、传感器和其他输入的大量数据。这种深入理解使得机器人能够迅速决定最佳移动方式,应对意外变化,并安全地与人进行互动。例如,在繁忙的工厂或家庭环境中,使用这些模型的机器人能够避开障碍物,适应新情况,甚至以简单的术语解释其行为。总体而言,高效推理的LLMs提升了具身人工智能系统在日常环境中的可靠性、安全性和实用性。
医疗保健。 高效推理的LLMs可以通过帮助医生和研究人员更容易地处理大量医疗数据来改善医疗保健 [36]。它们能够快速分析患者记录、检验结果和医学研究,发现可能很难察觉的重要趋势和模式。这种支持可以导致更快、更准确的诊断,更好的治疗建议,以及更少的错误。此外,这些模型可以将复杂的医学信息转化为通俗易懂的语言,使得医疗专业人员和患者更易于理解。总体而言,高效推理的LLMs使医疗过程更加顺畅和可靠,从而为患者提供更好的护理和结果。
提高推理能力。 从效率的另一角度来看,提高推理性能是一个重要话题 [11,80]。为了通过尽早剔除无效策略来优先考虑有前景的途径,Meta-Reasoner [80] 利用上下文多臂老虎机来评估推理进展和选择最佳策略。在每一轮中,LLM生成一个新的推理步骤,元推理器评估其输出并生成进度报告,利用上下文多臂老虎机选择推理步骤的最佳指导策略。ITT [11] 将每个变压器层视为内部思维过程中的一步。通过自适应路由动态分配额外处理能力给困难标记,ITT使得较小的语言模型能够在使用更少训练资源的情况下实现与较大模型相当的性能。
高效推理的安全性。 LLMs中的安全性和效率通常是相互对立的方向,因为优化一个往往会导致另一个的性能下降。在增强安全性时,例如过滤有害内容、减轻对抗攻击和实现自我修正,推理模型通常需要额外的计算资源和更长的推理序列,从而导致推理成本增加和响应时间延迟。相反,通过最小化标记使用和计算开销来优先考虑效率,可能会减少模型自我反思、验证输出或抵御对抗操控的能力。这种权衡反映了著名的“没有免费的午餐”原则,使得在安全性和效率之间保持谨慎的平衡至关重要。[42] 研究了大型CoT推理模型中安全检查的鲁棒性,揭示了商业系统中的严重安全缺陷。他们引入了恶意教育者基准,并展示了通过其劫持思维链(H-CoT)攻击,模型可以显著降低拒绝率,从而生成有害内容。[45] 研究了长推理模型的安全性。观察到虽然较长的输出能够实现自我修正并增强安全性,但某些攻击策略会利用扩展生成。他们提出了一种基于强化学习的方法动态控制输出长度,以保持推理质量和安全性。在长推理模型中平衡安全性和效率仍然是一个具有挑战性但至关重要的研究领域。
RL与SFT,哪个更好? 在比较RL(第3.1节)和SFT(第3.2节)以创建高效推理语言模型时,答案并不明确,因为每种方法各有优势。RL允许模型通过试错学习,根据满意的决策给予奖励,这有助于它找到在新情况下解决问题的创造性方法。然而,这种方法有时可能不可预测,并且需要大量训练。另一方面,SFT通过人类或模型精心选择的高效CoT示例来教导模型,导致更一致的行为和更容易控制。然而,当面临训练数据中未涵盖的挑战时,SFT可能会遇到困难。实际上,结合这两种方法可能是一个有前景的方向,潜在地最佳,因为它利用了RL的创造力和SFT的可靠性,从而产生一个既适应性强又稳定的模型。
本文提供了高效推理的首次结构化调查,将现有方法分为三类:基于模型的方法、基于推理输出的方法和基于输入提示的方法。此外,还讨论了高效数据利用、小型模型的推理能力、评估技术和基准测试,并附有持续更新的公共库以支持未来的研究。重要的是,高效推理的方法在各个领域提供了显著的实际利益:在医疗诊断中减少计算成本,在自主驾驶中增强实时决策和安全性,提升具身人工智能系统的可靠性和实用性,以及在金融算法交易和风险评估中实现更快、更有利的响应。这些进展突显了高效推理在大型语言模型中的广泛经济和社会价值。