TurboQuant+: Compresión de Caché KV 6.4x para LLMs
TurboQuant+: Revolucionando la Inferencia LLM con Compresión de Caché KV 6.4x
La inferencia LLM local acaba de volverse drásticamente más eficiente. TurboQuant+ implementa el artículo TurboQuant de ICLR 2026 con integración lista para producción en llama.cpp, ofreciendo compresión de caché KV 4.6-6.4x manteniendo calidad y velocidad cercanas a q8_0.
🚀 Avances Clave
1. Familia de Formatos Multi-Bit
| Formato | Bits/Val | Compresión | PPL vs q8_0 | Caso de Uso |
|---|---|---|---|---|
| turbo4 | 4.25 | 3.8x | +0.23% | Mejor calidad/velocidad |
| turbo3 | 3.5 | 4.6x | +1.06% | Compresión máxima |
| turbo2 | 2.5 | 6.4x | +6.48% | Presión extrema de memoria |
turbo4 supera a q4_0 tanto en calidad (más cerca de q8_0) como en ratio de compresión.
2. Sparse V: Decodificación con Puerta de Atención
La característica estrella: omitir descuantización de posiciones V de baja atención.
- +22.8% velocidad de decodificación a 32K contexto
- Cero degradación PPL (validado 50 fragmentos wikitext-103, CI ±0.021)
- Funciona en TODOS los formatos (q8_0, q4_0, turbo3/4)
- Mejora NIAH: turbo4 = 31/33 vs 30/33 de q8_0
"La mayoría de los pesos de atención son insignificantes en contextos largos. Omitirlos." – Idea central
3. Paridad de Velocidad Alcanzada
M5 Max, Qwen 3.5 35B-A3B:
Prefill (32K contexto): turbo3 = 1.10x q8_0 (1204 vs 1098 tok/s) Decodificación: turbo4 = 0.93x q8_0 con Sparse V
PDF real de 24K: decodificación turbo4 = 63.7 tok/s (0.93x q8_0)
🔥 Primeros Pasos (5 Minutos)
Prototipo Python
git clone https://github.com/TheTom/turboquant_plus.git
cd turboquant_plus
python3 -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"
python3 -m pytest tests/ -v # 141 pruebas pasan
python3 benchmarks/demo.py # Demo rápido
Producción llama.cpp
git clone https://github.com/TheTom/llama-cpp-turboquant.git
cd llama-cpp-turboquant
git checkout feature/turboquant-kv-cache
cmake -B build -DGGML_METAL=ON -DCMAKE_BUILD_TYPE=Release
cmake --build build -j
# Ejecutar con caché turbo
./build/bin/llama-server -m your-model.gguf --cache-type-k turbo3 --cache-type-v turbo3 -c 262144
📊 Validación Probada en Batalla
✅ 511+ pruebas Python, 100% cobertura ✅ Qwen 3.5 35B-A3B (MoE) en M5 Max ✅ 9/9 NIAH aguja única con Sparse V (vs 7/9 baseline) ✅ 100% recuperación multi-clave hasta 32K ✅ Probado por la comunidad: Macs M1-M5, RTX 3090/4090/5090, AMD 6800XT
🎯 Por Qué Importa
Memoria: Caché KV 6.4x más pequeña = ejecutar modelos más grandes con contextos más largos Velocidad: Igualar prefill q8_0, 0.9x decodificación a 32K Calidad: turbo4 supera q4_0, solo +0.23% PPL vs q8_0
🚀 Futuro: TurboQuant+
- Asignación adaptativa de bits por capa
- Compresión con decaimiento temporal (ahorro de memoria 30-34%)
- Compresión consciente de MoE
- Backend CUDA (soporte NVIDIA)
Estado: v1 completa y lista para producción. Extensiones próximamente tras PR a upstream llama.cpp.
⭐ Dale estrella al repo y prueba turbo3 en tu próxima ejecución de contexto largo. Tu RAM (y factura de electricidad) te lo agradecerán.