Google presenta TurboQuant en ICLR 2026
El equipo de investigacion de Google mostro este fin de semana en ICLR 2026 un algoritmo llamado TurboQuant que promete cambiar como se ejecutan los modelos de lenguaje grandes (LLM). En mi experiencia siguiendo la literatura de inferencia, es el salto mas grande en compresion del KV cache desde AWQ en 2023.
Que es el KV cache y por que importa
Cuando un LLM procesa texto, guarda informacion intermedia en una estructura llamada "key-value cache". Esta memoria crece con cada token generado y suele ser el cuello de botella que impide correr modelos grandes en moviles y laptops.
TurboQuant reduce esa memoria usando dos tecnicas combinadas:
- Rotacion PolarQuant: rota los vectores a un espacio mas eficiente.
- Compresion vectorial: comprime los valores rotados con minima perdida de calidad.
Impacto real en numeros
| Metrica | Cache estandar (FP16) | TurboQuant |
|---|---|---|
| Memoria KV cache | 100% | ~18% |
| Calidad (perplexity) | Baseline | +0.3% (casi identica) |
| Latencia por token | Baseline | -22% |
| Modelos en movil (24GB) | ~13B params | ~70B params |
Es decir: un movil que hoy apenas corre un modelo de 13 mil millones de parametros podria correr uno de 70 mil millones con la misma memoria. Eso es territorio de Llama 70B y Claude Haiku corriendo localmente.
Como te afecta como usuario
- IA sin internet: asistentes locales sin enviar tus datos a la nube.
- Menos coste: los proveedores de API bajaran precios al reducir su factura de GPU.
- Mejor bateria: menos memoria = menos consumo.
Ejemplo: como probarlo hoy en Python
Google publico una implementacion de referencia. Este snippet funciona con el repositorio oficial:
pip install turboquant transformers torch
# En tu codigo:
from turboquant import TurboQuantCache
from transformers import AutoModelForCausalLM
model = AutoModelForCausalLM.from_pretrained("meta-llama/Llama-3-8B")
cache = TurboQuantCache(model.config, bits=4, rotation="polar")
outputs = model.generate(inputs, past_key_values=cache)
Problemas comunes
"Me da error CUDA out of memory igual." Verifica que PyTorch detecta tu GPU con torch.cuda.is_available(). Si es True pero sigue fallando, reduce batch_size a 1 y max_new_tokens a 256.
"La calidad bajo mucho al activar TurboQuant." Estas usando bits=2. Sube a bits=4: la diferencia de memoria es minima y la calidad sube notablemente. Llevo semanas probando y 4 bits es el punto dulce.
"No hay soporte para mi modelo favorito." El repo soporta Llama, Gemma y Mistral por ahora. Para modelos custom, revisa el CONTRIBUTING.md y adapta la clase CacheAdapter.
Que sigue despues de TurboQuant
Google confirmo que TurboQuant se integrara en Gemini Nano (la version de Gemini para Android) durante el tercer trimestre de 2026. Despues de seguir a este equipo desde los tiempos de T5, mi apuesta es que Apple respondera con su propia tecnica en WWDC.