Compresión del caché KV de los LLM a 3 bits: TurboQuant de Google Research
Google Research ha desarrollado TurboQuant, un método para comprimir el caché de claves-valores (KV cache) de los modelos de lenguaje grandes (LLMs) a 3 bits por parámetro. El algoritmo preserva la precisión de generación sin reentrenamiento ni sobrecarga de memoria adicional. TurboQuant combina PolarQuant para la cuantización principal y QJL para la corrección de errores, permitiendo un procesamiento 6–8 veces más rápido de contextos largos.
El caché KV acumula representaciones intermedias del mecanismo de atención durante el procesamiento de secuencias. Para contextos de 128k+ tokens, el tamaño del caché supera los gigabytes, limitando la inferencia en GPU. TurboQuant resuelve esto convirtiendo los datos a coordenadas polares y aplicando corrección de un bit.
Cómo funciona el algoritmo
TurboQuant consta de dos etapas:
- PolarQuant: convierte los vectores KV a coordenadas polares. La amplitud se cuantiza con alta precisión (8–16 bits), mientras que las fases se comprimen a 1–2 bits. Esto minimiza el error en los componentes principales.
- QJL (Quantized Joint Learning): corrección posterior de un bit para artefactos residuales. No requiere entrenamiento con gradientes y se ejecuta durante la inferencia.
La combinación proporciona una representación de 3 bits sin degradación de la perplejidad. El enfoque se ha demostrado óptimo frente a los límites inferiores teóricos de compresión para matrices de atención.
Benchmarks y rendimiento
Pruebas en modelos abiertos Gemma-2B/7B y Mistral-7B mostraron:
- Compresión de memoria del caché KV 6–10x.
- Hasta 8x de aceleración en atención en GPU H100 (3 bits vs línea base FP32).
- Precisión perfecta en Needle In A Haystack (NIAH) para contextos de hasta 128k tokens: 0% de errores en recuperación de hechos.
| Benchmark | FP32 (línea base) | TurboQuant 3 bits | Aceleración relativa |
|-----------|-------------------|-------------------|----------------------|
| LongBench | 100% | 99.8% | 6.2x memoria, 7.1x velocidad |
| RULER | 100% | 100% | 8.3x velocidad |
| NIAH | 100% | 100% | 6.8x memoria |
En modo de 4 bits, la aceleración alcanza su máximo en H100 con escalado lineal en A100/H200.
Aplicaciones más allá de los LLMs
TurboQuant se aplica a la búsqueda vectorial en sistemas RAG y clasificación semántica. Pruebas en benchmarks ANN (SIFT, GIST) superan la cuantización FP16:
- Recall@10: +2–5% sobre líneas base Int8.
- Latencia: 4–6x menor sin reentrenamiento del índice.
El algoritmo es independiente del dominio, facilitando el despliegue en producción. Para LLMs, se integra en frameworks de inferencia como vLLM o Hugging Face TGI sin cambios en el modelo.
Ventajas clave para desarrolladores intermedios/senior:
- Cuantización zero-shot: plug-and-play.
- Precisión de precisión completa en tareas de contexto largo.
- Escalabilidad en configuraciones multi-GPU.
Puntos clave
- TurboQuant comprime el caché KV de los LLM a 3 bits, acelerando la inferencia 8x sin pérdida de calidad.
- Algoritmo de dos etapas (PolarQuant + QJL) matemáticamente óptimo, sin necesidad de ajuste fino.
- Compatibilidad total con Gemma/Mistral; ideal para contextos de 100k+ tokens.
- Se extiende a búsqueda vectorial: mayor recall con huella 6x menor.
- Presentación en ICLR 2026: se espera implementación open-source.
El método es crítico para escalar LLMs en producción, donde la memoria del caché KV es el principal cuello de botella. (Longitud total: ~3200 caracteres)
— Editorial Team
Aún no hay comentarios.