note

  • 大模型推理过程和学生拿到试卷做题类似:用预填充(Prefill)通读全文,对用户的输入,建立整体理解用解码(Decoding)对应写做题,过程中,不断回顾已有信息,逐字生成回答
    • 大模型的「翻卷子」,叫做「KV Cache」,极度消耗内存带宽;
    • 大模型的「思考内容」,叫做「Attention 计算」,极度消耗内存计算资源
    • 大模型的「打草稿 & 写答案」,叫做「FFN(前馈网络) 和 Linear before&after Attention」
  • 投机采样是一种可以从根本上解码计算访存比的方法,保证和使用原始模型的采样分布完全相同。它使用两个模型:一个是原始目标模型,另一个是比原始模型小得多的近似模型。近似模型用于进行自回归串行采样,而大型模型则用于评估采样结果。解码过程中,某些 token 的解码相对容易,某些 token 的解码则很困难。
    • 因此,简单的 token 生成可以交给小型模型处理,而困难的 token 则交给大型模型处理。
    • 这里的小型模型可以采用与原始模型相同的结构,但参数更少,或者干脆使用 n-gram 模型。小型模型不仅计算量较小,更重要的是减少了内存访问的需求。
  • 传统投机解码[3,4,5]主要由串行草稿生成、并行草稿验证两个阶段组成。在每个时间步,小模型会先解码N步构建出N个草稿Token,之后将其交由大模型以类似预填充阶段的形式进行一次前向计算,并根据各个位置的模型输出进行并行验证。得益于自回归模型单向注意力机制的存在,这种提前验证的方式并不会影响正常文本的生成,且在验证通过的情况下可以实现内容上无损的加速效果
  • 主流投机解码方法:
    • 基于小模型的草稿构建方法:知识蒸馏、复用大模型信息以及小模型解码加速
    • 基于检索的草稿构建方法:稀疏检索方法和稠密检索方法两种。
    • 基于大模型的草稿构建方法:模型压缩方法、模型子结构方法以及并行解码方法。
  • 目前性能强劲的投机采样技术分别有MTP和Eagle3,但MTP其需要在预训练阶段与基础模型一起训练,限制了MTP在业界的广泛应用。而Eagle3作为一种训练后而集成的技术,很适合在已开源的超大尺寸模型上继续训练,而进一步提升推理效率。

一、自回归解码

1、Prefill和Decoding过程

当前的主流 LLM 基本都是 Decoder Only 的 Transformer 模型,其推理过程可以分为两个阶段:

(1)Prefill:根据输入 Tokens(Recite, the, first, law, of, robotics) 生成第一个输出 Token(A),通过一次 Forward 就可以完成,在 Forward 中,输入 Tokens 间可以并行执行(类似 Bert 这些 Encoder 模型),因此执行效率很高。

(2)Decoding:从生成第一个 Token(A) 之后开始,采用自回归方式一次生成一个 Token,直到生成一个特殊的 Stop Token(或者满足用户的某个条件,比如超过特定长度) 才会结束,假设输出总共有 N 个 Token,则 Decoding 阶段需要执行 N-1 次 Forward,这 N-1 次 Forward 只能串行执行,效率很低。另外,在生成过程中,需要关注的 Token 越来越多(每个 Token 的生成都需要 Attention 之前的 Token),计算量也会适当增大。

  • 大模型推理过程和学生拿到试卷做题类似:用预填充(Prefill)通读全文,对用户的输入,建立整体理解用解码(Decoding)对应写做题,过程中,不断回顾已有信息,逐字生成回答
    • 大模型的「翻卷子」,叫做「KV Cache」,极度消耗内存带宽;
    • 大模型的「思考内容」,叫做「Attention 计算」,极度消耗内存计算资源
    • 大模型的「打草稿 & 写答案」,叫做「FFN(前馈网络) 和 Linear before&after Attention」

2、现有方案的问题

