Repolode
2U1

2U1/Qwen-VL-Series-Finetune

Scripts de entrenamiento para ajustar la familia de modelos visión-lenguaje Qwen-VL (Qwen2-VL, Qwen2.5-VL, Qwen3-VL y Qwen3.5) con Hugging Face y Liger-Kernel.

Estrellas
1,981
Forks
223
Issues abiertos
57
Último commit
hace 2 meses

¿Qué es?

Este proyecto ofrece scripts de entrenamiento para adaptar modelos visión-lenguaje de la serie Qwen-VL a datos personalizados. Incluye Qwen2-VL, Qwen2.5-VL, Qwen3-VL y Qwen3.5, y utiliza Hugging Face Transformers y Liger-Kernel en lugar de un framework de entrenamiento independiente.

Los scripts admiten fine-tuning completo, LoRA y QLoRA, DoRA, DeepSpeed ZeRO y la posibilidad de congelar o descongelar por separado las capas del vision tower y del modelo de lenguaje. Los datos de entrenamiento siguen el formato de conversación de LLaVA y pueden incluir muestras de una o varias imágenes, video y modalidades mixtas. Además del fine-tuning supervisado, el repositorio incluye DPO, GRPO con funciones de recompensa personalizadas y entrenamiento de clasificación con varias opciones de loss.

También documenta el entrenamiento con trazas de razonamiento para los modelos Qwen3-VL Thinking y Qwen3.5 compatibles, la evaluación basada en generación durante el entrenamiento, una demo de Gradio para inferencia y una imagen de Docker con un entorno preconfigurado.

Funciones clave

  • 01Fine-tuning completo, LoRA, QLoRA y DoRA para modelos Qwen-VL.
  • 02Entrenamiento con datasets de una o varias imágenes, video y modalidades mixtas en formato LLaVA.
  • 03Optimización de preferencias (DPO) y GRPO con funciones de recompensa definidas por el usuario.
  • 04Fine-tuning de clasificación con variantes de cross-entropy o focal loss.
  • 05Tasas de aprendizaje y controles de congelación independientes para los módulos de visión y lenguaje.
  • 06Compatibilidad con DeepSpeed ZeRO y aceleración mediante Liger-Kernel.

Casos de uso

  • Adaptar un modelo Qwen2.5-VL o Qwen3-VL a un dataset de preguntas y respuestas sobre imágenes de un dominio específico.
  • Entrenar un modelo de comprensión de video con clips emparejados con descripciones de texto.
  • Crear un clasificador de imágenes sobre una base Qwen-VL.
  • Aplicar un ajuste al estilo del aprendizaje por refuerzo, con recompensas personalizadas, a un modelo visión-lenguaje.

Inicio rápido

  1. 1

    Instala los paquetes de Python desde requirements.txt

    pip install -r requirements.txt -f https://download.pytorch.org/whl/cu128
  2. 2

    Instala qwen-vl-utils

    pip install qwen-vl-utils
  3. 3

    Instala flash-attn después de los demás paquetes

    pip install flash-attn --no-build-isolation

Antes de usarlo

  • La configuración de entrenamiento presupone Ubuntu con una GPU Nvidia reciente y CUDA 12.8.
  • Flash Attention 2 es inestable en Qwen3.5, por lo que el README recomienda desactivarlo.
  • QLoRA no se puede combinar con el entrenamiento de visión ni con Liger-Kernel.

Temas

Preguntas frecuentes

¿Qué es Qwen-VL-Series-Finetune?
Scripts de entrenamiento para ajustar la familia de modelos visión-lenguaje Qwen-VL (Qwen2-VL, Qwen2.5-VL, Qwen3-VL y Qwen3.5) con Hugging Face y Liger-Kernel. Este proyecto ofrece scripts de entrenamiento para adaptar modelos visión-lenguaje de la serie Qwen-VL a datos personalizados. Incluye Qwen2-VL, Qwen2.5-VL, Qwen3-VL y Qwen3.5, y utiliza Hugging Face Transformers y Liger-Kernel en lugar de un framework de entrenamiento independiente.
¿Qwen-VL-Series-Finetune es gratuito? ¿Qué licencia tiene?
Qwen-VL-Series-Finetune es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿Qwen-VL-Series-Finetune sigue mantenido?
Actualizado en los últimos 6 meses. El último commit de Qwen-VL-Series-Finetune fue el 9 sept 2026.
¿Para qué puedo usar Qwen-VL-Series-Finetune?
Adaptar un modelo Qwen2.5-VL o Qwen3-VL a un dataset de preguntas y respuestas sobre imágenes de un dominio específico. Entrenar un modelo de comprensión de video con clips emparejados con descripciones de texto. Crear un clasificador de imágenes sobre una base Qwen-VL. Aplicar un ajuste al estilo del aprendizaje por refuerzo, con recompensas personalizadas, a un modelo visión-lenguaje.
¿Cómo se instala Qwen-VL-Series-Finetune?
Instala los paquetes de Python desde requirements.txt: pip install -r requirements.txt -f https://download.pytorch.org/whl/cu128 Instala qwen-vl-utils: pip install qwen-vl-utils Instala flash-attn después de los demás paquetes: pip install flash-attn --no-build-isolation
¿Dónde consigo Qwen-VL-Series-Finetune?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/2U1/Qwen-VL-Series-Finetune

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados