Lumina-mGPT-2.0: un modelo autorregresivo de generación de imágenes para gestionar múltiples tareas de generación de imágenes

Introducción general

Lumina-mGPT-2.0 es un proyecto de código abierto desarrollado conjuntamente por el Laboratorio de Inteligencia Artificial de Shanghái (Shanghai AI Laboratory), la Universidad China de Hong Kong (CUHK) y otras organizaciones, alojado en GitHub y mantenido por el equipo Alpha-VLLM. Se trata de un modelo autorregresivo autónomo, entrenado desde cero, con la función principal de generar imágenes diversas y de alta calidad a partir de texto. Publicada el 3 de abril de 2025, esta herramienta no solo admite imágenes básicas generadas a partir de texto, sino que también se encarga de diversas tareas, como la generación de pares de imágenes, la generación basada en temas, la edición de imágenes en varias rondas y la generación controlada.

Lumina-mGPT-2.0:处理多种图像生成任务的自回归图像生成模型Lumina-mGPT-2.0:处理多种图像生成任务的自回归图像生成模型Lumina-mGPT-2.0:处理多种图像生成任务的自回归图像生成模型

 

Lista de funciones

  • Admite la introducción de texto para generar imágenes de alta calidad con una resolución de hasta 768x768.
  • Puede generar pares de imágenes adecuados para tareas de comparación o correspondencia.
  • Proporciona generación por temas para generar imágenes relevantes basadas en un tema específico.
  • Admite varias rondas de edición de imágenes, lo que permite a los usuarios ajustar paso a paso los resultados generados.
  • Incluye la función de generación controlada para un ajuste preciso de los detalles de la imagen.
  • Se proporciona un código perfeccionado para que los usuarios puedan optimizar el modelo según sus necesidades.
  • Admite la inferencia acelerada para reducir el tiempo de generación de imágenes.

 

Utilizar la ayuda

Proceso de instalación

Para utilizar Lumina-mGPT-2.0 localmente, primero debe crear el entorno de ejecución. A continuación se detallan los pasos:

  1. Descargar el código del proyecto
    Abra un terminal e introduzca el siguiente comando para clonar el repositorio de código:
git clone https://github.com/Alpha-VLLM/Lumina-mGPT-2.0.git

A continuación, vaya al directorio del proyecto:

cd Lumina-mGPT-2.0
  1. Creación de un entorno virtual
    Crea un entorno separado para Python 3.10 con Conda para evitar conflictos:
conda create -n lumina_mgpt_2 python=3.10 -y

Activar el entorno:

conda activate lumina_mgpt_2
  1. Instalación de dependencias
    Instala las librerías Python necesarias para tu proyecto:
pip install -r requirements.txt

A continuación, instale el módulo Flash Attention (para cálculos acelerados):

pip install https://github.com/Dao-AILab/flash-attention/releases/download/v2.7.4.post1/flash_attn-2.7.4.post1+cu12torch2.3cxx11abiFALSE-cp310-cp310-linux_x86_64.whl --no-build-isolation

Por último, instale el proyecto como paquete local:

pip install -e .
  1. Descargar MoVQGAN Pesos
    El proyecto depende de los pesos del modelo MoVQGAN. Crea un catálogo y descárgalo:
mkdir -p lumina_mgpt/movqgan/270M
wget -O lumina_mgpt/movqgan/270M/movqgan_270M.ckpt https://huggingface.co/ai-forever/MoVQGAN/resolve/main/movqgan_270M.ckpt
  1. instalación de prueba
    Ejecute el siguiente comando para comprobar si el entorno es correcto:
python generate_examples/generate.py --model_path Alpha-VLLM/Lumina-mGPT-2.0 --save_path save_samples/

Si no aparece ningún error, la instalación se ha realizado correctamente.

Cómo utilizar las principales funciones

La función principal de Lumina-mGPT-2.0 es generar imágenes a partir de texto. A continuación se detalla el funcionamiento:

  • Generación básica de imágenes
    Ejecute el script de generación en el terminal e introduzca una descripción de texto. Por ejemplo, desea generar la imagen "City skyline at night, all lit up":
python generate_examples/generate.py --model_path Alpha-VLLM/Lumina-mGPT-2.0 --save_path save_samples/ --cfg 4.0 --top_k 4096 --temperature 1.0 --width 768 --height 768 --prompt "City skyline at night with bright lights."