极端一:为了省内存,把GPU累死
有些模型会压缩内部中间信息(比如 KV Cache),以减少显存占用。这确实节省了内存,但也让模型在每次访问这些信息时变得更复杂,访问速度更慢,延迟更高。整体推理效率下降,尤其在带宽受限的设备上更为明显。

极端二:为了省计算,让GPU吃不饱另一类模型为了节省计算资源,每次只启用很小一部分模块参与计算。虽然听起来更“省”,但因为剩下的硬件没有参与工作,资源被浪费,推理速度也不一定快,反而导致整体性价比变差。

3、投机解码的引入

在Prefilling阶段,模型通过多头注意力机制并行生成KV-Cache,其中主要涉及到矩阵乘矩阵操作,计算强度较大;而在Decoding阶段,由于自回归解码的机制大模型需要逐个Token的进行生成,借助KV-Cache后多头注意力机制的操作降级为了向量乘矩阵,计算强度较低。如图1所示,大量的向量乘矩阵操作使得大模型从Prefilling阶段的计算瓶颈转为了Decoding阶段的访存瓶颈,导致Decoding阶段的GPU算力利用率相对较低。
在这里插入图片描述
在这种情况下,为了充分利用冗余的算力,有两种自然的优化思路:
(1)通过将不同query组成batch进行推理来提高计算强度充分利用GPU算力;
(2)针对同一个query进行并行验证,实现一个时间步完成多步解码。而投机解码正是在第二种优化思路指导下提出的方法,其利用时延更低的小模型串行生成多步草稿,并交由大模型并行进行验证,通过冗余算力换取更快的推理速度,在用户请求少无法batch的端侧场景有很大的应用价值
在这里插入图片描述

传统投机解码[3,4,5]主要由串行草稿生成、并行草稿验证两个阶段组成。如图2(上图)所示,在每个时间步,小模型会先解码N步构建出N个草稿Token,之后将其交由大模型以类似预填充阶段的形式进行一次前向计算,并根据各个位置的模型输出进行并行验证。得益于自回归模型单向注意力机制的存在,这种提前验证的方式并不会影响正常文本的生成,且在验证通过的情况下可以实现内容上无损的加速效果。此外由于上文中提到的访存瓶颈原因,解码阶段的性能瓶颈不在平台算力而在于计算强度不够。在这种情况下,大模型在验证1个Token和N个Token时的时间差距不会太大,从而提供了利用并行验证实现推理加速的可能性。一旦草稿Token在大模型前向中通过验证,就可以实现在一个时间步解码多个Token的目标,进而加速自回归解码过程。

4、相关综述

在这里插入图片描述

图源自:Unlocking Efficiency in Large Language Model Inference: A Comprehensive Survey of Speculative Decoding

二、投机解码 Speculative Decoding

1、原理解释

大模型的投机采样(Speculative Sampling)就像是让一个小助手先去猜测接下来会发生什么,然后由大模型来验证这些猜测是否正确。如果猜测对了,就可以直接用这些结果,从而节省大模型自己一步步推理的时间。

具体过程是这样的:

  1. 小模型先猜:先用一个小模型(草稿模型)快速生成一批可能的“候选token”。
  2. 大模型验证:然后用大模型(主模型)一次性验证这些候选token是否符合它的预测。
  3. 对齐则接受,错了则回退:如果小模型猜对了,大模型就直接接受这些结果,省去了逐个生成的时间;如果猜错了,大模型会修正错误的部分。

这种机制可以显著减少大模型的推理步骤,提升推理速度,同时还能保证生成结果的质量。

投机解码过程举例:
(1)draft模型生成下面第一行,但中间的cooking错误
(2)target模型进行验证draft模型刚才先生成的几个token,发现cooking错误,于是改为playing

在这里插入图片描述

2、投机采样过程

Google 和 Deepmind 于 2022 年提出投机采样方案 Fast Inference from Transformers via Speculative Decoding,其思路很简单,使用一个高效的小模型来生成多个候选 Token,然后让 LLM 来验证。

