![]()
作者 | Zhongzhu Zhou, Donglin Zhuang, Jisen Li, Ziyan Chen, Shuaiwen Leon Song, Ben Athiwaratkun, Xiaoxia Wu
從 KV Cache 瓶頸說起
長上下文模型的能力還在往前走,但在線推理服務(wù)遇到的壓力,很多時候已經(jīng)不只是計算量本身。每生成一個新 token,系統(tǒng)都要反復訪問越來越長的歷史 Key 和 Value;上下文拉長、batch 放大之后,KV Cache 同時吞掉顯存容量和顯存帶寬。最新論文 OSCAR: Offline Spectral Covariance-Aware Rotation for 2-bit KV Cache Quantization 直接瞄準這個痛點,給出了一套面向長上下文 serving 的近 2-bit KV Cache 方案,并且已經(jīng)接入 SGLang,可用于真實服務(wù)鏈路。相比之前量化的工作,比如 TurboQuant ,壓縮的是向量,但忽略了真正影響模型的是 attention 的質(zhì)量, OSCAR 保留的是 attention 真正會讀的方向。 樸素 INT2 和全模型層的 3-bit K/V TurboQuant 都會在困難推理任務(wù)上明顯掉分;OSCAR 在約 2.28 effective bits per KV element 下仍能接近 BF16,并在 Qwen3-4B-Thinking 上相對 3-bit K/V TurboQuant 最高提升 40.1 分。
如果歷史 KV 能穩(wěn)定壓到 2-bit,理論上歷史緩存的存儲開銷可以接近縮小 8 倍。不過,低比特 KV Cache 真正困難的地方從來不是“能不能壓”,而是壓縮之后模型推理質(zhì)量不能塌,系統(tǒng)實現(xiàn)也不能停留在離線實驗?zāi)_本里。OSCAR 的價值正是在這兩個問題上同時給出了答案。
2-bit INT 只有 4 個離散等級,而 KV activation 里經(jīng)常會出現(xiàn)少量幅值很大的 outlier channel。一旦量化尺度被這些極端通道牽著走,大部分正常值就會擠在很窄的有效區(qū)間內(nèi),attention 分布也隨之偏移。普通 Hadamard 旋轉(zhuǎn)可以把 outlier 打散,卻沒有區(qū)分模型在 attention 里真正使用的方向。OSCAR 的核心思路是:不要只追求還原 K/V 向量本身,而要盡量保住 attention 消費這些 KV 的方式。
從這個角度看,TurboQuant 等方法更偏向于把向量表示壓得更緊;OSCAR 則把目標進一步對準 attention 質(zhì)量本身。樸素 INT2 和全層 3-bit K/V 的 TurboQuant 在難推理任務(wù)上會出現(xiàn)明顯掉分,而 OSCAR 在約 2.28 effective bits per KV element 的預(yù)算下依然能接近 BF16,并且在 Qwen3-4B-Thinking 上相比 3-bit K/V TurboQuant 最高提升 40.1 分。
OSCAR 的動機
![]()
圖 1:只用 K/V 重建誤差判斷低比特效果,容易看漏真正的誤差傳播
圖 1 把 naive INT2、Hadamard-only、clip-only 和 OSCAR 放在同一條誤差鏈路里比較。它想說明的是,原始 K/V 的重建誤差并不能充分預(yù)測最終生成質(zhì)量。更直接影響模型表現(xiàn)的,是 attention-score KL、attention block output MSE,以及這些偏差繼續(xù)傳到后續(xù) hidden state 后形成的誤差。OSCAR 的優(yōu)勢并不只是讓數(shù)值分布看起來更平滑,而是把量化噪聲盡量推到 attention 相對不敏感的方向上。
OSCAR 的設(shè)計
具體到 key,量化誤差會通過 QK? 進入 attention logits,所以 OSCAR 使用 query covariance,也就是 Q?Q,來決定 key 的旋轉(zhuǎn)目標。對于 value,誤差會先被注意力權(quán)重加權(quán),再進入 attention 輸出,因此 OSCAR 采用 score-weighted value covariance,即 V?S?SV。離線校準時,系統(tǒng)用少量樣本估計這些 attention-aware covariance,并為每一層、每一個 head 生成固定旋轉(zhuǎn)矩陣和 clipping 閾值
最終旋轉(zhuǎn)可以寫成 R = U · Hadamard · bit-reversal。其中,U 用來對齊 attention 相關(guān)方向,Hadamard 負責把 outlier 能量攤開,bit-reversal 則讓 INT2 分組更加均衡,避免某個 group 被少數(shù)通道主導。也就是說,OSCAR 不是簡單地“加一個旋轉(zhuǎn)”,而是把旋轉(zhuǎn)、裁剪和分組都放進了 attention 質(zhì)量這個目標函數(shù)里。
更關(guān)鍵的是,OSCAR 并不是只在離線量化評測里報告分數(shù)。它已經(jīng)進入 SGLang 的服務(wù)路徑,在運行時維護一個三段式 token pool:
BF16 sink (64 tokens) | INT2 history | BF16 recent (256 tokens)
sink token 和 recent window 繼續(xù)用 BF16 保存,用來保護 attention sink 與最近上下文;中間占比最大的歷史段則保存為旋轉(zhuǎn)后的 INT2。新 token 會先寫入 recent window,隨著解碼向前推進,最老的 recent token 再由融合 Triton kernel 完成 rotate、clip、quantize 和 pack,并降級進入 INT2 history。存儲上,每 4 個 2-bit 數(shù)值被打包進 1 個 byte。
decode 階段,OSCAR 在 GPU 上分別處理 BF16 段和 INT2 段:INT2 kernel 負責 unpack、scale/zero point 反量化以及浮點累加,BF16 kernel 處理 sink/recent,最后再通過 online softmax merge 合并兩部分結(jié)果。由于它兼容 paged KV、radix prefix cache 和 SGLang 的 fused kernel pipeline,所以 OSCAR 面向的是可落地的長上下文 workload,而不是只展示論文曲線。
![]()
圖 2:OSCAR 從離線校準到在線推理的整體鏈路
圖 2 展示了這條 pipeline 的完整路徑。左側(cè)是校準階段:系統(tǒng)從少量樣本中估計 attention-aware rotation 和 clipping threshold,讓 KV activation 在進入 INT2 之前更適合低比特表示。右側(cè)是在線階段:sink/recent 保留 BF16,中間最長的 history KV 進入旋轉(zhuǎn)后的 INT2 cache,并在 SGLang paged KV 體系里完成真實 serving。換句話說,OSCAR 不是一個孤立量化技巧,而是一整套 2-bit KV Cache 服務(wù)方案。
評估結(jié)果
論文在 Qwen3-4B-Thinking、Qwen3-8B、Qwen3-32B 和 GLM-4.7-FP8 上做了測試,任務(wù)覆蓋 GPQA、HumanEval、LiveCodeBench v6、AIME25 和 MATH500,最長生成長度達到 32K,并且每個配置運行 5 次取平均。OSCAR 在 2.28 BPE 下,Qwen3-4B-Thinking 距離 BF16 只差 3.78 分,Qwen3-8B 距離 BF16 只差 1.42 分;到 Qwen3-32B 和 GLM-4.7-FP8 時,整體表現(xiàn)已經(jīng)基本貼近 BF16。
對照組的情況要殘酷得多:QuaRot-INT2 和 naive INT2 在 reasoning / coding 任務(wù)上經(jīng)常直接失效;TurboQuant 在全層 3-bit K/V、沒有 mixed-precision 保護的公平設(shè)置下,小模型推理分數(shù)也有明顯損失。論文還在 128K 長上下文下做了 RULER-NIAH 測試,OSCAR 在 Qwen3-8B 與 GLM-4.7-FP8 上都保持了更穩(wěn)定的檢索能力,說明 attention-aware rotation 不只適用于短 benchmark,也能緩解超長歷史中 KV 誤差逐步累積的問題。
系統(tǒng)層面的收益同樣直接。相較 BF16 history storage,OSCAR 可以把 KV Cache memory 壓低約 8 倍;在 100k context、batch-size-1、full prefix-cache hit 的設(shè)置下,decode 最高約 3 倍加速;在大 batch 且顯存預(yù)算固定時,job-level throughput 最高約 7 倍。prefix cache 命中率越高,更小的 KV footprint 就越能轉(zhuǎn)化為并發(fā)吞吐,這對共享系統(tǒng)提示、多輪 Agent 和工具調(diào)用循環(huán)等長前綴復用場景很有意義。
精度表現(xiàn)
![]()
圖 3:主結(jié)果表,多種 KV 量化方法在同一評測設(shè)置下對比
![]()
圖 4:AIME25 32K 生成場景下,OSCAR 與 KIVI / Kitty 的專項比較
圖 3 是論文的核心結(jié)果表,把 BF16、Saw-INT4、TurboQuant、QuaRot-INT2、Naive INT2 和 OSCAR 放在四個模型、五個任務(wù)上比較。BF16 作為精度上界;Saw-INT4 是 4-bit 強參考,BPE 為 4.25;TurboQuant 在這里采用無 mixed-precision 保護的全層 3-bit K/V,BPE 為 3.25;QuaRot-INT2 與 Naive INT2 則代表接近 2-bit 的旋轉(zhuǎn)基線和樸素基線,BPE 約為 2.25;OSCAR 的運行預(yù)算為 2.28 BPE。
這張表真正要看的不是某一個任務(wù)的波動,而是低比特方案能否跨模型穩(wěn)定工作。以 Qwen3-4B-Thinking 為例,TurboQuant mean 為 31.74,QuaRot-INT2 只有 1.40,Naive INT2 為 0.00;OSCAR 達到 71.86,距離 BF16 只差 3.78,并且比 TurboQuant 高 40.1 分。在 Qwen3-8B 上,OSCAR mean 為 69.42,BF16 為 70.84,TurboQuant 為 56.88。到了 Qwen3-32B 和 GLM-4.7-FP8,OSCAR 與 BF16 基本持平。
圖 4 專門看 AIME25 這個高難數(shù)學推理任務(wù),同時加入 KIVI-KV2、Kitty 和 OSCAR 的對比。由于 KIVI 和 Kitty 沒有可直接用于 long context run 的 framework 支持,論文選取了它們唯一在 32K 下匯報的 AIME25 結(jié)果。在 Qwen3-8B 上,OSCAR 以 2.38 BPE 達到 66.67,幾乎追平 BF16 的 66.00,并明顯高于 KIVI-KV2 與 Kitty;在 Qwen3-32B 上,OSCAR 達到 74.00,略高于 BF16 的 72.59,也超過 Kitty 的 69.26。這說明 OSCAR 的優(yōu)勢不只體現(xiàn)在與 TurboQuant 的比較中,在現(xiàn)有 KV-cache 量化方法里,它也能以接近 2-bit 的預(yù)算守住困難數(shù)學推理能力。
系統(tǒng)加速
![]()
圖 5:100k 長上下文下的 decode 加速與 batch throughput
圖 5 關(guān)注 100k 上下文時的系統(tǒng)性能。在 batch-size-1 且 full prefix-cache hit 的純 decode 場景里,OSCAR 最高帶來約 3 倍加速;當顯存預(yù)算固定、batch size 繼續(xù)增大時,INT2 history 讓 KV footprint 明顯下降,從而把 job-level throughput 推高到最多約 7 倍。它的含義很直白:OSCAR 不只是精度曲線好看,也確實減輕了顯存和帶寬壓力。
![]()
圖 6:prefix cache 命中率提升后,吞吐前沿繼續(xù)外移
圖 6 展示了 prefix-cache hit ratio 對端到端 serving throughput 的影響。橫軸是單用戶吞吐,縱軸是單 GPU 吞吐;從關(guān)閉 cache,到 normal cache,再到接近 100% warmup replay,吞吐前沿會逐步向外擴張。由于 OSCAR 保留標準 paged KV / prefix cache 抽象,共享系統(tǒng)提示、多輪 Agent、工具調(diào)用鏈路這類長前綴高復用場景可以直接吃到收益。
還有一點值得注意:OSCAR 并沒有通過“少數(shù)層保留高精度”來換分。很多低比特方法在部署時會把第一層、最后一層或若干敏感層保留在更高 bit,這會抬高平均 bit 數(shù),也會讓 kernel 和 cache layout 更復雜。OSCAR 的設(shè)置更接近真實服務(wù):歷史 KV 主體統(tǒng)一使用 INT2,只在 sink 和 recent 兩個很小窗口保留 BF16。這讓它更容易接進 paged cache、prefix cache 和批量調(diào)度。
總 結(jié)
OSCAR 的意義不只是在小模型或短上下文上跑出好分數(shù)。論文同時覆蓋 4B、8B、32B 和 GLM-4.7-FP8 這類不同規(guī)模模型;既評估了數(shù)學、代碼、知識問答等 32K 推理生成任務(wù),也測試了 128K RULER-NIAH 長上下文檢索。短任務(wù)里,它能貼近 BF16;長上下文里,它也能讓 attention 分布隨歷史增長保持更穩(wěn)定。這說明 attention-aware rotation 不是只針對某個 benchmark 調(diào)參,而是在處理 KV 誤差隨上下文長度累積這個更根本的問題。
從應(yīng)用角度看,這對長上下文 Agent 特別重要。真實 Agent 往往包含很長的系統(tǒng)提示、工具說明、歷史對話和檢索內(nèi)容,不同請求之間還會存在大量共享前綴。如果 KV Cache 全部用 BF16,顯存很快會成為天花板;如果直接上樸素 INT2,推理鏈條又可能失真。OSCAR 在二者之間給出了一種更系統(tǒng)的折中:長歷史用 INT2 降容量和帶寬,關(guān)鍵 sink/recent 用 BF16 保穩(wěn)定,再讓 prefix cache 復用共享前綴。
TurboQuant 仍然是很強的通用 online vector quantization 方法;OSCAR 更專注于 attention-aware 的 2-bit KV serving。兩者也并非只能二選一,未來完全可以把 OSCAR 的 attention-aware rotation 與更強的 TurboQuant codebook 結(jié)合,把壓縮率繼續(xù)推向極限。OSCAR 帶來的關(guān)鍵啟發(fā)是:2-bit KV Cache 如果要真正上線,旋轉(zhuǎn)不能只追求“有”,而要對準 attention;同時,它也必須被放進真實 serving 系統(tǒng)里一起設(shè)計。
資料鏈接
論文:https://arxiv.org/abs/2605.17757
項目主頁:https://oscar-quantize.github.io/
代碼:https://github.com/FutureMLS-Lab/OSCAR
RotationZoo:https://huggingface.co/Zhongzhu/OSCAR-RotationZoo
作者介紹
Zhongzhu Zhou 是 Together AI 的 Senior Research Scientist,悉尼大學博士,研究方向包括高效機器學習系統(tǒng)、模型訓練與推理的算法系統(tǒng)協(xié)同設(shè)計,以及 LLM 壓縮與量化。團隊成員來自 Together AI、悉尼大學和伊利諾伊大學厄巴納—香檳分校。
Together AI 創(chuàng)立于 2022 年 6 月,聯(lián)合創(chuàng)始人包括蘋果前高管 Vipul Ved Prakash、斯坦福大模型研究中心主任 Percy Liang、芝加哥大學副教授 Ce Zhang,以及 FlashAttention 作者 Tri Dao。
會議推薦
企業(yè)級 Agent 落地,繞不開 4 個真實的工程問題!如何在 Agent 安全性和可用性之間找到平衡點?Agent 需要什么樣的記憶系統(tǒng)才能真正理解上下文?如何通過算法壓榨實現(xiàn)智力增量與成本控制的極致平衡?多 Agent 協(xié)作,如何做到可觀測、可治理、可控制?6.26-27 AICon 上海站,國內(nèi)頭部公司的 Agent 實踐,一次說透。
今日薦文
你也「在看」嗎?
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺“網(wǎng)易號”用戶上傳并發(fā)布,本平臺僅提供信息存儲服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.