128k de contexto en un desktop es un arrendamiento — la cache KV es la factura, contada en vivo
Dos tensores por capa por token: 16 GiB para un 8B con ventana llena. Elige un modelo, mueve el contexto, y mira el libro del inquilino contar la fórmula en vivo.
Llama 3.1 8B at 131,072 tokens in fp16: cache KV ≈ 16 GiB — tan grande como los pesos.
El «8B que cabe en 16 GiB» se vuelve un problema de 32 GiB.
La cache es lineal en el contexto y se asigna por adelantado — la RAM paga por 128k lo llenes o no.
El arreglo es aburrido: pon el contexto en lo que de verdad usas — una ventana de 32k cuesta un cuarto de la cache de 128k.
01EL MOSTRADOR DEL MEDIDOR
el inquilino es la cache kv — las ruedas hacen girar la factura que la tarjeta nunca imprime
CACHE = PESOSa ventana llena la cache es tan grande como el modelo al que pertenece — un arrendamiento de 32 GiB ya
INQUILINO LLAMA 3.1 8B · VENTANA 128k · 131,072 TOKENS · CACHE 16.00 GiB · PESOS 16.0 GiB · PARTE 100% · ALIMENTADO 0
las ruedas facturaron antes de que el odómetro se moviera — la asignación va por adelantado, llenar es opcional
02LA FÓRMULA QUE LAS FICHAS OMITEN
una fórmula pública movió cada dígito de esas ruedas
cache_bytes = 2 × layers × context × kv_heads × head_dim × bytes_per_element
«La ventana de contexto no es una opción que activas. Es un arrendamiento de memoria que pagas cada segundo que el servidor corre.»
def kv_cache_gib(layers, kv_heads, head_dim, ctx, bytes_per=2):
return 2 * layers * ctx * kv_heads * head_dim * bytes_per / 2**30
print(kv_cache_gib(32, 8, 128, 131_072)) # Llama 3.1 8B -> 16.0
print(kv_cache_gib(28, 4, 128, 131_072)) # Qwen2.5 7B -> 7.0
verify: kv_cache_gib(32, 8, 128, 131_072) → 16.0 · kv_cache_gib(28, 4, 128, 131_072) → 7.0
03DOS INQUILINOS, UN MOSTRADOR
una fórmula es aritmética hasta que cifra dos fichas de modelo reales lado a lado
| Modelo (fp16) | Capas × cabezas KV | Cache KV @ 128k | Pesos | Cache vs pesos |
|---|---|---|---|---|
| Llama 3.1 8B | 32 × 8 | ~16 GiB | ~16 GiB | ~100% |
| Qwen2.5 7B | 28 × 4 | ~7 GiB | ~15 GiB | ~47% |
pulsa la tecla 1 del mostrador — la misma ventana de 128k se re-mide en 7.0 GiB para qwen2.5 7b
config.json para encontrarlas, lo que te dice cómo estaba pensado ese número para leerse04DÓNDE SE DOBLA LA FACTURA
el medidor es honesto para la atención completa — cuatro dobleces antes de que firmes algo
Nadie lee 128,000 tokens. Tu RAM paga por todos ellos igual.
config.json públicos de los modelos (capas, cabezas KV, head_dim), tal como la expone Transformer Inference Arithmetic — el medidor del mostrador es esa misma fórmula en JavaScript; no hay bancos que comprar, a un print de tu propia terminal.
fin del libro del inquilino · nada fetchado · todo local