在这里插入图片描述

假设 M p M_p Mp 为目标模型,模型推理就是给定前缀输入 x < 1 x_{<1} x<1 ,从模型获得对应的分布 p ( x t ∣ x c t ) p\left(x_{\mathrm{t}} \mid x_{\mathrm{ct}}\right) p(xtxct) ,要做的就是加速这个推理过程;假设 M q M_q Mq 为针对相同任务的更高效的近似模型,给定前缀输入 x e x_{\mathrm{e}} xe ,从模型可以获得对应的分布 q ( x t ∣ x e ) \mathrm{q}\left(\mathrm{x}_{\mathrm{t}} \mid \mathrm{x}_{\mathrm{e}}\right) q(xtxe) 。核心思想为:

a.使用更高效的模型 M q \mathrm{M}_{\mathrm{q}} Mq 来生成输出 r ∈ Z + r \in \mathbb{Z}^{+} rZ+个 Token
b.使用目标模型 M p \mathrm{M}_{\mathrm{p}} Mp 来并行的评估上一步 M q \mathrm{M}_{\mathrm{q}} Mq 生成的 Token,接受能够满足同一分布的 Token
c.从调整后的分布中生成一个额外的 Token(根据第一个出错 Token 之前的 Token 生成),来修复第一个出错的 Token,如果所有 Token 都被接受,则额外新增一个新生成的 Token,以此来保证每次至少生成一个新的 Token。这样,即使在最坏情况下,目标模型相当于完全串行运行,运行次数也不会超过常规模式直接串行运行目标模型的次数;当然,也很可能能够生成更多的 Token,最多可以达到 r + 1 r+1 r+1 ,这取决于 M p \mathrm{M}_{\mathrm{p}} Mp M q \mathrm{M}_{\mathrm{q}} Mq 的相似度。

如下图 Figure 5 所示,作者提供了一个简单的示例,包含不同的 r r r(验证的 Token 数目),其中紫色为执行目标模型 M p M_p Mp 的 decoder,蓝色为执行近似模型 M q M_q Mq 的 decoder,黄色和橙色为调用 encoder。
在这里插入图片描述

3、评估结果

作者基于 T5X 代码库验证了 T5-XXL 模型的加速效果。相关的设置如下:

  • 模型:标准的 encoder-decoder T5 1.1 版本模型
    a.目标模型 M p M_p Mp :T5-XXL(11B)
    b.近似模型 M q \mathrm{M}_{\mathrm{q}} Mq :T5-Large(800M),T5-Base(250M),T5-Small(75M)
  • 任务:
    a.英语到德语翻译,基于 WMT EnDe 数据集微调
    b.文本总结,基于 CCN/DM 数据集微调
  • 硬件:TPU-v4
  • 推理参数:
    • a.Batch-size: 1
    • b.Argmax sampling(temp=0)和 standard sampling(temp=1)

结果如下 Table 2 所示,最小的近似模型 T5-Small(75M)获得最高的加速比(模型很小,推理最快,而且模型生成质量相比 Base 模型没有下降太多, α \alpha α 表示高效模型的质量与目标模型的接近程
度)
,比如 T 5 − T 5- T5 Small 在 EnDe 任务上,当 temp = 0 =0 =0 时获得 3.4 倍加速,temp = 1 =1 =1 时获得 2.6 倍加速:
在这里插入图片描述

4、vllm在投机采样的加速优化

vllm的优化:优化调度器(使得能够同时生成和验证多个token)、优化内存管理器(处理draft模型和target模型的kv cache)
在这里插入图片描述

相关启动命令,这里是在speculative_config中设置method方法或者投机解码的草稿模型model

python -m vllm.entrypoints.openai.api_server \
    --host 0.0.0.0 \
    --port 8000 \
    --model facebook/opt-6.7b \
    --seed 42 \
    -tp 1 \
    --gpu_memory_utilization 0.8 \
    --speculative_config '{"model": "facebook/opt-125m", "num_speculative_tokens": 5}'

