混合模型近年好多人用,佢哋將 state-space model(SSM)層同少量 attention 層穿插放置,做長上下文時慳資源。NVIDIA Nemotron 3、Qwen3.5到Qwen3.8、Kimi-K3、GLM-5.3-Flash 呢批模型全部用呢個思路,SSM 層則分別係 Mamba-2、Gated DeltaNet(GDN)、Kimi Delta Attention(KDA)。
SSM 層原本係為咗令推理快啲而設計:用一個固定大小嘅狀態(state),代替逐 token 累積嘅 key-value(KV)cache。但到了 serving batch size 一多,反而係 SSM 層,唔係 attention,會成為長上下文(到 100K token)嘅延遲瓶頸。同時,SSM 層亦令兩個對 attention 推理一向有效嘅提速技術——speculative decoding(推測解碼)同 quantization(量化)——變得難搞。
NVIDIA 同普林斯頓大學 Dao AI Lab 聯手開發嘅 ReplaySSM,將 SSM 狀態拆成「一個 checkpoint 加一段近期輸入 buffer」,把輸出計算同狀態更新分開。呢個設計一次性解決咗現有 SSM 解碼嘅三個問題:狀態頻寬、推測解碼嘅回滾、量化後嘅誤差累積。
以 NVIDIA Nemotron 3 Ultra 用嘅 Mamba-2 層為例,每步解碼都要從 HBM(高頻寬記憶體)載入同寫回完整狀態,但對狀態本身做嘅運算量好少,所以 kernel 係受 HBM 頻寬限制,唔係計算量。喺 Nemotron-3-Super-NVFP4、batch size 256、單張 NVIDIA Blackwell Ultra B300 GPU 上,到 100K token 上下文,SSM 層就係 decode step 入面最大嘅組成部分。原因有二:模型嘅 SSM 層數量係 attention 層嘅五倍;每層 FP32 狀態每條序列佔 4 MiB,而 FP8 KV 每 token 只佔 0.5 KiB,即 SSM 一層嘅狀態,就等於 attention 一層處理 8K token 嘅 KV cache 大小。
Speculative decoding 嘅回滾問題更棘手:attention 可以透過移動 KV cache 指標自然支援,但 SSM 將 draft tokens 摘要入狀態後,更新冇簡單嘅逆運算,回滾就變得很貴。vLLM 現行做法係喺每個 draft token 後存一份狀態快照,再揀符合已接受前綴嘅嗰份——每個 step 喺 memory-bound 路徑上做一次讀取加 T 次寫入,快照仲限制咗 GPU 記憶體可容納嘅請求數。結果就係:對 Transformer 一向有效嘅 speculative decoding,對 SSM 幾乎幫唔到忙。
ReplaySSM 已經整合進 NVIDIA TensorRT-LLM、vLLM 同 FlashInfer,論文《ReplaySSM: Cache SSM Inputs, Not State》已上 arXiv,程式碼喺 GitHub,並喺 GLM-5.3-Flash 同 Kimi-K3 上實戰運行。
三項改善(狀態頻寬、回滾、量化誤差)嘅具體提升幅度,以原論文為準,呢篇公告冇列出完整數字。
模姐|深度調教




