Saltar al contenido principal

Entrenando Tu Primer LLM con SFT

Este tutorial te lleva a través de cada paso del asistente para entrenar un modelo de lenguaje usando Supervised Fine-Tuning (SFT). SFT es la forma más común de enseñar a un modelo a seguir instrucciones.

Antes de Comenzar

Asegúrate de tener:
  • AITraining instalado (pip install aitraining)
  • Al menos 8GB de RAM (16GB recomendado)
  • Una GPU es útil pero no requerida (¡Apple Silicon funciona muy bien!)

Paso 0: Iniciar el Asistente

Verás el banner de bienvenida y las instrucciones.

Paso 1: Elegir Tipo de Trainer

Escribe 1 y presiona Enter para seleccionar entrenamiento LLM.
Escribe :help para ver explicaciones detalladas de lo que hace cada tipo de trainer.

Paso 2: Elegir Método de Entrenamiento

Escribe 1 y presiona Enter para seleccionar SFT.
default y sft son idénticos - usan el mismo código de entrenamiento. default es solo el fallback si no se especifica ningún trainer.

¿Qué Significan Estos?

Paso 3: Nombre del Proyecto

Ingresa un nombre para tu proyecto, como my-first-chatbot o presiona Enter para aceptar el predeterminado.
Si existe una carpeta con ese nombre, el asistente ofrece crear un nombre versionado (ej.: my-project-v2).

Paso 4: Selección de Modelo

Este es el paso más importante. El asistente muestra modelos populares de HuggingFace:

Eligiendo el Tamaño Correcto del Modelo

Usa /filter luego S para modelos pequeños.Recomendado: google/gemma-3-270m o meta-llama/Llama-3.2-1BEstos entrenarán en 15-30 minutos en Apple Silicon.
Usa /filter luego S o M.Recomendado: google/gemma-2-2b o meta-llama/Llama-3.2-3BHabilita cuantización más tarde para modelos más grandes.
Cualquier modelo hasta 10B funciona bien.Recomendado: meta-llama/Llama-3.2-8B o mistralai/Mistral-7B-v0.3
¡Ve a lo grande!Recomendado: meta-llama/Llama-3.1-70B con cuantización

Modelo Base vs Instruction-Tuned

Al seleccionar un modelo, verás dos tipos:
Regla general: Usa modelos base si quieres control total. Usa instruction-tuned (-it, -Instruct) si quieres una ventaja inicial.

Seleccionando Tu Modelo

Opción A: Escribe un número para seleccionar de la lista:
Opción B: Escribe un ID de HuggingFace directamente:
Opción C: Busca modelos específicos:

Paso 5: Configuración del Dataset

Entendiendo el Tamaño del Dataset

Crítico: ¡Combina el tamaño de tu dataset con el tamaño de tu modelo!
  • Modelos pequeños (< 1B params): Usa 1,000 - 10,000 ejemplos máximo
  • Modelos medianos (1-7B params): 10,000 - 100,000 ejemplos
  • Modelos grandes (7B+ params): 50,000+ ejemplos
¿Por qué? Los modelos pequeños hacen overfitting en datasets grandes. Un modelo de 270M entrenando en 52k ejemplos de Alpaca memorizará, no generalizará.

Opciones de Selección de Dataset

Usa un dataset preconstruido (más fácil):
Usa tus propios datos:
Usa un dataset de HuggingFace:

Análisis de Formato del Dataset

El asistente analiza automáticamente tu dataset:
Escribe y para habilitar la conversión automática. Esto asegura que tus datos funcionen correctamente con el template de chat del modelo.

Splits de Entrenamiento/Validación

Presiona Enter para usar el split predeterminado train.
Si tu dataset tiene un split de validación (validation, test), ingrésalo aquí. De lo contrario, presiona Enter para omitir.

Máximo de Muestras (Pruebas)

Para tu primer entrenamiento: Ingresa 100 o 500 para hacer una ejecución de prueba rápida. Una vez que funcione, elimina el límite y entrena en el dataset completo.

Paso 6: Configuración Avanzada (Opcional)

Para tu primer entrenamiento, presiona Enter para omitir esto y usar valores predeterminados inteligentes.

Cuándo Configurar Opciones Avanzadas

Paso 7: Revisar e Iniciar

Presiona Enter para iniciar el entrenamiento!

Qué Sucede Después

  1. El modelo se descarga (solo la primera vez)
  2. El dataset se carga y convierte
  3. El entrenamiento comienza con actualizaciones de progreso
  4. El panel W&B LEET muestra métricas en tiempo real (si está habilitado)
  5. Tu modelo entrenado se guarda en la carpeta del proyecto

Probando Tu Modelo

Después de que el entrenamiento complete:
¡Abre http://localhost:7860/inference y carga tu modelo desde ./my-first-chatbot para probarlo!

Problemas Comunes

  • Usa un modelo más pequeño (filtrar por tamaño)
  • Habilita LoRA en opciones avanzadas
  • Reduce el tamaño del batch
  • Habilita cuantización (int4)
  • Verifica el formato de tu dataset - Prueba una tasa de aprendizaje más alta
  • Asegúrate de que tus datos tengan las columnas correctas
  • Habilita precisión mixta (bf16) en opciones avanzadas
  • Usa un dataset más pequeño primero
  • Habilita LoRA

Próximos Pasos

Entendiendo Modelos

Inmersión profunda en la selección de modelos

Guía de Datasets

Prepara tus propios datos de entrenamiento

Entrenamiento DPO

Entrena con datos de preferencia

Eficiencia LoRA

Entrena modelos grandes en hardware limitado