参考:
1、ngram在vllm源码中实现逻辑为KMP,是一个todo选项,参考:https://docs.vllm.ai/en/stable/api/vllm/v1/spec_decode/ngram_proposer.html?h=ngramproposer#vllm.v1.spec_decode.ngram_proposer.NgramProposer
2、投机解码:https://docs.vllm.ai/en/stable/features/spec_decode.html?h=speculativ

三、主流方法

1、基于小模型的草稿构建方法

基于小模型的草稿构建方法主要聚焦于小模型的结构设计与训练。这类方法的主要目标是获得一个与大模型分布更一致、推理时延更低的小模型用于草稿的高效准确生成。常见的优化思路有知识蒸馏、复用大模型信息以及小模型解码加速等。

(1)知识蒸馏

为了获取与目标大模型分布更加一致的草稿模型,研究人员尝试通过知识蒸馏的方法来提高生成草稿的接受率。DistillSpec[6]采用自生成数据采样以及针对投机解码任务定制的散度函数实现了成本与性能的权衡,显著提升了草稿模型与目标模型的一致性,进而实现更大的加速比。除了离线设定下的知识蒸馏,也有研究人员提出了在线更新草稿模型的推理框架Online SD[7],用于缓解推理场景下面临多样请求导致接受率较低的问题。如图3所示,Online SD能够通过知识蒸馏技术持续在线更新草稿模型,保证面对不同领域请求时均能保证较高的接受率,提高投机解码在实时环境下的高效性。
在这里插入图片描述
图3 Online Speculative Decoding框架示意图[7]

(2)复用大模型信息:Glide模型

相比仅依赖草稿模型本身完成草稿生成,一些研究[8]发现大模型本身的激活值中也隐藏着后续Token的信息,通过充分利用这些信息辅助草稿模型,能够显著提高二者间的一致性以及草稿Token的正确性。其中,Glide[9]通过复用目标大模型的KV-Cache信息实现了更加准确的草稿预测。其整体结构如图4所示,Glide草稿模型引入额外的Cross-Attenion层来复用大模型推理阶段的KV-Cache信息,通过特殊设计的注意力掩码进行训练,实现了更高的草稿接受率。除了复用KV-Cache,EAGLE[10]选择复用大模型最后一层的隐变量并共享Embedding以及LM-Head层,实现了包含单层注意力层的轻量草稿模型结构。通过精心设计的损失函数,EAGLE能够在推理阶段充分利用大模型的历史隐状态信息,在结合动态树验证[11]的设置下能够达到3~4倍的推理加速。

在这里插入图片描述
图4 Glide模型示意图[9]

(3)小模型解码加速

除了生成草稿Token的接受率以外,草稿模型本身的推理时延也是影响投机解码最终加速比的一个重要因素。相比提高草稿模型的准确率,也有一些工作致力于加速草稿模型本身的生成效率。传统投机解码框架中草稿模型依然采用自回归方式生成,因此一些工作利用级联投机的方式进一步加快草稿模型的生成速度。Cascade[12]通过水平和垂直级联来实现不同级别草稿模型的协同解码。整体流程如图5所示,水平级联使用能力更强的草稿模型生成重要的前缀草稿,对于后续正确率本身就较低的草稿采用更小的草稿模型快速生成;垂直级联采用更小的草稿模型来投机其他草稿模型,加速草稿构建的过程。Ouroboros[13]将检索式投机解码方法用于草稿模型的加速,在较大草稿模型的设置下取得了显著的效果。除了加速自回归形式的小模型以外,还有一些工作[5,14]采用非自回归生成的结构(如:文本扩散模型等)训练草稿模型,从根本上加速草稿的构建过程。
在这里插入图片描述
图5 Cascade解码过程示意图[12]

2、基于检索的草稿构建方法

