返回资讯中心
外部精选
软件工程
#开发者实时流

LeapQuant:免训练将线性注意力循环状态量化为8位,推理最高提速3.7倍

来源标题:LeapQuant: Efficient Linear Attention with Accurate Recurrent State Quantization

LeapQuant提出一种免训练方法,将线性注意力的循环状态量化为8位,模型质量接近无损。在NVIDIA B200、RTX PRO 6000和RTX 5090上,其精度与FP32基线相当,内核层面平均加速2.05–3.70倍,端到端推理加速1.57倍。该方法针对Qwen、Kimi、GLM等模型家族中使用的线性注意力(如Gated DeltaNet、Kimi Delta Attention),缓解循环状态带来的显存带宽与容量开销。

Hacker News 最新matt_d2026/11/12 · 今天10 分钟阅读

以下正文由 AI 翻译自 Hacker News 最新(原文版权归原站所有),可能存在偏差,重要内容请以原文为准。

LeapQuant 是一种无需训练的方法,它将线性注意力的循环状态量化为 8 位,同时保持近乎无损的模型质量。其精度与 FP32 基线相当,在 NVIDIA B200、RTX PRO 6000 和 RTX 5090 GPU 上,内核级别平均加速 2.05–3.70 倍,端到端推理加速 1.57 倍。

近期 Qwen、Kimi 和 GLM 模型系列中的 LLM 用线性注意力替代了许多标准注意力层,例如 Gated DeltaNet(GDN)和 Kimi Delta Attention(KDA)。线性注意力将上下文压缩为固定大小的循环状态,从而降低了长上下文处理的成本。

然而,循环状态仍然带来大量的内存带宽和容量开销。对于每个生成的 token,线性注意力层都要从 HBM 加载其状态,应用轻量级更新,然后再写回,因此解码受限于内存带宽。当启用前缀缓存时,状态还会占据 GPU 内存的很大一部分,因为服务系统会为每个缓存的 prefix 保留一个单独的状态。

(a) 线性注意力在解码时间中占据很大比例。(b) 在前缀缓存下,循环状态占据大量 GPU 内存。

量化循环状态是减少内存流量和占用空间的自然方法,但可能显著降低模型质量。状态在每个解码步骤都会循环更新,因此每次量化引入的舍入误差都会被带入之后的所有状态,并在长上下文中累积。此外,状态中包含离群的行和列,它们会扩大量化范围,迫使较小的值落入粗糙的量化级别,从而放大每次量化的误差。

因此,精确的低位量化需要同时减少误差引入的频率以及每次量化引入的误差量。LeapQuant 通过三种无需训练的技术同时解决这两个问题。

为限制误差累积,LeapQuant 在再次量化状态之前跳过一段 token 窗口。在每个窗口开始时,LeapQuant 以低精度存储循环状态。在窗口内,它保持该状态固定,缓冲更高精度的 token 更新,并根据固定状态和缓冲的更新计算每个输出。只有在窗口结束时,它才重建并量化完整的更新后状态,供下一个窗口使用,因此量化误差引入的频率大大降低。

为减少每次量化的误差,LeapQuant 以几个 Compensator Token 的形式高精度捕获状态中最大的离群值。每个 Compensator Token 是两个向量的高精度外积,捕获跨行和列的大幅值模式,并留下更容易量化的残差。由于这些秩一项与真实 token 更新具有相同的形式,LeapQuant 将它们直接纳入窗口的更新路径,仅使用几个额外的向量,无需单独的状态更新。

移除 Compensator Token 后,残差在关键通道上仍可能存在不均匀的幅值,少数大通道可能主导量化尺度。LeapQuant 在量化前对残差进行平滑,以平衡其行幅值。平滑尺度在每个窗口内保持固定,并在每个窗口边界重新计算。在 Qwen3.5-9B 的一个 head 中,Compensator Token 和平滑将离群值从中位幅值的 176 倍降低到 5.3 倍。

我们在 Qwen、Kimi 和 GLM 系列的模型上评估了 LeapQuant。在 8 位下,LeapQuant 达到了与 FP32 基线相当的精度,同时将状态内存流量减少 3.4 倍,端到端内存占用最多减少 56%。

在 AIME 2026、BeyondAIME、GPQA-Diamond 和 LiveCodeBench v6 上的下游准确率(%,越高越好,三次种子平均)。朴素的 FP8/INT8 状态量化在 Qwen3.5-9B 上崩溃,甚至 BF16 平均也损失 11.5 分,而 LeapQuant 在 8 位和 6 位下与 FP32 持平,在 4 位下差距在 3.4 分以内。

正文由 探How 从来源站点 RSS 同步,内容未经改写;遇到排版缺失或需要图片、视频时请以原文为准。

打开原文
去社区讨论 →