Chiosa
ES
Machine Learning

Una representación de caché compartida sirve a varias capas del modelo

BellowsKV: One Latent for Many Layers, Expanded on Demand · arXiv:2610.35023

4 min
Actualizado
Comparison of different cross-layer KV-Cache compression methods: (a) Trained-to-share architectures reach one cache only by retraining. (b) Training-free methods factorize the caches (c) BellowsKV…
Comparison of different cross-layer KV-Cache compression methods: (a) Trained-to-share architectures reach one cache only by retraining. (b) Training-free methods factorize the caches (c) BellowsKV folds the block’s hidden states into one latent, buying the compression ratio…Figure 1 · BellowsKV: One Latent for Many Layers, Expanded on Demand · Jiamu Zhang and Hanjie Chen · CC BY 4.0

En palabras sencillas

Los modelos de lenguaje guardan registros de palabras anteriores para responder usando una entrada larga, pero cada capa mantiene su propia caché. BellowsKV es un método de compresión que no requiere reentrenar el modelo: guarda una representación por token para capas cercanas y permite que cada capa reconstruya sus propias claves y valores de atención cuando los necesita.

Los autores encontraron que las entradas de capas vecinas eran similares, aunque sus elementos de caché no lo fueran. En tres modelos, la versión cuantizada conservó alrededor del 97–98 % de las puntuaciones de los modelos sin comprimir, en promedio en 11 tareas con contexto largo y con una compresión de aproximadamente 13–14 veces.

La investigación

Un modelo de lenguaje con contexto largo guarda en cada capa un registro independiente de los tokens anteriores, y cada solicitud necesita su propia caché.

¿Pueden las capas adyacentes compartir esa memoria durante la generación y, aun así, recuperar las distintas claves y valores de atención que necesita cada una?

BellowsKV es un método sin reentrenamiento que guarda una representación compartida calibrada para cada token entre capas adyacentes y luego reconstruye las claves y los valores propios de cada capa.

Tres modelos de instrucciones se evaluaron con el sistema de los autores de xKV en LongBench, 11 tareas en inglés que incluyen responder preguntas, resumir y encontrar detalles en textos largos. Para cada tarea, el sistema dividió la puntuación por la del mismo modelo con caché completa y luego calculó el promedio.

La versión cuantizada de BellowsKV conservó entre el 97 y el 98 % con una compresión de 13–14x; xKV conservó entre el 54 y el 84 % cerca de 16x. Esto respalda almacenar la representación compartida con su dimensión completa y usando menos bits, aunque las tasas de compresión difieren.

Los resultados de LongBench abarcan tres modelos y 11 tareas, con entradas de más de 4.000 y hasta 32.000 tokens. Además, las comparaciones de BellowsKV usan tasas de compresión inferiores a las de xKV y CommonKV.

Qué muestran las pruebas

  • El cuello de botella de memoria

    BellowsKV es un método que comprime, sin reentrenamiento, la caché de claves y valores (KV) de un modelo: los registros que cada capa conserva de tokens anteriores.

    Cada solicitud mantiene una caché independiente para cada capa, así que las entradas más largas y los lotes de servicio más grandes aumentan el uso de memoria. La pregunta de investigación es si las capas adyacentes pueden compartir información almacenada y aun así recuperar sus propias claves y valores de atención.

  • Qué comparten las capas

    Los autores compararon, token por token, capas vecinas de modelos Llama y Qwen sin comprimir. Usaron la similitud coseno —una medida de cuánto apuntan los vectores en direcciones parecidas— para comparar estados internos y elementos de la caché.

    Los estados internos eran muy similares, mientras que las claves y los valores correspondientes tenían una similitud cercana a cero. Esto indica que la información compartida está en las entradas usadas para formar la caché, no en elementos que una capa pudiera reutilizar directamente de otra.

  • Reconstruir la caché de cada capa

    BellowsKV ajusta una proyección con datos de calibración para cada bloque de capas adyacentes. Usa esa proyección para guardar una representación compartida por token; después, cada capa aplica su propia proyección para reconstruir sus claves y valores.

    El método conserva la dimensión completa de la representación compartida y la comprime almacenando los valores con menos bits o eliminando tokens seleccionados mediante una decisión única por bloque.

  • Medir el rendimiento que se conserva

    LongBench consta de 11 tareas en inglés que incluyen responder preguntas, resumir y encontrar información en textos largos. El sistema de evaluación de los autores de xKV puntuó tres modelos de instrucciones con entradas de más de 4.000 y hasta 32.000 tokens.

    El artículo dividió la puntuación de cada tarea por la puntuación del mismo modelo con caché completa y luego promedió los resultados entre tareas. La versión cuantizada de BellowsKV conservó entre el 97 y el 98 % con una compresión de 13–14x; xKV conservó entre el 54 y el 84 % cerca de 16x.

  • Examinar la explicación basada en el rango

    Un control comparó la base de xKV con un cuarto del rango y precisión fp16, con compresión de 16x, frente a xKV-hold, que conserva una base casi de rango completo pero la almacena con precisión de cuatro bits y alcanza 15,06x.

    La conservación subió en Llama y Mistral, del 83,5 al 97,6 % y del 79,5 al 99,2 %, pero bajó del 54,4 al 23,4 % en Qwen. Como el rango y la precisión cambiaron a la vez, el control no puede aislar ninguno de los factores; los autores tampoco explican el resultado de Qwen.

  • Comprobar la recuperación en otros modelos

    BrowseComp-Plus evalúa una recuperación de un turno seguida de una respuesta, y su evaluador puntúa los resultados en 830 consultas. Con una instrucción de 32.768 tokens llena de pasajes distractores difíciles, las puntuaciones de BellowsKV con compresión de 14,61x fueron cercanas a las de la ejecución con caché completa: 86,02 frente a 85,54 en Qwen3-32B y 85,78 frente a 86,14 en Qwen3-30B-A3B. Esto añade evidencia sobre dos modelos y una tarea, pero no establece el rendimiento en general.

Detalles