相比于直接使用草稿模型根据全部上下文片段生成草稿,基于检索的投机解码方法仅利用较短的N-Gram级别上下文进行匹配完成草稿的构建。这类方法通常不需要显式的草稿模型以及额外的训练,其主要假设为当前解码的片段的模式一定在相关上下文以及语料库中出现过。虽然检索类方法构建的草稿准确率相对较低,但得益于其较低的草稿构建成本以及即插即用的特性,依然能在广泛的任务上取得不错的加速效果。根据检索采用的方式,可以将这类方法分为稀疏检索方法和稠密检索方法两种。

(1)稀疏检索方法:如n-gram模型

稀疏检索方法通常通过将当前上下文的前缀Gram与知识库进行匹配来实现草稿的快速构建,其主要挑战集中在如何高效地构建和维护这一文本知识库。受启发于同一请求中的文本重复出现的可能性更大这一现象(如图6所示),一些研究人员[15]选择直接将当前上下文的前文作为知识库进行匹配,在一些强输入相关的任务(如:文本摘要、代码修复等)上取得了显著的加速效果。为了追求在更多广泛任务上的加速效果,REST[16]通过将现有文档预处理成可以直接进行前缀查询的知识库,在推理阶段利用树状验证实现更鲁邦的加速效果。然而,这类方法通常需要占用大量的存储空间。为了进一步降低检索的成本,研究人员采用了各类数据结构形式(N-Gram模型[17,18,19],前缀树[20],后缀树[21,22]等等)来实现高效的知识库构建与查询。特别的,Token Recycling[23]通过复用大模型验证失败的输出结果,在较低存储需求的同时,实现了比肩基于模型的投机解码方法的草稿接受长度。
在这里插入图片描述
图6 同一上下文中经常出现的重复Gram片段现象[15]

(2)稠密检索方法

虽然透过稀疏检索能够召回大部分的正确草稿,但对于高频前缀来说将其后缀草稿全部进行验证并不可能。而仅仅通过Gram匹配并没有办法实现对正确的候选草稿进行上下文相关的排序。因此一些研究人员考虑通过模型自身的一些隐状态作为键值用于检索结果的排序,根据向量相似度实现更加准确的草稿构建。如图7所示,NEST[24]通过大模型最后一层隐变量作为键值,利用向量内积作为相似度实现了更加精准的上下文匹配。除了最后一层的隐变量以外,PLD+[25]在传统稀疏检索的基础对模型的不同激活值(注意力分数等)指导下的稠密检索进行了详细的分析。此外,为了解决稠密数据库占用内存更大的问题,DReSD[26]利用PCA对稠密向量进行了适当降维压缩,能够有效降低稠密数据库的存储占用问题。

在这里插入图片描述
图7 NEST方法通过稠密检索构建草稿的示意图[24]

3、基于大模型的草稿构建方法

基于大模型的草稿构建方法强调一个模型的概念,利用大模型本身或者其子结构来实现草稿的生成。相比于独立的小模型,利用大模型本身生成草稿通常具备更高的一致性,但同样需多时间来生成草稿。现有的工作尝试在这二者之间找到一个平衡点来实现推理加速。根据大模型的利用方法,可以将这类方法分为:模型压缩方法、模型子结构方法以及并行解码方法。

(1)模型压缩方法

为了获取一个更加轻量级且与大模型分布一致的草稿模型,除了重新训练一个小模型外,一种更加直接的思路是对当前的大模型进行压缩。为了更加便捷地获取草稿模型,一些研究人员致力于将传统模型压缩(量化,剪枝等)的思路应用在草稿模型构建上。QSpec[27]采用量化后的大模型作为草稿模型进行投机解码,无需额外的训练即可快速部署使用。除此量化以外,也有一些工作借鉴结构化剪枝的思想实现草稿模型快速构建,Self-SD[28]利用了大模型不同层的冗余性,通过跳层的方式实现了高效的草稿自生成与并行验证,适配于各类Transformer架构的模型。LayerSkip[29]将模型的早退结果作为草稿Token,通过设计早退损失进行持续预训练(如图8所示),不但提升了草稿的质量,而且进一步提升了模型的鲁棒性。

