Together AI、OSCARをオープンソース化:長コンテキストLLMサービングのためのアテンション認識2ビットKVキャッシュ量子化システム
Together AIは、長コンテキストLLMサービングのためのINT2 KVキャッシュ量子化手法であるOSCAR(Offline Spectral Covariance-Aware Rotation)をリリースしました。データに依存しないアダマール変換を適用する従来の回転ベースのアプローチとは異なり、OSCARはオフラインで推定されたアテンション認識共分散構造からキーとバリューに個別の回転を導出します。KV要素あたり2.28ビットで、OSCARはQwen3-4B-Thinking-2507でBF16精度ギャップを3.78ポイント、Qwen3-8Bで1.42ポイントに削減し、100Kコンテキスト長で約8倍のKVメモリ削減と最大3倍のデコード高速化を実現します。
記事インテリジェンス
要点
- OSCARは、アテンション認識回転を使用し、BF16に近い精度を維持する2ビットKVキャッシュ量子化手法です。
- オフラインキャリブレーションによりクエリとバリューの共分散から回転を導出し、量子化ノイズをアテンションに敏感でない方向に向けます。
- OSCARは長コンテキスト推論で最大8倍のKVメモリ削減と3倍のデコード高速化を実現します。
- SGLangと統合され、ページ化アテンションをサポートし、事前計算された回転のModelScope zooを提供します。
重要な理由
このニュースが重要なのは、OSCARは、アテンション認識回転を使用し、BF16に近い精度を維持する2ビットKVキャッシュ量子化手法ですためです。
技術的影響
モデル選定、推論コスト、プロダクト能力、評価基準に影響する可能性があります。
長コンテキスト推論は、KVキャッシュをLLMサービングの主要なコストの1つにします。自己回帰デコード中、キャッシュはコンテキスト長、バッチサイズ、モデルの深さとともに増加します。高いバッチサイズと長いコンテキスト(たとえば、数十の同時リクエストにわたる100Kトークン)では、KVキャッシュはGPUメモリの大部分を消費します。これを圧縮することは、バッチサイズを増やし、メモリトラフィックを減らす直接的な方法です。
明白なアプローチは量子化です。しかし、KVキャッシュをINT2(2ビット)精度に押し上げることは、これまでほとんど実用的ではありませんでした。以前の方法は、精度が低下するか、ページ化KVキャッシュシステムと互換性のないカスタムサービングレイアウトを必要としていました。Together AIのOSCAR(Offline Spectral Covariance-Aware Rotation)は、両方の問題に対処します。
なぜINT2 KVキャッシュ量子化が難しいのか?KVアクティベーションにはチャネル単位の外れ値が含まれます。少数のチャネルが非常に大きな値を保持し、ほとんどのチャネルは正常に動作します。INT2量子化(4つの表現可能なレベルしかない)を適用すると、これらの外れ値がスケールファクターを支配します。量子化器はその範囲のほとんどを稀なスパイクに浪費し、通常の値は1つまたは2つの有効なレベルに圧縮されます。これにより、アテンションの品質が大幅に低下します。
回転ベースの量子化は、通常アダマール変換である固定直交変換を適用して、外れ値エネルギーをすべてのチャネルに再分散することでこの問題に対処します。このアプローチはINT4では十分に機能します。INT2では、より深い問題が残ります:回転はデータに依存しません。アクティベーション範囲を平滑化できますが、アテンションメカニズムが実際にどの方向を読み取るかを認識しません。量子化誤差を均一に分散することは、それを低重要度の方向に押し込むことと同じではありません。INT2では4つのレベルしかないため、この区別がモデルが機能するかどうかを決定します。
OSCARの違い:OSCARの重要な観察は、量子化前に適用される回転は、KVアクティベーションの生の分布ではなく、アテンション統計自体から導出されるべきであるということです。キーの場合、重要な下流誤差はKのユークリッド再構成誤差ではなく、アテンションロジットの誤差です。研究チームはこの誤差が‖QK⊤ − QK̂⊤‖²F = tr((K − K̂)Q⊤Q(K − K̂)⊤)であることを示しました。重み行列はクエリ共分散Q⊤Qであり、K⊤Kではありません。クエリのエネルギーが大きい方向は、ロジットの量子化誤差を増幅します。OSCARはキャリブレーションセットから経験的クエリ共分散CQ = (1/N) Σ qn⊤qnを推定し、それを固有分解し、固有ベクトルUQをキー回転基底として使用します。
バリューの場合、関連する誤差はアテンション出力SVにあります。これは、アテンションスコア行列Sが各バリュー行をどのように重み付けするかに依存します。研究チームはスコア加重バリュー共分散CS = (1/N) V⊤S⊤SVを定義します。Sによって集約された後も大きいままの方向が、量子化誤差が伝播する方向です。OSCARはCSの固有ベクトルUSをバリュー回転基底として使用します。
最終的な合成回転は次のとおりです:RK = UQ · HHad · Pbr、RV = US · HHad · Pbr。3つの因子はそれぞれ、グループ単位の低ビット量子化の異なる失敗モードに対処します:UQ/USはチャネルをアテンション重要度方向に整列させ、HHadはチャネル重要度を等化し、Pbrはチャネルを再順序付けして、各量子化グループが重要度階層の各レベルから1つの代表を受け取るようにします。
サービングシステム:混合精度キャッシュレイアウト:OSCARは、ページ化アテンションと完全な互換性を持つINT2 KVキャッシュモードとしてSGLangのプロダクションサービングスタックに統合されています。KVキャッシュレイアウトはリクエストごとに3つのリージョンを使用します:最初の64トークン(シンクトークン)はBF16で保存され、現在位置の前の最後の256トークン(最近トークン)はBF16で保存され、その間のすべてのトークン(履歴トークン)はOSCAR回転とクリッピング後にINT2で保存されます。128Kコンテキスト長では、BF16シンクおよび最近ウィンドウは全トークンの0.24%のみを表します。
結果:研究チームは4つのモデル構成でOSCARを評価しました:Qwen3-4B-Thinking-2507、Qwen3-8B、Qwen3-32B、およびGLM-4.7-FP8(358Bパラメータ)。KV要素あたり2.28ビットで、Qwen3-4Bの平均精度ギャップは-3.78ポイント、Qwen3-8Bは-1.42ポイント、Qwen3-32Bは-0.02ポイント、GLM-4.7-FP8は+0.27ポイントでした。比較すると、回転なしのナイーブINT2は0.00、QuaRot-INT2(アダマールのみ)は大幅に低いスコアでした。長コンテキストロバストネス(RULER-NIAH)では、OSCARはQwen3-4BおよびQwen3-8Bで128KまでBF16に近いパフォーマンスを維持しましたが、QuaRot-INT2は0に低下しました。スループットに関しては、OSCARは100Kコンテキスト長で最大3.08倍のデコード高速化を実現し、バッチサイズ32ではジョブレベルスループットがBF16の7.83倍に向上しました。
OSCARの回転は事前計算され、ModelScopeのRotationZooで公開されており、ユーザーによる再キャリブレーションは不要です。カスタムモデル用に、1回限りのオフラインキャリブレーションスクリプトが提供されています。また、OSCARはSGLangと完全に統合されており、クライアント側の変更なしで標準のOpenAI互換APIをサポートしています。