
Fine-Tuning de Llama 3: Guía Práctica para Tu Caso de Uso
Una guía práctica para ajustar los modelos Llama 3 de Meta — cubriendo selección de modelo, preparación de dataset, configuración LoRA, consejos de entrenamiento y despliegue como GGUF para inferencia local.
Llama 3 es una de las familias de modelos open-source más capaces disponibles. Su combinación de sólido rendimiento base, licencia permisiva y amplio soporte comunitario lo convierte en el punto de partida predeterminado para la mayoría de los proyectos de fine-tuning.
Esta guía recorre los detalles prácticos: qué variante de Llama 3 elegir, cómo preparar tus datos, qué configuraciones LoRA funcionan mejor y cómo desplegar el resultado localmente.
Eligiendo la Variante Correcta de Llama 3
Llama 3 8B
La variante de trabajo pesado. 8 mil millones de parámetros logra el equilibrio correcto entre capacidad y requisitos de recursos.
Ideal para:
- Tareas de clasificación y extracción
- Q&A específico de dominio
- Generación de output estructurado
- Aplicaciones que necesitan inferencia rápida en hardware modesto
- Equipos que ajustan por primera vez
Hardware: Se ajusta con LoRA en una sola GPU con 16 GB de VRAM. Ejecuta inferencia en cualquier máquina con 8+ GB de RAM (cuantizado a Q4).
Llama 3 70B
El peso pesado. Significativamente más capaz en razonamiento complejo, tareas multi-paso y generación creativa.
Ideal para:
- Tareas de razonamiento y análisis complejos
- Generación de contenido largo
- Tareas donde el modelo 8B se queda corto después del fine-tuning
- Aplicaciones con acceso a infraestructura multi-GPU
Hardware: Se ajusta con QLoRA en 2-4 GPUs con 24+ GB de VRAM cada una. Ejecuta inferencia en máquinas con 48+ GB de RAM (cuantizado a Q4).
Recomendación
Empieza con Llama 3 8B. Ajústalo con tus datos, evalúa los resultados, y solo pasa a 70B si el modelo 8B no cumple tu barra de calidad. En la mayoría de los casos, un modelo 8B bien ajustado supera a un modelo 70B con prompts en tareas específicas.
Preparando Tus Datos de Entrenamiento
Llama 3 usa un formato de plantilla de chat específico. Tus datos de entrenamiento deben coincidir con este formato para mejores resultados.
Formato de Chat
{"messages": [
{"role": "system", "content": "You are a medical coding assistant that assigns ICD-10 codes to clinical descriptions."},
{"role": "user", "content": "Patient presents with acute upper respiratory infection with fever and productive cough."},
{"role": "assistant", "content": "J06.9 - Acute upper respiratory infection, unspecified"}
]}
Formato de Instrucción
Para tareas más simples que no necesitan conversación multi-turno:
{"instruction": "Classify the sentiment of this product review.", "input": "The battery life is incredible but the screen is too dim outdoors.", "output": "mixed - positive (battery life), negative (screen brightness)"}
Consejos de Preparación de Datos para Llama 3
-
Usa el mensaje de sistema. Las variantes instruction-tuned de Llama 3 responden bien a system prompts. Incluye uno en cada ejemplo de entrenamiento para establecer el rol del modelo.
-
Haz coincidir tu formato de inferencia. Si usarás conversaciones multi-turno en tiempo de inferencia, entrena con ejemplos multi-turno. Si usarás formato de instrucción de turno único, entrena en consecuencia.
-
Mantén las respuestas enfocadas. Llama 3 8B tiene una ventana de contexto de 8,192 tokens. Los ejemplos de entrenamiento largos desperdician capacidad de contexto. Apunta a respuestas menores de 500 tokens donde sea posible.
-
Incluye casos límite. Llama 3 generaliza bien desde el fine-tuning, pero necesitas mostrarle los límites. Incluye ejemplos de entradas que el modelo debería rechazar, marcar como inciertas o manejar de manera diferente.
-
Apunta a 1,000-5,000 ejemplos. Para fine-tuning con LoRA en Llama 3 8B, este rango produce consistentemente buenos resultados. Por debajo de 500, el modelo puede no generalizar bien. Por encima de 10,000, los retornos decrecientes son claros.
Configuración LoRA
Configuración Recomendada para Llama 3 8B
| Parámetro | Valor | Notas |
|---|---|---|
| Rango LoRA (r) | 16 | Buen equilibrio entre capacidad y eficiencia |
| Alpha LoRA | 32 | 2x rango es el punto de partida estándar |
| Módulos objetivo | q_proj, k_proj, v_proj, o_proj, gate_proj, up_proj, down_proj | Apunta a todas las proyecciones de atención y MLP |
| Tasa de aprendizaje | 2e-4 | Estándar para LoRA en Llama 3 |
| Tamaño de lote | 4 | Con acumulación de gradiente de 4 (lote efectivo 16) |
| Épocas | 3 | Monitorea la pérdida de validación — detén temprano si diverge |
| Ratio de warmup | 0.03 | ~3% del total de pasos como warmup |
| Decaimiento de peso | 0.01 | Regularización ligera |
| Longitud máxima de secuencia | 2048 | Aumenta si tus ejemplos son más largos |
| Optimizador | AdamW | Opción estándar |
| Scheduler | Coseno | Decaimiento suave de la tasa de aprendizaje |
Para Llama 3 70B (QLoRA)
Usa las mismas configuraciones anteriores con estos ajustes:
| Parámetro | Valor | Notas |
|---|---|---|
| Rango LoRA (r) | 32 | Un modelo más grande se beneficia de mayor rango |
| Alpha LoRA | 64 | 2x rango |
| Cuantización | 4-bit (NF4) | Permite entrenar con menos GPUs |
| Tamaño de lote | 2 | Restricciones de memoria |
| Acumulación de gradiente | 8 | Lote efectivo 16 |
Consejos de Entrenamiento
Vigila el Sobreajuste
Llama 3 8B se ajusta rápidamente — frecuentemente converge dentro de 1-2 épocas en datasets más pequeños. Señales de sobreajuste:
- La pérdida de validación aumenta mientras la pérdida de entrenamiento continúa bajando
- Los outputs del modelo comienzan a repetir ejemplos de entrenamiento literalmente
- El rendimiento en entradas nuevas se degrada
Solución: reduce épocas, reduce la tasa de aprendizaje, o agrega más ejemplos de entrenamiento diversos.
Sensibilidad a la Tasa de Aprendizaje
Llama 3 es sensible a la tasa de aprendizaje. Si ves:
- La pérdida no disminuye: aumenta la tasa de aprendizaje a 5e-4
- La pérdida sube abruptamente al inicio: disminuye la tasa de aprendizaje a 1e-4
- La pérdida oscila: disminuye la tasa de aprendizaje y aumenta el warmup
Comparación Multi-Modelo
Uno de los patrones más útiles es ajustar el mismo modelo base con diferentes configuraciones LoRA o diferentes subconjuntos de tus datos, y luego comparar los outputs. Esto te ayuda a identificar:
- Si más datos realmente mejoran la calidad
- Qué rango LoRA equilibra mejor calidad y tamaño
- Si tus datos tienen problemas de calidad (si múltiples configuraciones producen resultados mediocres similares, el problema probablemente es la calidad de los datos, no la configuración)
En Ertas Studio, puedes ejecutar múltiples trabajos de entrenamiento en el mismo canvas y comparar outputs lado a lado.
Evaluando Tu Llama 3 Ajustado
Evaluación Cuantitativa
Para tareas de clasificación:
- Calcula precisión, recall y F1 en un conjunto de prueba reservado
- Compara contra el Llama 3 base (sin ajustar) en el mismo conjunto de prueba
- Compara contra una versión con prompts del modelo base
Para tareas de generación:
- Puntajes ROUGE para resumen
- Coincidencia exacta para extracción
- Métricas personalizadas relevantes a tu dominio
Evaluación Cualitativa
Ejecuta 50-100 prompts representativos a través del modelo base y tu versión ajustada. Haz que expertos del dominio evalúen:
- ¿El modelo usa la terminología del dominio correctamente?
- ¿Los outputs están formateados consistentemente?
- ¿El modelo rechaza o marca casos inciertos apropiadamente?
- ¿Hay nuevos modos de falla introducidos por el fine-tuning?
Mejoras Esperadas
En tareas específicas y bien definidas con buenos datos de entrenamiento, deberías ver:
| Métrica | Llama 3 8B Base (con prompts) | Llama 3 8B Ajustado |
|---|---|---|
| Precisión en la tarea | 60-75% | 85-95% |
| Consistencia de formato | 70-80% | 95-99% |
| Terminología de dominio | Inconsistente | Confiable |
| Tasa de alucinación | 10-20% | 2-5% |
Si no ves una mejora significativa, revisa la calidad de tus datos de entrenamiento antes de ajustar la configuración del modelo.
Desplegando Tu Llama 3 Ajustado
Exportar como GGUF
Después del entrenamiento, fusiona el adaptador LoRA con el modelo base y exporta como GGUF con cuantización Q4_K_M. Esto produce un archivo de ~4.5 GB (para Llama 3 8B) que se ejecuta en cualquier máquina con 8+ GB de RAM.
Desplegar con Ollama
# Crear un Modelfile
cat > Modelfile << 'EOF'
FROM ./llama-3-8b-my-task.gguf
SYSTEM "You are a medical coding assistant that assigns ICD-10 codes to clinical descriptions."
PARAMETER temperature 0.1
PARAMETER top_p 0.9
EOF
# Construir y ejecutar
ollama create medical-coder -f Modelfile
ollama run medical-coder "Patient presents with type 2 diabetes mellitus with diabetic nephropathy."
Desplegar con llama.cpp
./llama-server \
-m llama-3-8b-my-task.gguf \
--port 8080 \
--ctx-size 4096 \
--n-gpu-layers 35
Ajusta Llama 3 con Ertas Studio
Ertas Studio elimina la sobrecarga de infraestructura de todo este flujo de trabajo:
- Sube tu dataset JSONL — Studio valida formato y calidad de datos
- Selecciona Llama 3 8B (o 70B) del navegador de modelos
- Studio pre-llena las configuraciones LoRA recomendadas basándose en tu dataset
- Entrena en GPUs gestionadas en la nube — sin hardware que aprovisionar
- Compara ejecuciones lado a lado en el canvas
- Exporta como GGUF y despliega en cualquier lugar
Precio early bird: $14.50/mes fijo de por vida — aumentará a $34.50/mes en el lanzamiento. Únete a la lista de espera →
Lectura Adicional
- Cómo Ajustar un LLM: Guía Completa — el flujo de trabajo completo de fine-tuning
- Fine-Tuning vs RAG: Cuándo Usar Cada Uno — decide si el fine-tuning es adecuado para tu problema
- Ejecutando Modelos de IA Localmente — todo sobre despliegue local
Ship AI that runs on your users' devices.
Early bird pricing starts at $14.50/mo — locked in for life. Plans for builders and agencies.
Keep reading

Distilling Claude/GPT into a 7B Model for Production: Step-by-Step
A step-by-step tutorial for distilling the capabilities of Claude or GPT-4o into a 7B parameter model for local production deployment — from dataset generation through fine-tuning to GGUF export.

How to Distill Open-Source Models Legally: A Step-by-Step Guide
A practical guide to model distillation the right way: using open-source teacher models with permissive licenses, your own domain data, and a clear legal path to model ownership.

Getting Started with Ertas: Fine-Tune and Deploy Custom AI Models
A step-by-step guide to uploading datasets, fine-tuning models in Ertas Studio, and deploying GGUF models — all without ML expertise.