在这里插入图片描述

图8 LayerSkip方法用于投机解码的示意图[29]

(2)模型子结构方法

在模型隐藏层中包含未来Token信息这一假设下,一些工作通过额外训练一些模型子结构作为大模型的挂件实现高效的草稿预测。相比利用大模型信息的草稿小模型,这类子结构与大模型的联系更加紧密,有些甚至参与到大模型自身的损失回传中,起到缓解自回归模型训练中Teacher-forcing带来的短视问题。受Seq2Seq时期的Blockwise Parallel Decoding[30]的启发,Medusa[8]为预测不同时间步(如:预测Next-Next-Token)的Token分别训练了不同的LM-Head(如图9所示),在推理阶段采用其结果的笛卡尔乘积配合稀疏树状验证实现了可观的加速比。相比于Medusa在训练时对大模型本身参数进行冻结,Meta[31]将多token预测作为预训练任务重头训练了多个不同规模的大模型,发现这一任务在实现推理阶段加速的同时,对模型本身的性能也有一定提升。类似的,DeepSeekV3[32]在预训练阶段同样加入了多Token预测出(MTP)任务。不同的是,其设计预测头不再是简单的FFN模块,而是采取了与EAGLE更加相似的单层注意力层结构。

在这里插入图片描述
图9 Medusa不同LM-Head的结构示意图[8]

(3)并行解码方法

相比其他投机解码范式下的方法,还有一类方法利用大模型本身的多步迭代来实现草稿的逐步生成,如图10所示。这种类似高斯-赛德尔迭代法的并行解码方式也被称为是Jacobi解码。为了进一步增强现有自回归模型的Jacobi解码能力,CLLMs[34]通过构建Jacobi迭代的轨迹进行针对性后训练,在不损失模型性能的同时显著提升模型的Jacobi解码速度。除此之外,MSN框架[35]将Jacobi解码的过程看作是一种去噪过程,通过在SFT阶段融入因果去噪任务在获取下游任务性能的同时兼顾去噪能力,显著增强Jacobi解码的效率。这类并行解码方法在不依赖额外模型架构的同时,能够做到比肩现有基于模型的投机解码方法的性能,有着广泛的应用前景。
在这里插入图片描述
图10 Jacobi解码方式示意图[33]

四、FastMTP推理加速

【大模型推理加速方案进展】FastMTP加速思路,思路是“共享权重单头+自蒸馏训练+词汇压缩”,开源代码:https://github.com/Tencent-BAC/FastMTP, 模型权重:https://huggingface.co/TencentBAC/FastMTP , modelscope:https://modelscope.cn/models/TencentBAC/FastMTP . 论文链接:https://github.com/Tencent-BAC/FastMTP/blob/main/FastMTP_technical_report.pdf。使用方式就是,假如你有一个大模型,先用FastMTP进行微调训练【只微调MTP头】,得到一个新的checkpoint,然后再用其他推理框架,如sglang进行推理。是个加速策略,但是有微调成本

五、未来展望

  • 自适应长度的草稿构建:随着现有草稿模型的不断发展,投机解码阶段验证通过的草稿长度也有所提升,如何选择合适的草稿长度超参变得尤为重要。较少的草稿预算影响接受长度,较大的预算则会导致草稿模型时延增加。现有的动态长度方法主要采用启发式规则或额外的可学习预测头结构,在泛化性以及准确性上依然有一定提升空间。
  • 更加灵活的草稿验证方法:现有的投机解码为了保证无损加速,通常采用较为严格的验证方式,这严重影响了投机解码的加速上限。针对一些较强的草稿模型(如:7B&70B的配置),生成的草稿在不一致的情况下未必存在错误,需要采用一些更加灵活的验证方式来进一步提升现有方法的加速比。
  • 在更加广泛模态上的应用:现有的投机解码方法研究主要集中在文本生成领域,在其他采用自回归解码的任务(图像生成,语音生成以及动作生成等)上的相关研究还比较少。研究如何将投机解码方法有效迁移到其他模态生成任务上有着很大的研究价值。

