Cuánta VRAM necesita realmente un modelo.
Dos cifras lo deciden: los pesos, que son fijos, y la caché KV, que crece con la cantidad de contexto que sirve. Casi todas las respuestas equivocadas vienen de estimar la segunda a partir de la primera.
La respuesta corta
- Weights
- Parámetros en miles de millones × bytes por parámetro. 70B en 4 bits son 35 GB.
- Caché KV
- 2 × capas × cabezas KV × dimensión de cabeza × bytes, por token. No tiene nada que ver con el número de parámetros.
- Overhead
- Añada alrededor de un 15 % para las activaciones, el contexto de CUDA y la fragmentación del asignador de memoria.
- La trampa
- Cuantizar los pesos a 4 bits no cuantiza la caché. Permanece en FP16 en todos los stacks habituales.
La fórmula
Aquí no hay ninguna regla general que sobreviva al contacto con un segundo modelo. Todo el cálculo son tres líneas, y merece la pena hacerlas en lugar de confiar en un multiplicador.
# 1. Weights
weights_gb = parameters_in_billions × bytes_per_parameter
# 2. KV cache, per token — then multiplied by the context you serve
bytes_per_tok = 2 × layers × kv_heads × head_dim × cache_bytes
cache_gb = bytes_per_tok × context_tokens × batch / 1024³
# 3. Everything else
total_gb = (weights_gb + cache_gb) × 1.15
El 2 se debe a que hay dos tensores por token, K y V. bytes_per_parameter es 2 para BF16, 1 para FP8, 0.5 para 4 bits. cache_bytes es un número independiente, y esa separación es la fuente más común de una respuesta equivocada — vea más abajo.
Pesos
La mitad fácil. Es exactamente lineal en el número de parámetros, y la única decisión es la precisión.
| Modelo | BF16 / FP16 | FP8 | 4-bit (AWQ, GPTQ) |
|---|---|---|---|
| Llama 3.1 8B | 16.0 GB | 8.0 GB | 4.0 GB |
| Qwen 3 32B | 64.0 GB | 32.0 GB | 16.0 GB |
| Llama 3.3 70B | 140.0 GB | 70.0 GB | 35.0 GB |
| Llama 3.1 405B | 810.0 GB | 405.0 GB | 202.5 GB |
La cuantización en 4 bits cuesta calidad, y cuánto depende mucho más del modelo que del método. Es el intercambio correcto cuando supone la diferencia entre una tarjeta y cuatro; es un mal intercambio cuando ya tiene margen de sobra.
La caché KV
La mitad difícil, y la que decide si una máquina es adecuada a 4k e inútil a 128k. Depende de las capas y las cabezas KV — no de lo grande que sea el modelo.
| Modelo | Por token | 4k de contexto | 8k de contexto | 32k de contexto | 128k de contexto |
|---|---|---|---|---|---|
| Llama 3.1 8B | 128 KB | 0.5 GB | 1.0 GB | 4.0 GB | 16.0 GB |
| Gemma 3 27B | 496 KB | 1.9 GB | 3.9 GB | 15.5 GB | 62.0 GB |
| Llama 3.3 70B | 320 KB | 1.3 GB | 2.5 GB | 10.0 GB | 40.0 GB |
| DeepSeek V3 671B-A37B (MoE) | 70 KB | 0.3 GB | 0.5 GB | 2.2 GB | 8.8 GB |
| Llama 3.1 405B | 504 KB | 2.0 GB | 3.9 GB | 15.8 GB | 63.0 GB |
Lea la última columna antes que la primera. Con un contexto de 4k, la caché es un error de redondeo en todos los modelos de aquí; a 128k es mayor que los pesos de un modelo de 70B en 4 bits. DeepSeek V3 es la excepción porque su atención latente comprime la caché por diseño — por eso resulta utilizable con contexto largo pese a ser el modelo más grande de la lista.
Dónde fallan las estimaciones
Escalar la caché a partir del número de parámetros. El error más común, y el que se muestra arriba. Un modelo de 27B puede necesitar más caché que uno de 70B.
Suponer que unos pesos en 4 bits implican una caché en 4 bits. No es así. AWQ y GPTQ solo cuantizan los pesos; la caché permanece en FP16 a menos que active explícitamente FP8 KV. Un modelo de 70B en 4 bits y contexto de 128k son 35 GB de pesos y 40 GB de caché.
Dimensionar para una sola solicitud. La caché es por secuencia concurrente. Servir a ocho usuarios a la vez necesita ocho veces la caché — vea más abajo.
Olvidar la sobrecarga. Las activaciones, el contexto de CUDA y la fragmentación del asignador de memoria son reales. El 15 % es un margen deliberadamente prudente; ignorarlo por completo es la forma en que un modelo que «cabe» no llega a cargar.
Sumar la VRAM total entre tarjetas. Cuatro tarjetas de 24 GB no son una tarjeta de 96 GB. El paralelismo tensorial puede dividir un modelo entre ellas, pero entonces cada capa se sincroniza a través del enlace — consulte la guía de NVLink.
Dimensionar un MoE por sus parámetros activos. DeepSeek V3 activa 37B por token, pero debe mantener los 671B completos en memoria. Los parámetros activos predicen la velocidad; los parámetros totales deciden si llega a cargar.
Ejemplos resueltos
Memoria total necesaria, pesos más caché más sobrecarga, con contexto de 8k y una solicitud. Es el mismo cálculo que el configurador ejecuta sobre cada configuración del catálogo.
| Modelo | BF16 / FP16 | FP8 | 4-bit (AWQ, GPTQ) | Nodo más pequeño que cabe |
|---|---|---|---|---|
| Llama 3.1 8B | 20 GB | 10 GB | 6 GB | NVIDIA L4 |
| Mistral Small 24B | 57 GB | 28 GB | 15 GB | NVIDIA L4 |
| Gemma 3 27B | 67 GB | 33 GB | 20 GB | NVIDIA L4 |
| Qwen 3 32B | 76 GB | 38 GB | 21 GB | NVIDIA L4 |
| Llama 3.3 70B | 164 GB | 82 GB | 43 GB | 2 × NVIDIA L4 |
| Mixtral 8×22B (MoE) | 326 GB | 163 GB | 83 GB | 4 × NVIDIA L4 |
| Qwen 3 235B-A22B (MoE) | 542 GB | 271 GB | 137 GB | 8 × NVIDIA L4 |
| DeepSeek V3 671B-A37B (MoE) | 1,544 GB | 772 GB | 386 GB | 8 × NVIDIA A100 PCIe |
| Llama 3.1 405B | 936 GB | 468 GB | 237 GB | 10 × NVIDIA L4 |
La última columna es el nodo más barato de nuestro catálogo que aloja el modelo en 4 bits y contexto de 8k, con la velocidad de generación de flujo único que permite el ancho de banda de memoria. Las cifras de rendimiento son deliberadamente conservadoras y están calibradas frente a mediciones publicadas — trátelas como un mínimo garantizado, no como una promesa.
Servir más de una solicitud
Aquí es donde una máquina dimensionada para una demo se convierte en una máquina que no puede servir un producto. Los pesos se pagan una vez; la caché se paga por secuencia concurrente.
| Solicitudes concurrentes | 4k de contexto | 8k de contexto | 32k de contexto |
|---|---|---|---|
| 1 solicitud | 42 GB | 43 GB | 52 GB |
| 4 solicitudes | 46 GB | 52 GB | 86 GB |
| 16 solicitudes | 63 GB | 86 GB | 224 GB |
| 64 solicitudes | 132 GB | 224 GB | 776 GB |
Llama 3.3 70B en 4 bits son 35 GB de pesos, haga lo que haga. Todo lo que supere los 35 GB en esa tabla es caché. Por eso «funcionaba bien en mi portátil» y «se cayó en producción» son el mismo modelo en la misma tarjeta.
--max-model-len al contexto que realmente sirve: vLLM reserva caché para el máximo declarado, así que declarar 128k cuando sirve 8k desperdicia dieciséis veces la memoria que necesita.
Qué máquina implica eso
Tres reglas prácticas que se derivan de todo lo anterior, en el orden en que importan.
- Una sola tarjeta gana a varias, siempre que sea posible. Sin sharding, sin sincronización entre capas, sin interconexión en la que pensar. Si su modelo, con su contexto, cabe en una sola tarjeta, compre esa tarjeta.
- Dimensione para su contexto real y su concurrencia real, no para el máximo anunciado del modelo. El máximo anunciado es una capacidad, no un requisito.
- Cuando tenga que aplicar sharding, prefiera NVLink. Dividir entre cuatro tarjetas PCIe funciona; dividir entre cuatro tarjetas NVLink funciona y es notablemente más rápido. La siguiente guía trata exactamente de cuándo merece la pena pagar esa diferencia.
El configurador ejecuta este cálculo en tiempo real sobre las 41 configuraciones: elija un modelo, una precisión y una longitud de contexto, y le indica qué nodos lo alojan, cuáles lo alojan en una sola tarjeta, y cuánto cuesta cada uno al mes. Usa la fórmula de esta página, así que si no está de acuerdo con nuestra aritmética ahora puede decir exactamente dónde.
Compruebe su propio modelo con cada máquina que alquilamos.
El configurador hace la aritmética anterior para las 41 configuraciones, antes de que pague nada.
Otras guías
- Dimensionamiento · 7 min
NVLink o PCIe: cuál necesita su carga de trabajo
Cuándo el enlace entre tarjetas decide su rendimiento, cuándo no cambia nada, y cómo saber en qué caso está antes de pagar por el nodo equivocado.
Leer la guía - Dimensionamiento · 9 min
Elegir una tarjeta para modelos de imagen y vídeo
Cuánta VRAM necesitan FLUX, SDXL, SD 3.5 y Wan 2.1, qué tarjeta de nuestro catálogo aloja cada uno, y por qué la más barata que cabe rara vez es la más indicada.
Leer la guía - Dimensionamiento · 10 min
Elegir un formato de cuantización
Lo que cuestan AWQ, GPTQ, GGUF y FP8 en memoria, velocidad y calidad — y por qué el formato con los pesos más pequeños rara vez da el modelo más pequeño.
Leer la guía