溢出:高效的语言模型解码两阶段模型.pdfVIP

  • 0
  • 0
  • 约3.98万字
  • 约 17页
  • 2026-03-06 发布于北京
  • 举报

溢出:高效的语言模型解码两阶段模型.pdf

PublishedasaconferencepaperatCOLM2025

溢出:高效的语言模型解码两阶段模型

WoojeongKim,JunxiongWang,JingNathanYan,MohamedAbdelfattah,

AlexanderM.Rush

CornellUniversity

{wk247,jw2544,jy858,Mohamed,arush}@

Abstract

大型语言模型(LLMs)在各种任务中表现出色,但由于推理成本高昂而面

临显著的部署挑战。LLM推理包括预填充(计算密集型)和解码(内存密

集型)阶段,解码尤其对于长序列占据主要延迟时间。当前的仅解码器模型

本在处理这两个阶段时采取统一的方法,尽管它们具有不同的计算特征。我

们提出了OverFill,它将这些阶段分离以优化准确性和效率之间的权衡。

译OverFill首先使用完整模型进行预填充,同时处理系统和用户输入。然后切

中换到密集修剪的模型,并按顺序生成标记。通过在预填充期间利用更多计

算资源,OverFill在几乎不增加延迟的情况下提高了生成质量。我们的3B

1

v到1BOverFill配置比1B修剪模型高出83.2%,而8B到3B的配置在标

6准基准测试中平均超过3B修剪模型79.2%。OverFill匹配了从头开始训

4

4练的同规模模型性能,同时使用了显著较少的训练数据。我们的代码可在

8/friendshipkim/overfill获取。

0

.

8

01介绍

5

2

:大型语言模型(LLMs)在广泛的任务上取得了显著的成功,从问答到代码生成。然而,它

v们庞大的参数数量给实际部署带来了重大挑战,推理成为主要瓶颈。在现代LLMs中,推

i

x理通常包括两个阶段:预填充和解码。预填充阶段,在此所有输入标记并行处理以构建键

r

a值(KV)缓存,通常是计算密集型:性能主要受限于计算单元的利用率。随后的解码阶段

是内存绑定,在此它自回归地生成每个输出标记。这里的主瓶颈是反复将模型的大规模前馈

(FFN)层加载到内存中。

然而,当前的LLM架构并未利用这两个阶段不同的计算特性。我们的动机源于预填充和

解码阶段截然不同的计算特征,这导致了将它们分离的趋势日益增长。第一类工作(Zhong

etal.,2024;Pateletal.,2024)是系统导向的,专注于针对不同阶段的具体资源分配和平

行处理,同时仍在两个阶段中使用同一模型。第二类工作(算法导向)(Nairetal.,2024;

Bergneretal.,2024)探索为每个阶段使用大小不同的模型,但通常需要复杂的框架或只能

带来很小的准确性改进。感兴趣的问题是如何解耦预填充和解码阶段以实现更高的准确性

和效率平衡。

我们提出了一种名为溢出的两阶段系统,该系统将最大容量专用于预填充阶段,同时修剪昂

贵的解码阶段以减少参数加载。具体来说,较大的模型仅用于一次处理用户输入并生成向量

表示,随后一个较小且经过修剪的模型依次负责逐个标记的生成。因此,OverFill极大地减

少了解码所需的内存占用和延迟,特别是

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档