Reference

[1] 打通投机采样最后一公里!SGLang联合美团技术团队开源投机采样训练框架
[2] Fast Inference from Transformers via Speculative Decoding
[3] Accelerating large language model decoding with speculative sampling
https://zhuanlan.zhihu.com/p/651359908
[4] 大模型推理妙招—投机采样(Speculative Decoding)
[5] 万字综述 10+ 种 LLM 投机采样推理加速方案
[6] Unlocking Efficiency in Large Language Model Inference: A Comprehensive Survey of Speculative Decoding
[7] Step-3推理系统:从PD分离到AF分离(AFD)
[8] Step-3 发布:包括发布会上没说的,都在这了
[9] Step-3系统方向的tech report: https://github.com/stepfun-ai/Step3/blob/main/Step3-Sys-Tech-Report.pdf
[10] 赛尔笔记|投机解码:解锁自回归推理速度上限
[11] 抢先 Qwen Next?腾讯自研 FastMTP 重磅开源:推理速度暴涨 203%,消费级显卡也能跑出无损速度翻倍!

主流方法的Reference:
[1] Zhou Z, Ning X, Hong K, et al. A survey on efficient inference for large language models[J]. arXiv preprint arXiv:2404.14294, 2024.
[2] Xia H, Yang Z, Dong Q, et al. Unlocking efficiency in large language model inference: A comprehensive survey of speculative decoding[J]. arXiv preprint arXiv:2401.07851, 2024.
[3] Leviathan Y, Kalman M, Matias Y. Fast inference from transformers via speculative decoding[C]//International Conference on Machine Learning. PMLR, 2023: 19274-19286.
[4] Chen C, Borgeaud S, Irving G, et al. Accelerating large language model decoding with speculative sampling[J]. arXiv preprint arXiv:2302.01318, 2023.
[5] Xia H, Ge T, Wang P, et al. Speculative decoding: Exploiting speculative execution for accelerating seq2seq generation[J]. arXiv preprint arXiv:2203.16487, 2022.
[6] Zhou Y, Lyu K, Rawat A S, et al. Distillspec: Improving speculative decoding via knowledge distillation[J]. arXiv preprint arXiv:2310.08461, 2023.
[7] Liu X, Hu L, Bailis P, et al. Online speculative decoding[J]. arXiv preprint arXiv:2310.07177, 2023.
[8] Cai T, Li Y, Geng Z, et al. Medusa: Simple llm inference acceleration framework with multiple decoding heads[J]. arXiv preprint arXiv:2401.10774, 2024.
[9] Du C, Jiang J, Yuanchen X, et al. Glide with a cape: A low-hassle method to accelerate speculative decoding[J]. arXiv preprint arXiv:2402.02082, 2024.
[10] Li Y, Wei F, Zhang C, et al. Eagle: Speculative sampling requires rethinking feature uncertainty[J]. arXiv preprint arXiv:2401.15077, 2024.
[11] Li Y, Wei F, Zhang C, et al. Eagle-2: Faster inference of language models with dynamic draft trees[J]. arXiv preprint arXiv:2406.16858, 2024.
[12] Chen Z, Yang X, Lin J, et al. Cascade speculative drafting for even faster llm inference[J]. Advances in Neural Information Processing Systems, 2024, 37: 86226-86242.
[13] Zhao W, Huang Y, Han X, et al. Ouroboros: Generating Longer Drafts Phrase by Phrase for Faster Speculative Decoding[J]. arXiv preprint arXiv:2402.13720, 2024.
[14] Christopher J K, Bartoldson B R, Ben-Nun T, et al. Speculative diffusion decoding: Accelerating language generation through diffusion[J]. arXiv preprint arXiv:2408.05636, 2024.
[15] Yang N, Ge T, Wang L, et al. Inference with reference: Lossless acceleration of large language models[J]. arXiv preprint arXiv:2304.04487, 2023.
[16] He Z, Zhong Z, Cai T, et al. Rest: Retrieval-based speculative decoding[J]. arXiv preprint arXiv:2311.08252, 2023.
[17] Fu Y, Bailis P, Stoica I, et al. Break the sequential dependency of llm inference using lookahead decoding[J]. arXiv preprint arXiv:2402.02057, 2024.
[18] Ou J, Chen Y, Tian W. Lossless acceleration of large language model via adaptive n-gram parallel decoding[J]. arXiv preprint arXiv:2404.08698, 2024.
[19] Liu X, Lei B, Zhang R, et al. Adaptive draft-verification for efficient large language model decoding[J]. arXiv preprint arXiv:2407.12021, 2024.
[20] Zhao Y, Xie Z, Liang C, et al. Lookahead: An inference acceleration framework for large language model with lossless generation accuracy[C]//Proceedings of the 30th ACM SIGKDD Conference on Knowledge Discovery and Data Mining. 2024: 6344-6355.
[21] Hu Y, Wang K, Zhang X, et al. SAM Decoding: Speculative Decoding via Suffix Automaton[J]. arXiv preprint arXiv:2411.10666, 2024.
[22] Oliaro G, Jia Z, Campos D, et al. SuffixDecoding: A Model-Free Approach to Speeding Up Large Language Model Inference[J]. arXiv preprint arXiv:2411.04975, 2024.
[23] Luo X, Wang Y, Zhu Q, et al. Turning Trash into Treasure: Accelerating Inference of Large Language Models with Token Recycling[J]. arXiv preprint arXiv:2408.08696, 2024.
[24] Li M, Chen X, Holtzman A, et al. Nearest neighbor speculative decoding for llm generation and attribution[J]. Advances in Neural Information Processing Systems, 2024, 37: 80987-81015.
[25] Somasundaram S, Phukan A, Saxena A. PLD+: Accelerating LLM inference by leveraging Language Model Artifacts[J]. arXiv preprint arXiv:2412.01447, 2024.
[26] Gritta M, Xue H, Lampouras G. DReSD: Dense Retrieval for Speculative Decoding[J]. arXiv preprint arXiv:2502.15572, 2025.
[27] Zhao J, Lu W, Wang S, et al. QSpec: Speculative Decoding with Complementary Quantization Schemes[J]. arXiv preprint arXiv:2410.11305, 2024.
[28] Zhang J, Wang J, Li H, et al. Draft & verify: Lossless large language model acceleration via self-speculative decoding[J]. arXiv preprint arXiv:2309.08168, 2023.
[29] Elhoushi M, Shrivastava A, Liskovich D, et al. LayerSkip: Enabling early exit inference and self-speculative decoding[J]. arXiv preprint arXiv:2404.16710, 2024.
[30] Stern M, Shazeer N, Uszkoreit J. Blockwise parallel decoding for deep autoregressive models[J]. Advances in Neural Information Processing Systems, 2018, 31.
[31] Gloeckle F, Idrissi B Y, Rozière B, et al. Better & faster large language models via multi-token prediction[J]. arXiv preprint arXiv:2404.19737, 2024.
[32] Liu A, Feng B, Xue B, et al. Deepseek-v3 technical report[J]. arXiv preprint arXiv:2412.19437, 2024.
[33] Santilli A, Severino S, Postolache E, et al. Accelerating transformer inference for translation via parallel decoding[J]. arXiv preprint arXiv:2305.10427, 2023.
[34] Kou S, Hu L, He Z, et al. Cllms: Consistency large language models[C]//Forty-first International Conference on Machine Learning. 2024.
[35] Wang Y, Luo X, Wei F, et al. Make Some Noise: Unlocking Language Model Parallel Inference Capability through Noisy Training[J]. arXiv preprint arXiv:2406.17404, 2024.

Logo

火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。

更多推荐