Elección de GPU para ajuste fino de LLM (guía de VRAM)
De 7B a 70B: calculamos la VRAM necesaria para ajuste fino completo y LoRA; explicamos el efecto del tamaño de batch, la longitud de secuencia y la cuantización en el presupuesto.
01
¿Por qué la VRAM es determinante?
Durante el ajuste fino, los pesos del modelo, los gradientes, el estado del optimizador (unos dos tercios más que los pesos para Adam) y las activaciones conviven en la memoria. Si este total no cabe en la VRAM, el entrenamiento no arranca; y aunque quepa, las cargas que trabajan al límite sufren presión de memoria y la eficiencia de la GPU se desploma.
Por eso la elección de GPU es ante todo una cuestión de memoria: una tarjeta de velocidad media con la VRAM adecuada siempre es más eficiente que una tarjeta rápida con VRAM insuficiente.
02
Necesidades realistas según el tamaño del modelo
Los valores siguientes son rangos prácticos para entrenamiento en bf16 y longitudes de secuencia típicas; a medida que aumentan la longitud de secuencia y el tamaño de batch, te acercas al límite superior.
- Ajuste fino completo de 7B: pesos ~14 GB + estado de Adam ~56 GB + gradientes ~14 GB → en la práctica 2 × 80 GB con holgura, 1 × 80 GB justo.
- Ajuste fino completo de 13B: se recomiendan 2 × 80 GB.
- Ajuste fino completo de 34B: hacen falta 4 × 80 GB de clase.
- Ajuste fino completo de 70B: imprescindible la clase 8 × 80 GB (A100/H100) con paralelismo multitarjeta.
- LoRA/QLoRA: modelos de 7–13B caben en una tarjeta de 24–48 GB; para 70B, QLoRA en una tarjeta de 80 GB es la práctica habitual.
03
LoRA y cuantización para el presupuesto
LoRA congela las matrices de pesos y entrena solo pequeñas matrices de actualización de rango bajo; la proporción de parámetros entrenables suele estar entre el %0,1 y el %1. Esto elimina la mayor parte del estado del optimizador y de la memoria de gradientes.
QLoRA lleva esto un paso más allá: el modelo base se cuantiza a 4 bits (NF4) y se eleva selectivamente a 16 bits durante el cálculo. Es el estándar para que equipos relativamente pequeños ajusten modelos de clase 70B en una sola tarjeta; la pérdida de calidad depende de la tarea y de la calidad de los datos, y siempre debe medirse.
04
Efecto del tamaño de batch y la longitud de secuencia
La memoria de activaciones crece de forma aproximadamente lineal con la longitud de secuencia y de forma cuadrática en la capa de atención. Pasar una secuencia de 2.048 a 8.192 tokens aumenta notablemente la memoria de entrenamiento sin cambiar nada en el peso del modelo.
El batch efectivo = batch por tarjeta × pasos de acumulación de gradientes. Si no cabe en memoria, reduce primero la longitud de secuencia y el batch por tarjeta, y vuelve luego al batch efectivo deseado con acumulación de gradientes.
05
Recomendaciones prácticas de elección
- Clase 24 GB (p. ej. RTX 4090): ajuste fino LoRA de 7–13B; ideal para ciclos de prueba y desarrollo rápidos.
- Clase 48 GB (p. ej. L40S/A6000): ajuste fino completo de 7B o QLoRA de 13–34B.
- Clase 80 GB (A100/H100): QLoRA de 70B, ajuste fino completo de 13B; el estándar por nodo en trabajos multitarjeta.
- Si necesitas entrenamiento multitarjeta, alquila las tarjetas no por separado sino el mismo nodo/clúster conjunto; NVLink y la red de baja latencia son críticos.
06
Lista de verificación
- Número de parámetros del modelo y método objetivo (completo / LoRA / QLoRA).
- Longitud de secuencia máxima y tamaño de batch efectivo objetivo.
- Tamaño del conjunto de datos y necesidad de almacenamiento persistente en disco.
- Mide el uso real de memoria con un alquiler de prueba corto; valida la tabla de cálculo en el campo.
Los artículos de esta página son contenido de ejemplo; se marcan como borradores no publicados hasta que se conecte el CMS.