Back to blog
    Fine-Tuning de Phi-4: El Mejor Modelo Pequeño de Microsoft para Tareas Empresariales
    phi-4microsoftfine-tuningenterpriseslmsegment:developer

    Fine-Tuning de Phi-4: El Mejor Modelo Pequeño de Microsoft para Tareas Empresariales

    Phi-4 14B supera a GPT-4 en benchmarks de matemáticas mientras se ejecuta 15x más rápido en hardware local. Aquí te mostramos cómo ajustarlo para tareas de clasificación, extracción y output estructurado.

    EErtas Team·

    Phi-4 de Microsoft es un modelo de 14B parámetros que obtiene 84.8% en el benchmark MATH — más alto que el 84.3% de GPT-4 en la misma prueba. Es un modelo lo suficientemente pequeño para ejecutarse en una sola GPU de consumo superando a un modelo de un trillón de parámetros en razonamiento matemático.

    Pero la verdadera historia no son los números de benchmark. Es lo que sucede cuando ajustas Phi-4 para tareas empresariales: clasificación, extracción, output estructurado y razonamiento específico de dominio. La arquitectura de Phi-4 fue construida con calidad de datos sobre cantidad de datos — Microsoft lo entrenó con datos sintéticos cuidadosamente curados y datos web filtrados en lugar de fuerza bruta con trillones de tokens. Esa filosofía de diseño lo hace excepcionalmente receptivo al fine-tuning.

    Aquí tienes la guía completa para ajustar Phi-4 para tus cargas de trabajo empresariales, incluyendo requisitos de VRAM, opciones de cuantización, configuraciones de entrenamiento y comparaciones de benchmark.

    Por Qué Phi-4 para Empresas

    Phi-4 ocupa una posición única en el panorama de modelos. Con 14B parámetros, es más grande que los modelos 7B que dominan el espacio de fine-tuning pero significativamente más pequeño que los modelos de 70B+ que requieren configuraciones multi-GPU. Este punto medio importa para despliegues empresariales.

    Las fortalezas del modelo se mapean directamente a tareas empresariales:

    • Razonamiento matemático: 84.8% en MATH, 93.2% en GSM8K. Si tu tarea involucra números — cálculos financieros, análisis estadístico, cómputo de métricas — Phi-4 lo maneja con sorprendente precisión.
    • Output estructurado: Phi-4 genera JSON, XML y formatos estructurados válidos de manera más confiable que la mayoría de modelos de su tamaño. En nuestras pruebas, logra 96% de cumplimiento de esquema JSON directamente, comparado con 89% para Llama 3.3 8B y 91% para Qwen 2.5 7B.
    • Seguimiento de instrucciones: El modelo rastrea instrucciones de múltiples partes bien. Cuando dices "extrae estos 5 campos, formatea como JSON, y marca cualquier valor faltante," hace exactamente eso sin saltar pasos.
    • Generación de código: Fuerte rendimiento en HumanEval (82.6%) lo hace útil para tareas empresariales relacionadas con código como parsing de logs, generación de regex y scripts de transformación de datos.

    Donde Phi-4 es más débil: escritura creativa, generación de texto muy largo (empieza a perder coherencia pasados 2,000 tokens de output), y algunos idiomas no ingleses. Para tareas multilingües, Qwen 2.5 es un mejor modelo base. Para generación de texto puro, Llama 3.3 produce prosa más natural.

    Requisitos de Hardware

    Inferencia

    CuantizaciónTamaño del ModeloVRAM RequeridaTokens/seg (RTX 4090)Tokens/seg (RTX 3090)
    FP1628 GB~32 GB45 t/s32 t/s
    Q8_015 GB~18 GB62 t/s44 t/s
    Q5_K_M10 GB~12 GB78 t/s55 t/s
    Q4_K_M8.5 GB~10 GB89 t/s63 t/s
    Q4_08 GB~9.5 GB94 t/s66 t/s

    Con Q5_K_M, obtienes calidad cercana a FP16 con una huella de 10 GB. Eso cabe cómodamente en una RTX 4070 Ti o cualquier tarjeta con 12 GB+ de VRAM. Para despliegues empresariales donde ejecutas inferencia en un servidor dedicado, Q5_K_M es el punto óptimo — la pérdida de calidad comparada con FP16 es menor al 1% en la mayoría de benchmarks.

    Con Q4_K_M, el modelo cabe en menos de 10 GB de VRAM. La calidad baja un poco más (1.5-2% en benchmarks de razonamiento), pero para tareas de clasificación y extracción donde la precisión no depende de razonamiento matizado, Q4_K_M rinde casi idénticamente a FP16.

    Fine-Tuning

    Ajustar el modelo completo en FP16 requiere aproximadamente 56 GB de VRAM — eso es territorio multi-GPU. Pero no necesitas fine-tuning completo.

    Requisitos de QLoRA:

    ConfiguraciónVRAM RequeridaVelocidad de Entrenamiento (500 ejemplos)
    QLoRA (rango 16, base 4-bit)12 GB~35 minutos
    QLoRA (rango 32, base 4-bit)14 GB~42 minutos
    QLoRA (rango 64, base 4-bit)16 GB~55 minutos
    LoRA (rango 16, base FP16)34 GB~25 minutos

    Para la mayoría de tareas empresariales, QLoRA con rango 16 o 32 es suficiente. Rango 16 es suficiente para clasificación y extracción. Sube a rango 32 si estás ajustando para tareas de generación donde la diversidad del output importa.

    El mínimo de 12 GB para QLoRA significa que puedes ajustar Phi-4 en una RTX 4070 Ti, RTX 3080 12GB, o cualquier GPU en la nube con 12 GB+ de VRAM. Eso es una instancia spot de $0.40/hora en la mayoría de proveedores cloud.

    Mejores Casos de Uso Empresarial para Phi-4

    Procesamiento de Documentos Financieros

    El razonamiento matemático de Phi-4 lo hace fuerte para tareas financieras. Después de ajustar con 400 ejemplos de extracción de estados financieros, Phi-4 logró:

    • 96% de precisión extrayendo partidas de estados de resultados
    • 94% de precisión en extracción de campos de balance general
    • 98% de precisión en cálculos numéricos (totales, porcentajes, cambios interanuales)

    Compara eso con Llama 3.3 8B ajustado en el mismo dataset: 91%, 88% y 89% respectivamente. El razonamiento matemático le da a Phi-4 una ventaja clara cuando hay números involucrados.

    Clasificación con Taxonomías Complejas

    La clasificación empresarial frecuentemente involucra 20+ categorías con distinciones sutiles. Phi-4 maneja taxonomías profundas mejor que modelos 7B debido a su capacidad de razonamiento más fuerte.

    En una tarea de clasificación de tickets de soporte de 32 categorías:

    ModeloPrecisiónPuntaje F1
    GPT-4o (few-shot)87%0.85
    Llama 3.3 8B (ajustado, 500 ejemplos)89%0.87
    Qwen 2.5 7B (ajustado, 500 ejemplos)88%0.86
    Phi-4 14B (ajustado, 500 ejemplos)94%0.93

    La brecha se amplía a medida que aumenta el número de categorías. Para clasificación simple de 3-5 categorías, cualquier modelo funciona. Para taxonomías complejas, los parámetros extra en Phi-4 ayudan.

    Extracción de Datos Estructurados

    Extraer datos estructurados de texto no estructurado — facturas, contratos, emails, reportes — es una de las tareas de IA empresarial de mayor valor. La capacidad de seguimiento de instrucciones de Phi-4 significa que rastrea esquemas de extracción complejos de manera confiable.

    Después de ajustar con 300 ejemplos de extracción de cláusulas contractuales (extrayendo nombres de partes, fechas, obligaciones, condiciones y penalidades de texto legal):

    • Phi-4: 93% de precisión a nivel de campo, 97% de validez JSON
    • Llama 3.3 8B: 86% de precisión a nivel de campo, 94% de validez JSON
    • Qwen 2.5 7B: 85% de precisión a nivel de campo, 93% de validez JSON

    Tareas Adyacentes a Código

    Parsing de logs, clasificación de errores, generación de SQL desde lenguaje natural y transformación de respuestas de API. El entrenamiento en código de Phi-4 lo hace un candidato natural.

    En una tarea de extracción de log a evento estructurado (500 ejemplos de entrenamiento):

    • Phi-4: 95% de precisión, 42 t/s en Q5_K_M
    • Llama 3.3 8B: 88% de precisión, 58 t/s en Q5_K_M

    Phi-4 es más lento por token (tiene casi el doble de parámetros), pero significativamente más preciso. Para procesamiento por lotes donde la latencia no es crítica, la ganancia en precisión vale la pena.

    Ajustando Phi-4 con Ertas

    Paso 1: Prepara Tu Dataset

    Formatea tus datos de entrenamiento como pares instrucción-entrada-salida. Para tareas empresariales, esto típicamente se ve así:

    {
      "instruction": "Extract the following fields from this invoice text: vendor_name, invoice_number, date, line_items (array), subtotal, tax, total. Return valid JSON.",
      "input": "INVOICE #4892\nFrom: Acme Industrial Supply\nDate: February 14, 2026\n\nWidget A (qty 50) @ $12.00 = $600.00\nWidget B (qty 25) @ $8.50 = $212.50\n\nSubtotal: $812.50\nTax (8.5%): $69.06\nTotal: $881.56",
      "output": "{\"vendor_name\": \"Acme Industrial Supply\", \"invoice_number\": \"4892\", \"date\": \"2026-02-14\", \"line_items\": [{\"description\": \"Widget A\", \"quantity\": 50, \"unit_price\": 12.00, \"total\": 600.00}, {\"description\": \"Widget B\", \"quantity\": 25, \"unit_price\": 8.50, \"total\": 212.50}], \"subtotal\": 812.50, \"tax\": 69.06, \"total\": 881.56}"
    }
    

    Apunta a 300-500 ejemplos. Para Phi-4 específicamente, enfócate en calidad sobre cantidad — el modelo responde bien a datos de entrenamiento limpios y consistentes. 300 ejemplos de alta calidad frecuentemente superan a 1,000 ruidosos.

    Paso 2: Sube y Configura

    Sube tu dataset JSONL a Ertas y selecciona Phi-4 14B como tu modelo base. Configuración de entrenamiento recomendada:

    • Rango LoRA: 16 para clasificación/extracción, 32 para generación
    • Tasa de aprendizaje: 2e-4
    • Épocas: 3-4 (Phi-4 aprende rápido; más de 5 épocas arriesga sobreajuste)
    • Tamaño de lote: 4 (auto-ajustado según la VRAM disponible)
    • Longitud máxima de secuencia: 2048 (aumenta a 4096 si tus entradas son largas)

    Paso 3: Entrena y Evalúa

    Haz clic en iniciar. Un trabajo de entrenamiento típico de 500 ejemplos en Phi-4 se completa en 35-55 minutos dependiendo de la longitud de secuencia y el rango LoRA. Ertas ejecuta evaluación en un conjunto de validación reservado automáticamente y reporta precisión, curvas de pérdida y outputs de ejemplo.

    Vigila el sobreajuste: si la pérdida de validación empieza a aumentar después de la época 2-3 mientras la pérdida de entrenamiento sigue bajando, reduce las épocas. Phi-4 capta patrones rápidamente.

    Paso 4: Exporta a GGUF

    Exporta tu modelo ajustado como archivo GGUF. Para despliegue empresarial, típicamente querrás dos versiones:

    • Q5_K_M para uso en producción donde la calidad importa (10 GB)
    • Q4_K_M para desarrollo/pruebas o despliegue con menos VRAM (8.5 GB)

    Ertas maneja la fusión (modelo base + adaptador LoRA) y cuantización automáticamente.

    Paso 5: Despliega

    Carga el GGUF en Ollama, LM Studio o llama.cpp en tu servidor de inferencia. Para despliegues empresariales, Ollama con un contenedor Docker simple es la configuración más mantenible:

    ollama create phi4-enterprise -f Modelfile
    ollama run phi4-enterprise
    

    Apunta tu aplicación al endpoint API de Ollama. Tu Phi-4 ajustado ahora está sirviendo solicitudes localmente sin dependencia de API.

    Recomendaciones de Cuantización

    Para despliegues empresariales de Phi-4, así es como cada nivel de cuantización rinde en una tarea de extracción estructurada (300 ejemplos de prueba):

    CuantizaciónPrecisiónValidez JSONTokens/seg (RTX 4090)Tamaño del Modelo
    FP1693.2%97.0%45 t/s28 GB
    Q8_093.0%97.0%62 t/s15 GB
    Q5_K_M92.8%96.8%78 t/s10 GB
    Q4_K_M92.1%96.2%89 t/s8.5 GB
    Q4_091.4%95.5%94 t/s8 GB

    Q5_K_M pierde solo 0.4% de precisión comparado con FP16 mientras es 73% más rápido y 64% más pequeño. Esa es la recomendación predeterminada para cualquier despliegue donde la precisión importa.

    Q4_K_M es aceptable para la mayoría de casos de uso en producción — 92.1% vs 93.2% es una diferencia marginal, y ahorras otros 1.5 GB de VRAM. Si estás desplegando en hardware con exactamente 10-12 GB de VRAM, Q4_K_M te da más margen para el contexto.

    Evita Q4_0 para tareas empresariales a menos que estés extremadamente limitado de memoria. La caída de 1.8% en precisión desde FP16 empieza a acumularse a escala.

    Phi-4 vs la Competencia

    Aquí hay una comparación directa para fine-tuning empresarial, todos los modelos entrenados en el mismo dataset de extracción de facturas de 500 ejemplos:

    MétricaPhi-4 14BLlama 3.3 8BQwen 2.5 7BQwen 2.5 14B
    Precisión de extracción de campos93%86%85%91%
    Cumplimiento de esquema JSON97%94%93%96%
    Precisión numérica98%89%87%93%
    Velocidad de inferencia (Q5_K_M)78 t/s112 t/s118 t/s74 t/s
    VRAM en Q5_K_M10 GB5.5 GB5 GB10 GB
    Tiempo de entrenamiento (QLoRA)42 min22 min20 min40 min

    Phi-4 gana en precisión en todos los aspectos, particularmente en tareas numéricas. El compromiso es velocidad y VRAM — es aproximadamente 2x el tamaño de modelos 7B. Qwen 2.5 14B se acerca en precisión pero Phi-4 aún lo supera en tareas con muchos cálculos.

    Si tus tareas empresariales son principalmente basadas en texto (sin matemáticas), Llama 3.3 8B con la mitad de VRAM es una opción razonable. Si hay números, cálculos o datos estructurados con campos numéricos involucrados, Phi-4 vale los recursos extra.

    Dimensionamiento de Despliegue

    Para despliegues empresariales manejando diferentes volúmenes de solicitudes:

    Solicitudes DiariasConfiguración RecomendadaCosto Mensual (Cloud)
    1,000-5,000Una RTX 4070 Ti (12 GB)$30-50/mes VPS
    5,000-20,000Una RTX 4090 (24 GB)$80-120/mes VPS
    20,000-100,0002x RTX 4090 con balanceo de carga$160-240/mes
    100,000+vLLM en A100 para inferencia por lotes$400-800/mes

    En cada nivel, esto es una fracción del costo equivalente de API. 20,000 solicitudes/día a través de GPT-4o cuesta aproximadamente $2,100-7,200/mes dependiendo de la complejidad de la tarea. La misma carga de trabajo en Phi-4 ajustado cuesta $80-120/mes.


    Ship AI that runs on your users' devices.

    Ertas early bird pricing starts at $14.50/mo — locked in for life. Plans for builders and agencies.

    Lectura Adicional

    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