Back to blog
    Fine-Tuning de Qwen 2.5 para Aplicaciones Multilingües
    qwenmultilingualfine-tuninginternationalslmsegment:developer

    Fine-Tuning de Qwen 2.5 para Aplicaciones Multilingües

    Qwen 2.5 cubre 29 idiomas con 18 trillones de tokens de entrenamiento. Aquí te mostramos cómo ajustarlo para clasificación multilingüe, soporte y generación de contenido sin modelos separados por idioma.

    EErtas Team·

    La mayoría de los modelos de lenguaje open-source son primero en inglés. Manejan inglés bien, gestionan algunos idiomas europeos aceptablemente, y se desmoronan con árabe, hindi, chino, japonés, coreano y la mayoría de los idiomas que la mayor parte del mundo realmente habla.

    Qwen 2.5 es diferente. Alibaba lo entrenó con 18 trillones de tokens abarcando 29 idiomas, con inversión genuina en scripts no latinos e idiomas de derecha a izquierda. El resultado es una familia de modelos que maneja tareas multilingües sin el precipicio de precisión que ves cuando empujas Llama o Mistral a territorio no inglés.

    Esto importa para empresas porque tus usuarios, clientes y documentos no están todos en inglés. Si estás construyendo sistemas de soporte multilingüe, clasificación de e-commerce internacional o procesamiento de documentos entre idiomas, necesitas un modelo que realmente fue entrenado en esos idiomas — no uno que recogió unos pocos millones de tokens en chino como un agregado de último momento.

    Aquí te mostramos cómo ajustar Qwen 2.5 para tareas multilingües, incluyendo preparación de dataset, consideraciones del tokenizador, estrategias de entrenamiento y despliegue.

    La Familia de Modelos Qwen 2.5

    Qwen 2.5 viene en ocho tamaños:

    ModeloParámetrosVRAM (FP16)VRAM (Q5_K_M)Ideal Para
    Qwen 2.5 0.5B500M1.5 GB0.5 GBOn-device, edge
    Qwen 2.5 1.5B1.5B4 GB1.5 GBMóvil, navegador
    Qwen 2.5 3B3B7 GB2.5 GBServidor ligero
    Qwen 2.5 7B7B16 GB5 GBPunto óptimo para fine-tuning
    Qwen 2.5 14B14B30 GB10 GBTareas complejas
    Qwen 2.5 32B32B68 GB22 GBMulti-GPU
    Qwen 2.5 72B72B150 GB48 GBServidor de alto nivel

    El modelo 7B es el punto óptimo para fine-tuning. Es lo suficientemente grande para manejar tareas multilingües complejas, lo suficientemente pequeño para ajustar en una sola GPU con QLoRA (5-6 GB de VRAM para inferencia, 10-12 GB para entrenamiento), y la capacidad multilingüe escala bien a este tamaño.

    El modelo 3B funciona para tareas más simples (clasificación binaria, detección de intención) si necesitas menor latencia o una huella de despliegue más pequeña. El modelo 14B vale los recursos extra si estás lidiando con razonamiento complejo en idiomas no ingleses — los modelos más pequeños tienden a perder capacidad de razonamiento más rápido en idiomas de bajos recursos.

    Por Qué Qwen Gana en Multilingüe

    Distribución de Datos de Entrenamiento

    La mayoría de los modelos open-source se entrenan con 80-90%+ de datos en inglés. La mezcla de entrenamiento de Qwen 2.5 es más balanceada:

    • Inglés: ~40%
    • Chino (Simplificado + Tradicional): ~25%
    • Idiomas europeos (alemán, francés, español, italiano, portugués, holandés, ruso, polaco): ~15%
    • Idiomas asiáticos (japonés, coreano, vietnamita, tailandés, indonesio, malayo): ~10%
    • Árabe, hindi, bengalí, urdu, turco, persa: ~7%
    • Otros (hebreo, swahili, filipino, ucraniano, checo): ~3%

    Esa división de 40% inglés vs 60% no inglés significa que el modelo ha aprendido genuinamente patrones multilingües, no solo memorizado inglés con una capa delgada de otros idiomas.

    Diseño del Tokenizador

    Qwen 2.5 usa un tokenizador de vocabulario de 152K — significativamente más grande que los 128K de Llama. Los tokens extra incluyen unidades de subpalabras dedicadas para caracteres CJK, script árabe, devanagari y otros sistemas de escritura no latinos. Esto significa:

    • El texto en chino usa aproximadamente 1.5 tokens por carácter (vs 2-3 para Llama)
    • El texto en árabe usa aproximadamente 1.8 tokens por palabra (vs 3-4 para Llama)
    • El texto en japonés usa aproximadamente 1.4 tokens por carácter (vs 2.5 para Llama)

    Menos tokens por entrada significa inferencia más rápida, menor uso de VRAM para la misma longitud de contexto y fine-tuning más eficiente. Un documento en chino de 2,000 caracteres podría ser 3,000 tokens en Qwen pero 5,500 tokens en Llama. Esa es una diferencia significativa en costo de entrenamiento y velocidad de inferencia.

    Rendimiento en Benchmarks

    En benchmarks multilingües, la brecha entre Qwen 2.5 7B y sus competidores es significativa:

    BenchmarkQwen 2.5 7BLlama 3.3 8BMistral 7BGemma 3 4B
    MGSM (matemáticas multilingüe)72.4%61.2%54.8%48.3%
    XL-Sum (resumen multilingüe)34.2 ROUGE28.1 ROUGE25.6 ROUGE22.4 ROUGE
    XNLI (NLI cross-lingual)78.6%69.4%65.2%60.1%
    Flores-200 (traducción)31.8 BLEU24.2 BLEU21.5 BLEU19.8 BLEU

    En benchmarks solo de inglés, Llama 3.3 8B supera ligeramente a Qwen 2.5 7B en algunas tareas. Pero en cuanto te mueves a no inglés, la brecha se abre rápidamente.

    Fine-Tuning para Tareas Multilingües

    Preparación del Dataset

    El error más común en fine-tuning multilingüe es entrenar en cada idioma por separado o crear adaptadores específicos por idioma. No hagas esto. Un modelo, un adaptador, todos los idiomas mezclados juntos.

    Estructura tus datos de entrenamiento con ejemplos de idiomas mixtos en cada lote:

    {"instruction": "Classify this support ticket.", "input": "Mi pedido #4521 no ha llegado. Han pasado 10 dias.", "output": "category: shipping\npriority: high\nlanguage: es"}
    {"instruction": "Classify this support ticket.", "input": "I can't log in to my account after the password reset.", "output": "category: authentication\npriority: medium\nlanguage: en"}
    {"instruction": "Classify this support ticket.", "input": "Ich habe zweimal fur dasselbe Produkt bezahlt.", "output": "category: billing\npriority: high\nlanguage: de"}
    {"instruction": "Classify this support ticket.", "input": "Je n'arrive pas a telecharger ma facture.", "output": "category: billing\npriority: low\nlanguage: fr"}
    

    Principios clave para datasets multilingües:

    • Mezcla idiomas dentro de los lotes, no agrupes por idioma. Esto obliga al modelo a aprender patrones de tarea agnósticos al idioma.
    • Usa formato de output consistente entre idiomas. El output siempre debe estar en el mismo formato estructurado independientemente del idioma de entrada. Esto hace trivial el parsing downstream.
    • Incluye detección de idioma en el output si es útil para tu pipeline. Qwen maneja esto naturalmente.
    • Balancea tus ejemplos aproximadamente por idioma. No necesitas balance perfecto, pero no entrenes con 400 ejemplos en inglés y 20 en árabe. Apunta a al menos 50 ejemplos por idioma.
    • Tamaño total del dataset: 300-500 ejemplos entre todos los idiomas. Eso es aproximadamente 30-70 ejemplos por idioma si estás soportando 7-10 idiomas.

    Consideraciones del Tokenizador

    Al establecer tu longitud máxima de secuencia para entrenamiento, ten en cuenta la eficiencia del tokenizador de Qwen:

    • Si tu entrada más larga es 500 palabras en inglés (~650 tokens), el mismo contenido en chino podría ser 400 tokens, pero en árabe podría ser 900 tokens.
    • Establece la longitud máxima de secuencia basándote en el idioma más verboso de tu dataset, más un 20% de margen.
    • Para la mayoría de tareas multilingües, 2048 tokens es suficiente. Aumenta a 4096 si estás procesando documentos largos.

    Configuración de Entrenamiento

    Configuraciones recomendadas para fine-tuning multilingüe en Qwen 2.5 7B:

    ParámetroValorNotas
    Rango LoRA32Mayor que solo inglés (16) para capturar patrones multilingües
    Tasa de aprendizaje1.5e-4Ligeramente más baja que monolingüe para evitar olvido catastrófico
    Épocas4-5Multilingüe necesita un poco más de exposición
    Tamaño de lote4Auto-ajustado por Ertas
    Longitud máx de secuencia2048Aumenta para documentos largos
    Ratio de warmup0.05Estándar

    El rango LoRA de 32 es importante. Para tareas solo en inglés, rango 16 es usualmente suficiente. Para multilingüe, el adaptador necesita más capacidad para capturar patrones específicos de cada idioma mientras mantiene la transferencia cross-lingual. Hemos visto que adaptadores de rango 16 pierden 3-5% de precisión en idiomas de bajos recursos comparados con rango 32.

    Requisitos de VRAM

    ConfiguraciónVRAM
    Entrenamiento QLoRA (rango 32, base 4-bit)12 GB
    Entrenamiento QLoRA (rango 16, base 4-bit)10 GB
    Inferencia (Q5_K_M)5 GB
    Inferencia (Q4_K_M)4.5 GB
    Inferencia (FP16)16 GB

    Puedes ajustar Qwen 2.5 7B en una RTX 3080 12GB o equivalente. La inferencia en Q5_K_M corre cómodamente en cualquier GPU con 6 GB+ de VRAM, o en Macs con Apple Silicon con 8 GB+ de memoria unificada.

    Caso de Uso: Soporte al Cliente Multilingüe

    Una empresa SaaS europea estaba ejecutando soporte al cliente en 6 idiomas (inglés, alemán, francés, español, italiano, portugués) a través de GPT-4o. Costo mensual: $2,400 por 45,000 tickets/mes. Cada ticket necesitaba clasificación (8 categorías), asignación de prioridad y una respuesta sugerida.

    Después de ajustar Qwen 2.5 7B con 480 ejemplos (80 por idioma):

    MétricaGPT-4oQwen 2.5 7B Ajustado
    Precisión de clasificación (todos los idiomas)84%93%
    Precisión de clasificación (alemán)81%92%
    Precisión de clasificación (español)83%94%
    Precisión de prioridad79%91%
    Relevancia de respuesta (evaluación humana)4.1/54.3/5
    Latencia promedio1,100ms160ms
    Costo mensual$2,400$44.50

    El modelo ajustado superó a GPT-4o porque aprendió las categorías de tickets específicas de la empresa, las reglas de prioridad y las plantillas de respuesta. GPT-4o tenía que inferir todo esto desde system prompts, lo cual funcionaba para inglés pero se degradaba para otros idiomas donde la interpretación de prompts es menos confiable.

    Caso de Uso: Clasificación de E-commerce Internacional

    Una plataforma de e-commerce que lista productos de 12 países necesitaba clasificar artículos en una taxonomía de 45 categorías. Los títulos y descripciones de productos llegaban en el idioma del vendedor — chino, coreano, japonés, inglés, alemán, francés, tailandés, vietnamita, indonesio.

    Estaban usando un pipeline de Google Translate + GPT-4o, que introducía errores de traducción y costaba $3,800/mes por 120,000 productos.

    Ajustando Qwen 2.5 7B con 600 ejemplos (eliminando el paso de traducción completamente):

    MétricaTranslate + GPT-4oQwen 2.5 7B Ajustado (directo)
    Precisión de clasificación78%91%
    Tiempo de procesamiento por artículo2.3s0.18s
    Costo mensual$3,800$44.50
    Tasa de misclasificación (idiomas CJK)28%8%

    El enfoque directo — sin traducción, solo clasificar en el idioma original — fue más preciso y 12x más rápido. La traducción estaba introduciendo errores que cascadeaban en clasificaciones incorrectas. Qwen entendía el texto original lo suficientemente bien para clasificar directamente.

    Caso de Uso: Procesamiento de Documentos Cross-Language

    Un bufete de abogados procesando contratos en inglés, francés, alemán y español necesitaba extraer cláusulas clave, fechas, nombres de partes y obligaciones. Los documentos iban de 2 a 15 páginas.

    Ajustando Qwen 2.5 7B con 400 ejemplos de extracción de cláusulas en los cuatro idiomas:

    • Precisión de extracción de campos: 90% (vs 82% con GPT-4o few-shot)
    • Consistencia cross-language: cuando el mismo tipo de cláusula aparecía en diferentes idiomas, la estructura extraída era consistente el 96% de las veces
    • Velocidad de procesamiento: 4-5 páginas por minuto en una RTX 4070 Ti

    La ventaja clave fue la consistencia. GPT-4o a veces usaba diferentes nombres de campo o estructuras dependiendo del idioma de entrada. El modelo Qwen ajustado siempre producía el mismo esquema independientemente del idioma fuente, lo que simplificó el pipeline de datos downstream.

    Recorrido de Fine-Tuning con Ertas

    1. Prepara Dataset de Idiomas Mixtos

    Recopila ejemplos de cada idioma que necesitas soportar. Formatea como JSONL instrucción-entrada-salida. Asegura balance aproximado entre idiomas (mínimo 40-50 ejemplos por idioma).

    2. Sube a Ertas

    Sube tu archivo JSONL. Selecciona Qwen 2.5 7B como modelo base. Ertas detectará el contenido multilingüe y sugerirá parámetros de entrenamiento apropiados.

    3. Configura el Entrenamiento

    Establece rango LoRA a 32, tasa de aprendizaje a 1.5e-4 y épocas a 4. Deja otros parámetros en valores predeterminados a menos que tengas requisitos específicos.

    4. Entrena

    Un trabajo de fine-tuning multilingüe de 500 ejemplos típicamente se completa en 25-35 minutos. Monitorea la pérdida de validación — para entrenamiento multilingüe, espera que la curva de pérdida sea ligeramente más ruidosa que el entrenamiento monolingüe ya que el modelo balancea entre idiomas.

    5. Evalúa

    Ertas reporta precisión por idioma en los resultados de evaluación. Verifica que ningún idioma individual tenga un rendimiento significativamente inferior. Si un idioma se queda atrás, agrega 20-30 ejemplos más para ese idioma y reentrena.

    6. Exporta y Despliega

    Exporta como GGUF en Q5_K_M para producción. Despliega vía Ollama. El mismo modelo sirve todos los idiomas — sin necesidad de enrutamiento por detección de idioma o múltiples instancias del modelo.

    Rendimiento: Qwen 2.5 7B vs Llama 3.3 8B en Tareas No Inglesas

    Ambos modelos ajustados en el mismo dataset de clasificación multilingüe de 500 ejemplos (8 idiomas, 10 categorías):

    IdiomaQwen 2.5 7BLlama 3.3 8B
    Inglés95%96%
    Alemán93%84%
    Francés94%86%
    Español94%87%
    Chino92%71%
    Árabe89%63%
    Japonés91%68%
    Hindi87%58%
    Promedio91.9%76.6%

    En inglés, Llama es marginalmente mejor. En cada otro idioma, Qwen gana — y la brecha es enorme para CJK y árabe. La precisión de Llama en hindi (58%) es apenas mejor que aleatorio para una tarea de clasificación de 10 categorías.

    Si tu aplicación es solo en inglés, cualquier modelo funciona. Si tu aplicación toca cualquier idioma no inglés, Qwen 2.5 es la opción obvia.


    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