Together AI 本周开源了 OSCAR——一个 2-bit KV cache 量化系统,终于让 2-bit 在长上下文服务中可用。缩写展开为 Offline Spectral Covariance-Aware Rotation,关键技术动作是从经验*注意力*统计中导出旋转矩阵,而不是从原始激活分布。朴素 INT2 和 QuaRot-INT2 应用了忽视注意力实际计算内容的通用 Hadamard 旋转;OSCAR 在 key 路径上使用 query 协方差 CQ(因为 attention-logit 误差取决于 `tr((K − K̂)Qᵀ Q (K − K̂)ᵀ)`,而不是重建误差),在 value 路径上使用按 score 加权的 value 协方差 CS。复合旋转 `RK = UQ · HHad · Pbr` 是 query 特征向量 + Hadamard + bit-reversal 排列,经过工程化使量化误差落入感知上不重要的方向。
数字配得上发布。KV cache 内存削减约 8×。在 100K 上下文下单请求的 decode 加速 1.84-3.08×,batch size 32 下作业级吞吐量高达 7.83×。在 AIME25、GPQA-Diamond、HumanEval、LiveCodeBench 和 MATH500 上对 BF16 的平均 accuracy 差距:Qwen3-4B-Thinking −3.78 分,Qwen3-8B −1.42,Qwen3-32B **−0.02**,GLM-4.7-FP8(358B)**+0.27**。模式是对的——accuracy 差距随模型规模扩大而收敛,这正是你想从生产级量化器得到的。在最重要的长上下文场景:Qwen3-8B 在 128K 上下文的 RULER-NIAH,OSCAR 达到 **45.0%**,而 QuaRot-INT2 是 **0.0%**。之前的 2-bit 方法在长上下文下根本无法做大海捞针;OSCAR 可以。在 16K/32K/64K/128K 上测试,生成长度最多 32K tokens。模型:Qwen3-4B-Thinking、Qwen3-8B、Qwen3-32B、GLM-4.7-FP8(358B)、MiniMax-M2.7。
系统集成:OSCAR 内置 SGLang,支持完整的 paged KV-cache 和 prefix-cache 兼容性。混合精度布局对注意力 sink(前 64 个 token)和最近窗口(最后 256 个 token)保留 BF16,中间历史用 INT2。融合的 Triton 核处理写入时的旋转、剪裁、量化;读取时的反量化和反向旋转。value 旋转在离线时被吸收到投影权重中,因此该系统这一半运行时成本为零。预计算的旋转存在 ModelScope RotationZoo,所以大多数 builder 可以 clone-and-serve,无需自己跑校准 pass。仓库:github.com/FutureMLS-Lab/OSCAR——标记一下文章未明确说明许可证,builder 在商业使用前应该检查。
周一上午:如果你在生产中服务长上下文 Qwen3、GLM-4.7 或 MiniMax-M2 并遇到 KV-cache 内存天花板,OSCAR 对 SGLang 部署来说是即插即用的测试。在 32B+ 模型上以接近零的 accuracy 代价换 8× 内存减少,正是 cost-pressure-at-scale 想要的单位经济学(就是本周早些时候推动微软把 Claude Code 换成 Copilot CLI 的同一种成本压力)。诚实的限制:需要每层校准(不是单一通用旋转),BF16 sink 缓冲区是必需的(表 5 显示没有它 accuracy 急剧降低),Triton 核路径意味着 vLLM 和 TensorRT-LLM 集成尚未到位,文章没有透露代码以何种许可证发布。对于 vLLM 上的 builder,这是要移植的架构原语——attention-aware 旋转的想法可以从论文独立于 SGLang 实现复现。
