
Cómo Destilar Modelos Open-Source Legalmente: Guía Paso a Paso
Una guía práctica para la destilación de modelos de la forma correcta: usando modelos maestros open-source con licencias permisivas, tus propios datos de dominio y un camino legal claro hacia la propiedad del modelo.
La controversia Anthropic/DeepSeek mostró lo que sucede cuando la destilación sale mal: 24,000 cuentas baneadas, titulares internacionales y posibles acciones legales. Pero la técnica en sí es sólida — el problema fue la fuente, no el método.
Esta guía recorre la destilación legal de modelos de principio a fin. Modelos maestros open-source con licencias permisivas. Tus propios datos de dominio. Un camino claro desde el entrenamiento hasta el despliegue con propiedad total del modelo y cero riesgo legal.
Si has estado observando el debate sobre destilación y pensando "tiene que haber una forma correcta de hacer esto" — la hay. Aquí te mostramos cómo.
Destilación Legal vs. Ilegal: La Línea Clara
La distinción es más simple de lo que sugieren los titulares.
Destilación legal: Usar modelos open-source con licencias permisivas como maestros. La licencia te otorga el derecho de crear obras derivadas, incluido el entrenamiento de modelos más pequeños con las salidas del maestro. Estás ejerciendo derechos que el creador del modelo te otorgó explícitamente.
Destilación ilegal (o que viola los ToS): Usar modelos de API cerrada (GPT-4, Claude, Gemini) como maestros en contra de sus Términos de Servicio. El panorama legal aún está evolucionando, pero la prohibición contractual es clara.
La prueba: Antes de usar cualquier modelo como maestro, lee su licencia. Si permite obras derivadas y uso comercial, estás en regla. Si prohíbe usar las salidas para entrenar modelos competidores, no lo hagas.
Paso 1: Elige Tu Modelo Maestro Open-Source
Tu modelo maestro determina el techo de calidad de tu estudiante. Elige con cuidado.
Comparación de Licencias
| Modelo | Licencia | Destilación Permitida | Uso Comercial | Atribución Requerida |
|---|---|---|---|---|
| Llama 3 (8B-405B) | Meta Community | Sí | Sí (menos de 700M MAU) | Sí |
| Qwen 2.5 (7B-72B) | Apache 2.0 | Sí | Sí | Sí |
| Mistral (7B-8x22B) | Apache 2.0 | Sí | Sí | Sí |
| DeepSeek-R1 (open weights) | MIT | Sí | Sí | Mínima |
| Gemma 2 (2B-27B) | Gemma Terms | Sí | Sí | Sí |
| Phi-3 (3.8B-14B) | MIT | Sí | Sí | Mínima |
Todos estos modelos permiten explícitamente crear obras derivadas, incluidos modelos destilados. El camino legal es claro.
Qué Maestro Elegir
Para razonamiento general y seguimiento de instrucciones: Llama 3 70B o Qwen 2.5 72B. Ambos son modelos robustos de propósito general que producen datos de entrenamiento de alta calidad en múltiples dominios.
Para tareas de programación y técnicas: DeepSeek-R1 o Qwen 2.5 Coder. Rendimiento sólido en salida estructurada y generación de código.
Para tareas multilingües: Qwen 2.5 destaca en múltiples idiomas. Llama 3 es predominantemente inglés pero competente en los idiomas principales.
Para entornos con restricciones: Si no puedes ejecutar un modelo de 70B, Llama 3 8B o Qwen 2.5 14B son maestros sólidos para tareas específicas de dominio donde complementas con tus propios datos.
El mejor modelo para fine-tuning en 2026 depende de tu caso de uso específico, pero cualquier modelo de la tabla anterior te da un punto de partida legalmente limpio.
Paso 2: Configura el Maestro
Necesitas ejecutar tu modelo maestro en un entorno donde puedas generar datos de entrenamiento a escala. Tres opciones:
Opción A: Despliegue Local
Ejecuta el maestro en tu propio hardware usando Ollama, vLLM o llama.cpp. Esto te da control total y sin límites de uso.
Requisitos para un modelo de 70B:
- 2x NVIDIA A100 (80GB) o equivalente
- 128GB+ de RAM del sistema
- Espera 10-30 tokens/segundo para generación
Requisitos para un maestro de 7B-14B:
- Una sola NVIDIA RTX 4090 o Apple M2 Ultra
- 32GB+ de RAM
- Espera 30-80 tokens/segundo
Opción B: Alquiler de GPU en la Nube
Usa proveedores de GPU en la nube como RunPod, Lambda o similares para crear instancias de inferencia temporales. Es rentable para generar datos de entrenamiento en lote — solo pagas por las horas que necesitas.
Costo típico: $2-5/hora por una instancia A100. Puedes generar miles de ejemplos de entrenamiento en pocas horas.
Opción C: Proveedores de API Open-Source
Servicios como Together AI, Fireworks o Groq ofrecen acceso API a modelos open-source. Dado que estás usando los modelos bajo sus licencias open-source (no una API propietaria), generar datos de entrenamiento desde estos endpoints es legalmente equivalente a ejecutar el modelo localmente.
Verifica los términos del proveedor para confirmar que no agregan restricciones adicionales a la licencia open-source del modelo.
Paso 3: Genera Datos de Entrenamiento Sintéticos desde Tu Dominio
Aquí es donde la destilación se cruza con el fine-tuning — y donde se crea el valor real.
En lugar de destilar capacidades genéricas del maestro, usas el maestro para procesar tu contenido específico de dominio. El resultado son datos de entrenamiento que combinan la capacidad lingüística del maestro con tu conocimiento propietario.
El Proceso
1. Prepara tu material fuente. Reúne tu contenido específico de dominio:
- Registros de soporte al cliente y tickets resueltos
- Documentación de producto y artículos de base de conocimiento
- Transcripciones de llamadas de ventas y preguntas frecuentes
- Documentos específicos de la industria y textos regulatorios
- Cualquier dato estructurado específico de tu negocio
2. Diseña tus prompts. Crea plantillas de prompts que pidan al maestro realizar tu tarea objetivo usando tu material fuente como contexto.
Por ejemplo, si estás construyendo un modelo de clasificación de soporte:
Given this support ticket:
"{ticket_text}"
Classify into one of these categories: {your_categories}
Respond with only the category name.
3. Genera a escala. Ejecuta tu material fuente a través del modelo maestro. Para cada entrada, recopila la salida. Esto crea tu dataset de entrenamiento.
Tamaños objetivo de dataset:
- Mínimo viable: 500 ejemplos (sorprendentemente efectivo para tareas bien definidas)
- Base sólida: 1,000-2,000 ejemplos
- Calidad de producción: 2,000-5,000 ejemplos
- Tareas complejas: 5,000-10,000 ejemplos
Más datos no siempre es mejor. Un dataset bien curado de 500 ejemplos de alta calidad típicamente supera a 5,000 ruidosos.
4. Agrega tu señal propietaria. El maestro genera salidas competentes. Tu experiencia de dominio las hace excelentes. Revisa los datos generados y:
- Corrige cualquier salida que no cumpla tus estándares de calidad
- Agrega ejemplos donde el maestro falló (casos extremos, matices específicos del dominio)
- Asegura que tu formato de salida sea consistente en todos los ejemplos
- Verifica que la terminología del dominio se use correctamente
Este paso es lo que separa la destilación genérica del fine-tuning específico de dominio. El maestro proporciona la capacidad lingüística. Tus datos y revisión proporcionan la experiencia de dominio.
Paso 4: Prepara el Dataset
Los datasets de entrenamiento para fine-tuning típicamente usan formato JSONL — un objeto JSON por línea, con cada objeto conteniendo la estructura de conversación.
Formato
{"messages": [{"role": "system", "content": "You are a support classifier for Acme Corp."}, {"role": "user", "content": "My invoice is wrong"}, {"role": "assistant", "content": "billing_issue"}]}
{"messages": [{"role": "system", "content": "You are a support classifier for Acme Corp."}, {"role": "user", "content": "Can't log in"}, {"role": "assistant", "content": "account_access"}]}
Filtrado de Calidad
Antes de entrenar, limpia tu dataset:
- Elimina duplicados. Los ejemplos casi idénticos agregan ruido sin valor.
- Elimina contradicciones. Si la misma entrada mapea a diferentes salidas, resuelve el conflicto.
- Valida la consistencia del formato. Cada ejemplo debe seguir la misma estructura de salida.
- Verifica alucinaciones. Revisa las salidas del maestro buscando errores factuales contra tu material fuente.
- Balancea categorías. Si estás entrenando un clasificador, asegura representación razonable en todas las categorías.
Un dataset con 1,000 ejemplos limpios superará a uno con 5,000 desordenados. La calidad supera a la cantidad siempre.
¿No quieres gestionar archivos JSONL y configuraciones de entrenamiento? Ertas maneja la preparación de datasets visualmente. Únete a la lista de espera →
Paso 5: Ajusta el Modelo Estudiante
Ahora entrenas tu modelo estudiante más pequeño con el dataset que has preparado. Aquí es donde el conocimiento destilado se comprime en un modelo desplegable.
Eligiendo el Estudiante
Tu estudiante debe ser más pequeño que tu maestro — ese es el punto de la destilación. Opciones comunes:
- Maestro 70B → Estudiante 7B-14B — El punto óptimo para la mayoría de despliegues de producción
- Maestro 14B → Estudiante 3B-7B — Para despliegue en el edge o entornos con recursos limitados
- Misma familia preferida — Destilar Llama 70B a Llama 7B funciona mejor que la destilación entre familias
Enfoque de Entrenamiento: LoRA/QLoRA
El fine-tuning completo de incluso un modelo de 7B requiere memoria GPU significativa. LoRA (Low-Rank Adaptation) y QLoRA (Quantized LoRA) hacen esto práctico:
- LoRA agrega pequeños adaptadores entrenables (~50-200MB) sobre pesos base congelados
- QLoRA combina LoRA con cuantización de 4 bits, reduciendo aún más los requisitos de memoria
- Un modelo de 7B puede ajustarse con QLoRA en una sola GPU con 24GB de VRAM
Parámetros clave de entrenamiento:
- Learning rate: 1e-4 a 2e-4
- Batch size: 4-8 (con acumulación de gradientes)
- Épocas: 2-4 (más datos = menos épocas necesarias)
- LoRA rank: 16-64 (mayor = más capacidad, más memoria)
Usando Ertas
Si prefieres saltarte la configuración por completo, Ertas maneja este paso visualmente:
- Sube tu dataset JSONL (o importa desde Hugging Face)
- Selecciona tu modelo base
- Ajusta los parámetros de entrenamiento a través de la interfaz (o usa los valores recomendados)
- Inicia el entrenamiento — rastrea el progreso en tiempo real
- Compara resultados lado a lado si ejecutas múltiples experimentos
Sin Python. Sin YAML. Sin CLI. La plataforma maneja la infraestructura y devuelve tu modelo ajustado.
Paso 6: Evalúa Estudiante vs. Maestro
Antes de desplegar, verifica que tu modelo estudiante cumple tu estándar de calidad.
Evaluación Automatizada
Ejecuta tanto el maestro como el estudiante en un conjunto de prueba reservado (ejemplos no usados en el entrenamiento). Compara:
- Precisión — ¿El estudiante produce salidas correctas?
- Cumplimiento de formato — ¿El estudiante sigue la estructura de salida esperada?
- Consistencia — ¿El estudiante da la misma respuesta para entradas similares?
- Latencia — ¿Qué tan rápido responde el estudiante? (Debería ser más rápido que el maestro)
Evaluación Humana
Para tareas subjetivas (escritura, conversación, resumen), las métricas automatizadas no cuentan toda la historia. Ejecuta una evaluación ciega:
- Genera 50-100 salidas tanto del maestro como del estudiante con las mismas entradas
- Presenta las salidas lado a lado sin etiquetas
- Haz que un experto de dominio califique calidad, precisión y adecuación
- Rastrea dónde el estudiante se queda corto — estas brechas informan tu próxima iteración de entrenamiento
Benchmarks Objetivo
Para tareas específicas de dominio con datos de entrenamiento bien curados, deberías esperar:
- 90-95% de precisión en tareas de clasificación y extracción
- Dentro del 5-10% de la calidad del maestro en tareas de generación
- 3-10x inferencia más rápida que el maestro (dependiendo de la relación de tamaño)
- Igualando o superando GPT-4 con prompt engineering en tareas estrechas y bien definidas
Si tu estudiante no alcanza, la solución generalmente es mejores datos de entrenamiento — no un modelo estudiante más grande. Regresa al Paso 3 y agrega más ejemplos de alta calidad en las áreas donde el estudiante tiene dificultades.
Paso 7: Exporta a GGUF y Despliega
Una vez que tu modelo estudiante pasa la evaluación, expórtalo para despliegue en producción.
Exportación a GGUF
GGUF es el formato estándar para despliegue local de modelos. Es compatible con:
- Ollama — despliegue más simple, un solo comando para ejecutar
- llama.cpp — ligero, funciona en CPU y GPU
- LM Studio — aplicación de escritorio con interfaz
- vLLM — servicio de producción de alto rendimiento
Opciones de Cuantización
GGUF soporta múltiples niveles de cuantización que intercambian tamaño del modelo por calidad:
- Q8 — Mayor calidad, ~8GB para un modelo de 7B
- Q5 — Buena calidad con menor tamaño, ~5.5GB para un modelo de 7B
- Q4 — Calidad aceptable para la mayoría de tareas, ~4.5GB para un modelo de 7B
Para tareas específicas de dominio donde el modelo ha sido ajustado con datos de alta calidad, la cuantización Q5 típicamente mantiene 95%+ de la calidad a precisión completa. Comienza ahí y ajusta según tus requisitos de calidad.
Despliegue
# With Ollama
ollama create my-model -f Modelfile
ollama run my-model
# With llama.cpp
./server -m my-model.gguf --port 8080
Tu modelo ahora se ejecuta localmente. Sin llamadas API. Sin costos por token. Sin proveedor que pueda descontinuarlo. Sin ToS que cambien debajo de ti.
El Flujo de Trabajo de Ertas: Todo Esto Sin CLI
Los pasos anteriores funcionan. También son mucho trabajo manual — configurar entornos de inferencia, gestionar archivos JSONL, configurar ejecuciones de entrenamiento, manejar cuantización y exportación.
Ertas comprime todo este pipeline en una interfaz visual:
- Sube tu dataset (o importa desde Hugging Face via URL)
- Selecciona tu modelo base de las opciones open-source soportadas
- Configura y entrena con controles visuales y valores recomendados
- Evalúa con herramientas de comparación integradas
- Exporta a GGUF con un clic
Todo el proceso — desde la subida del dataset hasta el archivo GGUF desplegable — toma minutos en lugar de horas. Sin entorno Python que gestionar. Sin aprovisionamiento de GPU. Sin archivos de configuración YAML.
Los modelos que creas son tuyos. Descarga el GGUF, despliégalo donde quieras. Ertas es la herramienta de entrenamiento, no el lock-in de despliegue.
La Forma Correcta de Destilar
La situación de DeepSeek no fue un fallo de la destilación como técnica. Fue un fallo de estrategia — elegir extraer capacidades de una plataforma cerrada en lugar de construir sobre fundamentos abiertos.
El enfoque correcto:
- Maestro open-source con licencia permisiva
- Tus datos de dominio como diferenciador
- Fine-tuning legal que produce capacidades que nadie más tiene
- Exportación a GGUF para despliegue portátil e independiente de proveedores
- Propiedad total de cada componente en el pipeline
Sin cuentas falsas. Sin violaciones de ToS. Sin riesgo legal. Solo un mejor modelo que realmente es tuyo.
Haz todo esto sin tocar un CLI. Ertas maneja todo el pipeline de destilación visualmente — desde el dataset hasta GGUF en minutos. Pre-suscríbete con precio de early-bird. Ver planes →
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.

Getting Started: Fine-Tune Your First Legal AI Model in 30 Minutes with Ertas
A hands-on tutorial: sign up for Ertas Studio, upload a sample legal dataset, configure and run fine-tuning, evaluate the output, and export your model — all in 30 minutes.

Fine-Tuning Llama 3: A Practical Guide for Your Use Case
A hands-on guide to fine-tuning Meta's Llama 3 models — covering model selection, dataset preparation, LoRA configuration, training tips, and deployment as GGUF for local inference.