<- Todos los términos

KV cache

Memoria que guarda las claves y valores de atención de cada token ya procesado, para que el modelo no los recalcule en cada nuevo token de salida. Vive en la VRAM y crece con la longitud del contexto y la concurrencia.

Qué es

Para generar el token N, un modelo atiende a los tokens 1..N-1. Sin caché volvería a procesar toda la secuencia en cada paso. El KV cache mantiene los tensores intermedios de clave/valor de esos tokens en la VRAM, así que cada nuevo token solo necesita una pasada hacia delante sobre sí mismo.

Por qué importa

El KV cache es lo que hace rápida la decodificación, pero también es lo principal que compite con los pesos del modelo por la VRAM. Su tamaño es aproximadamente 2 × capas × dim_oculta × tokens_de_contexto × bytes por secuencia, así que escala linealmente con la longitud del contexto y con el número de peticiones concurrentes.

Impacto en costo e infraestructura

En un modelo autoalojado, el KV cache fija a cuántos usuarios puedes servir a la vez en una GPU dada. Contextos largos + alta concurrencia pueden agotar la VRAM antes de que el cómputo sea el cuello de botella, obligando a una GPU más grande (y cara) o a varias GPU.

Técnicas como la cuantización del KV cache, la paged attention y la grouped-query attention existen precisamente para reducir esta huella.

Ejemplo

Para un modelo de 70B, el KV cache puede rondar los ~0,3-0,5 GB por cada 1K tokens de contexto por petición. Servir a 20 usuarios concurrentes con 16K de contexto cada uno son ~100-160 GB: más de lo que una sola H100 de 80 GB puede tener junto a los pesos.

Conceptos relacionados

Úsalo en Obolith

Preguntas frecuentes

¿El KV cache es lo mismo que la caché de prompt?

No. El KV cache es memoria de GPU transitoria usada dentro de una petición. La caché de prompt es una función de facturación que reutiliza un prefijo ya computado entre llamadas de API distintas.

Última revisión: 2026-09-01 · concepto atemporal