Descripción de los parámetros:

  • --model_path: Caminos modelo.
  • --save_pathDirectorio donde se guarda la imagen.
  • --cfg: correlación texto-imagen, por defecto 4,0, cuanto mayor sea el valor, más se acercará a la descripción.
  • --top_k: Controla la diversidad de generación, por defecto 4096.
  • --temperature: Controla la aleatoriedad, por defecto 1.0.
  • --width responder cantando --heightAjuste la resolución a un máximo de 768x768.
  • --promptDescripción de texto, en inglés o chino.
    Las imágenes generadas se guardan en el archivo save_samples Carpeta.
  • generación acelerada
    Para generar imágenes más rápidamente, puede utilizar dos opciones de aceleración:
  • aumentar --speculative_jacobiHabilita la decodificación especulativa de Jacobi para reducir el tiempo de generación.
  • aumentar --quantHabilita la cuantificación del modelo para reducir el uso de memoria gráfica.
    Ejemplo de comando:
python generate_examples/generate.py --model_path Alpha-VLLM/Lumina-mGPT-2.0 --save_path save_samples/ --cfg 4.0 --top_k 4096 --temperature 1.0 --width 768 --height 768 --speculative_jacobi --quant

Datos de pruebas oficiales (basados en la tarjeta gráfica A100):

  • Generación normal: 694 segundos, utilizando 80 GB de memoria de vídeo.
  • Más descodificación especulativa: 324 segundos, 79,2 GB de memoria de vídeo.
  • Más descodificación especulativa y cuantificación: 304 segundos, 33,8 GB de memoria de vídeo.
  • Múltiples rondas de edición y generación controlada
    Admite múltiples rondas de ajuste de la imagen. Por ejemplo, primero se genera una imagen y luego se modifican algunos detalles con la nueva descripción. Las operaciones específicas deben referirse a generate_examples o consulte la documentación oficial. <项目根目录>/README.md.
  • Ajuste del modelo
    Si desea optimizar el modelo con sus propios datos, puede consultar la página <项目根目录>/TRAIN.md Documentación. En ella se detallan los pasos de ajuste, incluida la preparación de datos y los comandos de entrenamiento.

flujo de trabajo

  1. Siga los pasos para instalar el entorno y las dependencias.
  2. Descargar MoVQGAN Pesos.
  3. Introduzca una descripción de texto y ejecute el comando generar.
  4. Compruebe los resultados, ajuste los parámetros o realice varias rondas de edición.

Cuando tengas problemas, consulta la documentación en GitHub o los debates de la comunidad. Todo el proceso es claro y adecuado tanto para principiantes como para usuarios profesionales.

 

escenario de aplicación

  1. Diseño creativo
    Los diseñadores entraron en "Dentro de una futura estación espacial" para generar dibujos conceptuales que sirvieran de inspiración para el proyecto.
  2. investigación académica
    Los investigadores lo utilizan para probar la capacidad de generación de imágenes de los modelos autorregresivos o para ajustar modelos para experimentos.
  3. creación de contenidos
    El bloguero introdujo "jardín de primavera" para generar una imagen que realzara el efecto visual del artículo.
  4. Personalización
    El usuario genera imágenes de temas específicos, como "carteles publicitarios con logotipos de empresas", mediante varias rondas de edición.

 

CONTROL DE CALIDAD

  1. ¿Qué soporte de hardware se necesita?
    Se recomiendan GPU de alto rendimiento como la A100, con al menos 40 GB de memoria de vídeo.La CPU puede funcionar, pero es lenta.
  2. ¿Están disponibles comercialmente las imágenes generadas?
    El proyecto utiliza el protocolo Apache 2.0 y se permite su uso comercial, sujeto a las condiciones del acuerdo.
  3. ¿Por qué tanto tiempo de generación?
    Se tarda unos minutos en generar una imagen de 768x768 con la configuración predeterminada. Esto puede hacerse con la función --speculative_jacobi responder cantando --quant Aceleración.
  4. ¿Admite descripción en chino?
    Apoyado, pero la descripción en inglés puede ser más precisa porque los datos de entrenamiento del modelo están predominantemente en inglés.
© declaración de copyright

Artículos relacionados

Sin comentarios

Debe iniciar sesión para participar en los comentarios.
Acceder ahora
ninguno
Sin comentarios...