La inferencia de contexto largo hace que la caché KV sea uno de los principales costos de prestar servicios a los LLM. Durante la decodificación autorregresiva, la caché crece con la longitud del contexto, el tamaño del lote y la profundidad del modelo. En lotes de gran tamaño y contextos prolongados con tokens de 100 000 en docenas de solicitudes simultáneas, la caché KV consume una gran fracción de la memoria de la GPU. Comprimirlo es una forma directa de aumentar el tamaño del lote y reducir el tráfico de memoria.
El enfoque obvio es la cuantización. Pero llevar las cachés KV a una precisión INT2 (2 bits) ha resultado en gran medida poco práctico. Los métodos anteriores pierden precisión o requieren diseños de servicio personalizados incompatibles con los sistemas de caché KV paginados. En conjunto, OSCAR (rotación consciente de la covarianza espectral fuera de línea) de AI aborda ambos problemas.
Por qué la cuantificación de caché INT2 KV es difícil
Las activaciones de KV contienen valores atípicos en cuanto a canales. Un pequeño subconjunto de canales tiene valores extremadamente grandes. La mayoría de los canales se portan bien. Cuando aplica la cuantificación INT2, que tiene solo cuatro niveles representables y esos valores atípicos dominan el factor de escala. El cuantificador desperdicia la mayor parte de su alcance en picos raros. Los valores normales se comprimen en sólo uno o dos niveles efectivos. Esto degrada sustancialmente la calidad de la atención.
La cuantización basada en rotación soluciona este problema aplicando una transformación ortogonal fija, normalmente una transformada de Hadamard, para redistribuir la energía atípica en todos los canales. Este enfoque funciona razonablemente bien en INT4. En INT2, persiste un problema más profundo: la rotación no tiene en cuenta los datos. Puede suavizar los rangos de activación, pero no sabe qué direcciones lee realmente el mecanismo de atención. Distribuir el error de cuantificación de manera uniforme no es lo mismo que empujarlo hacia direcciones de baja importancia. En INT2, con sólo cuatro niveles, esa distinción determina si el modelo funciona.
Lo que OSCAR hace diferente
La observación clave de OSCAR es que la rotación aplicada antes de la cuantificación debe derivarse de las estadísticas de atención en sí mismas, no de la distribución bruta de las activaciones de KV.
Para las claves, el error descendente que importa no es el error de reconstrucción euclidiana de K. Es el error en los logits de atención. El equipo de investigación demostró que este error es: ‖QK⊤ − QK̂⊤‖²F = tr((K − K̂)Q⊤Q(K − K̂)⊤). La matriz de ponderación es la covarianza de la consulta Q⊤Q, no K⊤K. Las direcciones donde las consultas tienen gran energía amplifican los errores de cuantificación en logits. OSCAR estima la covarianza de la consulta empírica CQ = (1/N) Σ qn⊤qn a partir de un conjunto de calibración, la descompone automáticamente y utiliza los vectores propios UQ como base de rotación de claves.
Para los valores, el error relevante está en la salida de atención SV. Esto depende de cómo la matriz S de puntuación de atención pondera cada fila de valores. El equipo de investigación define la covarianza del valor ponderado por puntuación CS = (1/N) V⊤S⊤SV. Las direcciones que permanecen grandes después de la agregación por S son por las que se propaga el error de cuantificación. OSCAR utiliza los vectores propios US de CS como base de rotación de valores.
Las rotaciones compuestas finales son:
RK = UQ · HHad · Pbr
RV = EE.UU. · HHad · Pbr
Cada uno de los tres factores aborda un modo de falla distinto de la cuantificación de bits bajos por grupo:
UQ/US alinea los canales con direcciones de atención-importancia. Esto diagonaliza la matriz de ponderación de errores para que las direcciones más importantes sean identificables. HHad (transformada de Walsh-Hadamard) iguala exactamente la importancia del canal. El lema 1 del artículo de investigación demuestra que cada entrada diagonal de HHad⊤ Λ HHad es igual a tr(Λ)/d: el espectro propio máximo expuesto por UQ se comprime a un valor uniforme en todos los canales. Pbr (inversión de bits permutados) reordena los canales de modo que para cualquier tamaño de grupo de cuantificación de potencia de dos, cada grupo recibe un representante de cada nivel de la jerarquía de importancia.
El equipo de investigación proporciona el Teorema 1 que demuestra que UQ y US son óptimos bajo un objetivo sustituto de error congelado con supuestos residuales diagonales.
El sistema de servicio: diseño de caché de precisión mixta
OSCAR se integra en la pila de servicio de producción de SGLang como modo de caché INT2 KV con total compatibilidad con atención paginada.
El diseño de caché de KV utiliza tres regiones por solicitud:
Tokens de fregadero (primer S0 = 64 tokens): almacenados en BF16. Estos funcionan como sumideros de atención. Tokens recientes (último W = 256 tokens antes de la posición actual): almacenados en BF16. Tokens de historial (todo lo demás): almacenados como INT2 después de la rotación y el recorte de OSCAR.
Con una longitud de contexto de 128K, el sumidero BF16 y las ventanas recientes representan solo el 0,24% del total de tokens. La ablación (Tabla 5 en el artículo de investigación) muestra que (S=64, R=256) es la rodilla entre precisión y eficiencia: las ventanas más pequeñas perjudican notablemente la precisión; Las ventanas más grandes brindan un beneficio adicional insignificante a un mayor costo de memoria BF16.
Las rutas de escritura y lectura utilizan núcleos Triton fusionados. En la ruta de escritura, cada token se gira, se recorta a un umbral percentil derivado de la calibración (valores típicos: cK = 0,96, cV = 0,92) y luego se cuantifica con INT2 asimétrico por token en un tamaño de grupo predeterminado de GK = 64 canales por grupo. En la ruta de lectura, el kernel INT2 descomprime bytes, descuantifica, realiza rotaciones inversas y pasa los resultados al kernel de atención, todo en una sola pasada sin tráfico de memoria adicional. La rotación de valor RV se absorbe en los pesos de proyección del modelo fuera de línea, lo que elimina su costo de cómputo en línea.
Resultado
El equipo de investigación evaluó OSCAR en cuatro configuraciones de modelos: Qwen3-4B-Thinking-2507, Qwen3-8B, Qwen3-32B y GLM-4.7-FP8 (parámetros 358B). Los puntos de referencia incluyen AIME25, GPQA-Diamond, HumanEval, LiveCodeBench v6 y MATH500, todos con una longitud de generación máxima de 32K.
Precisión (a 2,28 bits por elemento KV):
Para contextualizar cómo se comparan los métodos en competencia: INT2 ingenuo (sin rotación) obtiene una puntuación de 0,00 tanto en Qwen3-4B como en Qwen3-8B. QuaRot-INT2 (rotación exclusiva de Hadamard) obtiene una puntuación de 1,40 en Qwen3-4B y 10,14 en Qwen3-8B. TurboQuant a 3,25 bits cae 43,90 puntos en Qwen3-4B-Thinking. Saw-INT4 a 4,25 bits alcanza 73,11 en Qwen3-4B — OSCAR a 2,28 bits alcanza 71,86.
El equipo de investigación también comparó los métodos por canales en AIME25 (Tabla 1). En Qwen3-8B, OSCAR con 2,38 BPE alcanza 66,67±3,33, por encima de KIVI-KV2* con 57,67 (2,26 BPE) y Kitty con 59,67 (2,39 BPE). Tenga en cuenta que los métodos por canal requieren búferes residuales o diseños de página personalizados que no se ajustan al servicio de atención de paginación estándar, por lo que esta comparación se limita al único punto de referencia compartido donde los resultados estaban disponibles.
Robustez de contexto largo (RULER-NIAH):
En GLM-4.7-FP8, OSCAR iguala la curva BF16 hasta 128K.
Rendimiento (H100, contexto de 100 K, tamaño de lote 1):
Aceleración del rendimiento de decodificación en relación con BF16, en longitudes de contexto cada vez mayores:
Con un tamaño de lote 32, el rendimiento a nivel de trabajo en un contexto de 100K alcanza 6,17 veces más que BF16 en Qwen3-4B-Thinking y 7,83 veces más en GLM-4.7-FP8. La aceleración aumenta con la longitud del contexto porque la decodificación se limita cada vez más al ancho de banda KV. Reducir la memoria KV en 8 × reduce directamente ese cuello de botella. La sobrecarga de rotación en línea se absorbe en los núcleos de decodificación.
Explicador visual de Marktechpost
Conclusiones clave
OSCAR cuantifica los cachés LLM KV con una precisión de 2 bits mediante activaciones rotativas utilizando matrices de covarianza conscientes de la atención, no transformaciones genéricas de Hadamard. A 2,28 bits por elemento KV, OSCAR se mantiene dentro de los 3,78 puntos de precisión de BF16 en Qwen3-4B-Thinking, mientras que el ingenuo INT2 colapsa a cero. La memoria caché KV disminuye aproximadamente 8 veces, la velocidad de decodificación mejora hasta 3 veces en un contexto de 100 K y el rendimiento a nivel de trabajo alcanza hasta 7,83 veces en lotes de gran tamaño. Las matrices de rotación precalculadas para Qwen3-4B/8B/32B, GLM-4.7-FP8 y MiniMax-M2.7 están disponibles en RotationZoo, sin necesidad de recalibración. OSCAR se integra directamente en SGLang con compatibilidad con caché KV de paginación completa y caché de prefijo, sin requerir cambios en el cliente de inferencia.
Consulte el repositorio en GitHub, Modelscope y Research Paper. Además, no dude en seguirnos en Twitter y no olvide unirse a nuestro SubReddit de más de 150.000 ML y suscribirse a nuestro boletín. ¡Esperar! estas en telegrama? Ahora también puedes unirte a nosotros en Telegram.
¿Necesita asociarse con nosotros para promocionar su repositorio de GitHub O su página principal de Hugging O su lanzamiento de producto O seminario web, etc.? Conéctate con nosotros