近年來,基於 Transformer 架構的大型語言模型(LLMs)取得了顯著進展,諸如 Gemini-Pro1.5、Claude-3、GPT-4和 Llama-3.1等新模型能夠處理成百上千的token。
然而,這些擴展的上下文長度帶來了實際應用中的一些重大挑戰。隨着序列長度的增加,解碼延遲上升,內存限制也成爲了一個嚴重的瓶頸。KV 緩存在推理過程中儲存上下文信息,隨着上下文長度的增加,緩存的大小也呈比例增長,這導致內存飽和,嚴重影響了處理長輸入序列的效率,因此迫切需要優化解決方案。

雖然市場上存在一些無訓練的方法,但它們通常依賴於獲取注意力權重來確定鍵值對的重要性,這使其與高效的注意力算法(如 FlashAttention)不兼容。這些方法往往需要對注意力矩陣進行部分重新計算,從而引入了時間和內存開銷。因此,現有的壓縮算法主要用於在生成答案之前壓縮提示,而非優化在內存受限的生成過程中。這一侷限性強調了需要開發既能保持模型性能又不需要架構修改的壓縮技術。
來自索邦大學、法國國家信息與自動化研究所、羅馬薩平扎大學、愛丁堡大學和 Miniml.AI 的研究團隊提出了 Q-Filters,這是一種強大的無訓練 KV 緩存壓縮技術,利用基於查詢的過濾方法來優化內存使用,同時保持模型性能。Q-Filters 通過評估與當前查詢相關的鍵值對的重要性,而不是依賴於注意力權重。這種方法確保了與高效注意力算法的兼容性,且無需重新訓練或修改架構。通過動態評估並保留最相關的上下文信息,Q-Filters 實現了顯著的內存減少,同時維持了推理質量。

Q-Filters 在多個評估場景中表現出色,始終優於現有的 KV 緩存壓縮方法。在對 Pile 數據集的語言建模測試中,該技術在所有壓縮方案中實現了最低的困惑度。特別是在 Llama-3.1-70B 模型上,Q-Filters 在上下文保留至關重要的序列後半部分顯示出顯著的困惑度降低。
在 “針在乾草堆” 任務中,Q-Filters 保持了91% 的準確率,成功地保存了極端上下文長度(從1K 到64K token)中的重要信息。綜合評估還驗證了該方法的優越性,尤其是在高壓縮率下(32倍),Q-Filters 在長上下文建模基準測試中取得了最高分。
論文:https://arxiv.org/abs/2503.02812
huggingface:https://huggingface.co/collections/nthngdy/q-filters-67a4994dcb302a3d37f3d119
劃重點:
🔍 Q-Filters 是一種無訓練的 KV 緩存壓縮技術,能夠有效優化內存使用而不損失模型性能。
📊 該方法在多個評估中表現優越,特別是在語言建模和極端上下文任務上取得了最低的困惑度和最高的準確率。
🛠️ Q-Filters 與高效注意力算法兼容,且只需在模型訓練後進行一次準備步驟,便可用於實際應用。
