Elija una GPU para su modelo
Describa su carga de trabajo y obtenga las máquinas aptas, de menor a mayor precio. Cómo se calcula la memoria de GPU, qué cubre el resultado y sus límites.
En la consola, abra Catalog y luego Launch by workload. Indique qué quiere hacer, con qué modelo, y su presupuesto y preferencias. Obtiene las máquinas donde cabe su carga de trabajo, de la más barata a la más cara, cada una con el motivo por el que cabe.
La respuesta es un cálculo, siempre igual para los mismos datos. No se reserva nada hasta que pulse Launch en una máquina.
Los tres pasos
- What you want to do (qué quiere hacer): ejecutar un modelo, hacer fine-tuning de un modelo, generar imágenes o abrir un notebook.
- Which model (qué modelo): elíjalo de la lista, luego su precisión (16 bits, 8 bits o 4 bits), el contexto por solicitud y cuántas solicitudes se ejecutan a la vez. Para un notebook sin modelo, indique la memoria de GPU que necesita.
- Budget and preferences (presupuesto y preferencias): un presupuesto, un precio máximo por hora, el nivel (Secure, Community o cualquiera) y los países donde debe funcionar la máquina.
EUcubre todos los Estados miembros de la Unión Europea.
Cada modelo muestra su número de parámetros, su licencia y un enlace a los datos con los que se dimensionó.
Cómo se calcula la memoria de GPU
Para un modelo de lenguaje, la memoria necesaria es la suma de cuatro líneas:
| Línea | Fórmula |
|---|---|
| Pesos del modelo | parámetros × bytes por parámetro: 2 en 16 bits, 1 en 8 bits, 0,5 en 4 bits |
| Caché KV | 2 × capas × cabezas KV × dimensión de cabeza × 2 bytes × contexto × solicitudes simultáneas |
| Margen adicional | 20 % de las dos líneas anteriores |
| Runtime de CUDA | 1 GiB por GPU |
Cada cifra proviene de la configuración publicada del modelo: parámetros, capas, cabezas KV, dimensión de cabeza, contexto máximo. El resultado muestra cada línea con su fórmula completada.
Ejemplo: Llama 3.1 8B en 16 bits
Con un contexto de 4096 tokens y una solicitud a la vez:
| Línea | Cálculo | GiB |
|---|---|---|
| Pesos del modelo | 8030 millones × 2 bytes | 14,96 |
| Caché KV | 2 × 32 × 8 × 128 × 2 bytes × 4096 × 1 | 0,50 |
| Margen adicional | 20 % de 15,46 | 3,09 |
| Runtime de CUDA | 1,00 | |
| Total | 19,55 |
Una GPU de 24 GiB lo admite. Una de 16 GiB, no. En 4 bits, el mismo modelo necesita unos 6,1 GiB.
La caché KV crece con el contexto y con el número de solicitudes: con 128 000 tokens para una sola solicitud, ocupa por sí sola 15,6 GiB. Ajuste el contexto a lo que usan sus solicitudes.
Fine-tuning
Fine-tune a model dimensiona un entrenamiento LoRA. El modelo base permanece congelado y se entrenan pequeños adaptadores:
- LoRA sobre una base de 16 u 8 bits: los pesos base, más adaptadores de rango 16 en las proyecciones de atención a 16 bytes por parámetro entrenable (peso, gradiente y estados de AdamW).
- QLoRA sobre una base de 4 bits: la base en NormalFloat de 4 bits, 4,127 bits por parámetro con doble cuantización, más los mismos adaptadores.
Se añaden las activaciones según la longitud de secuencia y el tamaño de lote que indique, con gradient checkpointing activado. El campo de contexto pasa a ser Sequence length y el de solicitudes, Batch size.
Las fórmulas provienen de trabajos publicados: LoRA, QLoRA, ZeRO para los estados del optimizador y recálculo de activaciones.
Generación de imágenes
Un pipeline de imágenes carga varias redes: el denoiser, sus codificadores de texto y un autoencoder. Los pesos de todas se cuentan con exactitud, y luego el margen y el runtime. El margen está pensado para una imagen a la resolución nativa del modelo; imágenes más grandes y lotes necesitan más. Por eso los resultados de imagen tienen una confianza baja.
Voz
Para Whisper, la caché KV del decodificador se dimensiona sobre su ventana de 30 segundos, para cada flujo de audio simultáneo.
Cómo se verifica una máquina
Una máquina es apta cuando su memoria de GPU admite el total:
- En una GPU, cuando una basta.
- En varias GPU de la misma máquina, para un modelo de lenguaje demasiado grande para una sola: los pesos y la caché KV se reparten por igual con paralelismo de tensores. Para ello, el número de cabezas de atención del modelo debe ser divisible entre el número de GPU.
- Los modelos de imagen, los de voz y el fine-tuning se verifican en una sola GPU.
La memoria de GPU de una máquina Secure proviene del centro de datos o de la ficha técnica del fabricante. En una máquina Community es la cifra que informa la máquina del proveedor, sin verificación de Node Lodge.
Cuando falta un dato (la máquina no informa su memoria de GPU, o un dato del modelo no está publicado), la máquina queda excluida. Ninguna máquina se recomienda a partir de una suposición.
Cómo leer el resultado
- GPU memory needed: el total, línea por línea, con los supuestos en que se basa.
- Recommended machines: las máquinas aptas, de la más barata a la más cara. Abra una fila para ver Why it fits y sus Limits: de dónde proviene la cifra de memoria, un margen estrecho, un límite de reserva, una máquina interrumpible.
- Budget covers: cuánto dura su presupuesto en esa máquina a su tarifa.
- Confidence: alta, media o baja. Alta para un modelo de lenguaje en 16 bits en una máquina cuya memoria proviene del centro de datos. Más baja cuando los pesos están cuantizados, cuando el modelo se reparte entre varias GPU, cuando la cifra proviene del informe de un proveedor, cuando el margen es estrecho, o para la generación de imágenes y el fine-tuning, que dependen más de la configuración.
- Alternatives: máquinas aptas que no cumplen una preferencia (por encima de su precio, otro nivel), y el mismo modelo con menor precisión cuando eso abre más máquinas o una más barata.
- Constraints applied: todo lo que la respuesta tuvo en cuenta.
Las máquinas fuera de los países elegidos nunca se ofrecen, ni siquiera como alternativas. Una máquina de ubicación desconocida no cuenta como situada en ellos.
Límites
- La velocidad no se estima. Los tokens por segundo o las imágenes por minuto solo aparecen una vez medidos en la máquina.
- La compatibilidad es un cálculo. Los frameworks difieren: un servidor de inferencia puede reservar más memoria de la que necesita, un script de entrenamiento puede guardar copias adicionales. Si cambia la configuración del framework, tenga en cuenta el margen.
- Máquinas disponibles ahora. Solo se verifican las máquinas Community en línea y las máquinas Secure en stock.
- Las máquinas Community funcionan en el hardware del propio proveedor. El proveedor puede leer la memoria de la sesión. Consulte Secure y Community.