Afinado Unsloth 2x Más Rápido

Afina LLMs 2x más rápido con 70% menos VRAM usando Unsloth en Clore.ai

Unsloth reescribe las partes críticas para el rendimiento de HuggingFace Transformers con kernels Triton optimizados a mano, ofreciendo 2x de velocidad de entrenamiento y 70% de reducción de VRAM sin pérdida de precisión. Es un reemplazo de fácil integración: tus scripts TRL/PEFT existentes funcionan sin cambios después de intercambiar la importación.

circle-check

Características clave

  • Entrenamiento 2x más rápido — kernels Triton personalizados para attention, RoPE, cross-entropy y RMS norm

  • 70% menos VRAM — checkpointing de gradientes inteligente y pesos mapeados en memoria

  • Reemplazo de HuggingFace listo para usar — un cambio de importación, nada más

  • QLoRA / LoRA / ajuste fino completo — todos los modos soportados de serie

  • Exportación nativa — guarda directamente en GGUF (todos los tipos de cuantización), adaptadores LoRA o modelo fusionado en 16 bits

  • Amplia cobertura de modelos — Llama 3.x, Mistral, Qwen 2.5, Gemma 2, DeepSeek-R1, Phi-4 y más

  • Gratis y de código abierto (Apache 2.0)

Requisitos

Componente
Mínimo
Recomendado

GPU

RTX 3060 12 GB

RTX 4090 24 GB

VRAM

10 GB

24 GB

RAM

16 GB

32 GB

Disco

40 GB

80 GB

CUDA

11.8

12.1+

Python

3.10

3.11

Precios de Clore.ai: RTX 4090 ≈ $0.5–2/día · RTX 3090 ≈ $0.3–1/día · RTX 3060 ≈ $0.15–0.3/día

Un modelo 7B con QLoRA de 4 bits cabe en ~10 GB de VRAM, haciendo viable incluso una RTX 3060.

Inicio rápido

1. Instalar Unsloth

2. Cargar un modelo con cuantización de 4 bits

3. Aplicar adaptadores LoRA

4. Preparar datos y entrenar

Exportando el modelo

Guardar solo el adaptador LoRA

Fusionar y guardar el modelo completo (float16)

Exportar a GGUF para Ollama / llama.cpp

Después de exportar, servir con Ollama:

Ejemplos de uso

Ajuste fino en un conjunto de datos de chat personalizado

Entrenamiento de alineación DPO / ORPO

Referencia de uso de VRAM

Modelo
Cuant
Método
VRAM
GPU

Llama 3.1 8B

4 bits

QLoRA

~10 GB

RTX 3060

Llama 3.1 8B

16 bits

LoRA

~18 GB

RTX 3090

Qwen 2.5 14B

4 bits

QLoRA

~14 GB

RTX 3090

Mistral 7B

4 bits

QLoRA

~9 GB

RTX 3060

DeepSeek-R1 7B

4 bits

QLoRA

~10 GB

RTX 3060

Llama 3.3 70B

4 bits

QLoRA

~44 GB

2× RTX 3090

Consejos

  • Usar siempre use_gradient_checkpointing="unsloth" — este es el mayor ahorro de VRAM, único de Unsloth

  • Establecer lora_dropout=0 — los kernels Triton de Unsloth están optimizados para dropout cero y funcionan más rápido

  • Usa packing=True en SFTTrainer para evitar desperdicio por padding en ejemplos cortos

  • Comienza con r=16 para el rango de LoRA — aumentarlo a 32 o 64 solo si la pérdida de validación se estanca

  • Monitorizar con wandb — añadir report_to="wandb" en TrainingArguments para el seguimiento de la pérdida

  • Ajuste del tamaño de lote — aumentar per_device_train_batch_size hasta acercarte al límite de VRAM, luego compensar con gradient_accumulation_steps

Solución de problemas

Problema
Solución

OutOfMemoryError durante el entrenamiento

Reducir el tamaño de batch a 1, disminuir max_seq_length, o usar cuantización de 4 bits

Errores de compilación de kernels Triton

Ejecuta pip install triton --upgrade y asegurar que el toolkit de CUDA coincida

Paso inicial lento (compilando)

Normal — Triton compila los kernels en la primera ejecución, en caché después

bitsandbytes Error de versión de CUDA

Instala la versión correspondiente: pip install bitsandbytes --upgrade

Picos de pérdida durante el entrenamiento

Reducir la tasa de aprendizaje a 1e-4, añadir pasos de warmup

El exportado a GGUF falla

Asegura suficiente RAM (2× el tamaño del modelo) y espacio en disco para la conversión

Recursos

Última actualización

¿Te fue útil?