Lumina-mGPT-2.0 : un modèle de génération d'images autorégressif pour gérer des tâches de génération d'images multiples
Introduction générale
Lumina-mGPT-2.0 est un projet open source développé conjointement par le Shanghai AI Laboratory (Laboratoire d'IA de Shanghai), l'Université chinoise de Hong Kong (CUHK) et d'autres organisations, hébergé sur GitHub et maintenu par l'équipe Alpha-VLLM. Il s'agit d'un modèle autorégressif autonome, entraîné à partir de zéro, dont la fonction principale est de générer des images diverses et de haute qualité à partir de textes. Lancé le 3 avril 2025, cet outil ne prend pas seulement en charge les images de base générées à partir de texte, mais gère également une variété de tâches telles que la génération de paires d'images, la génération axée sur les sujets, l'édition d'images à plusieurs tours et la génération contrôlée.



Liste des fonctions
- Prise en charge de la saisie de texte pour générer des images de haute qualité jusqu'à une résolution de 768x768.
- Peut générer des paires d'images adaptées à des tâches de comparaison ou d'appariement.
- Permet de générer des images pertinentes en fonction d'un thème spécifique.
- Prise en charge de plusieurs cycles d'édition d'images, permettant aux utilisateurs d'ajuster les résultats générés étape par étape.
- Comprend une fonction de génération contrôlée pour un ajustement précis des détails de l'image.
- Un code affiné est fourni afin que les utilisateurs puissent optimiser le modèle en fonction de leurs besoins.
- Prise en charge de l'inférence accélérée pour réduire le temps de génération des images.
Utiliser l'aide
Processus d'installation
Pour utiliser Lumina-mGPT-2.0 localement, vous devez d'abord créer l'environnement d'exécution. Voici les étapes détaillées :
- Télécharger le code du projet
Ouvrez un terminal et entrez la commande suivante pour cloner le dépôt de code :
git clone https://github.com/Alpha-VLLM/Lumina-mGPT-2.0.git
Allez ensuite dans le répertoire du projet :
cd Lumina-mGPT-2.0
- Créer un environnement virtuel
Créez un environnement séparé pour Python 3.10 avec Conda afin d'éviter les conflits :
conda create -n lumina_mgpt_2 python=3.10 -y
Activer l'environnement :
conda activate lumina_mgpt_2
- Installation des dépendances
Installez les bibliothèques Python nécessaires à votre projet :
pip install -r requirements.txt
Ensuite, installez le module Flash Attention (pour les calculs accélérés) :
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
Enfin, installez le projet en tant que paquet local :
pip install -e .
- Télécharger les poids MoVQGAN
Le projet dépend des poids du modèle MoVQGAN. Créer un catalogue et le télécharger :
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
- test d'installation
Exécutez la commande suivante pour vérifier si l'environnement est correct :
python generate_examples/generate.py --model_path Alpha-VLLM/Lumina-mGPT-2.0 --save_path save_samples/
Si aucune erreur n'est signalée, l'installation a réussi.
Comment utiliser les principales fonctionnalités
La fonction principale de Lumina-mGPT-2.0 est de générer des images à partir de textes. Voici le fonctionnement détaillé :
- Génération d'images de base
Exécutez le script de génération dans le terminal et entrez une description textuelle. Par exemple, vous souhaitez générer l'image "Ligne d'horizon de la ville la nuit, toute illuminée" :
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."
Paramètre Description :
--model_path
: Chemins du modèle.--save_path
Répertoire dans lequel l'image est sauvegardée.--cfg
: corrélation texte-image, valeur par défaut 4.0, plus la valeur est grande, plus la description est proche.--top_k
: Contrôle la diversité des générations, par défaut 4096.--temperature
: contrôle le caractère aléatoire, valeur par défaut 1.0.--width
répondre en chantant--height
Résolution : Réglez la résolution sur un maximum de 768x768.--prompt
Description textuelle : description textuelle, en anglais ou en chinois.
Les images générées sont enregistrées dans le fichiersave_samples
Dossier.- génération accélérée
Pour générer des images plus rapidement, vous pouvez utiliser deux options d'accélération : - augmenter
--speculative_jacobi
Activer le décodage spéculatif de Jacobi pour réduire le temps de génération. - augmenter
--quant
Permet la quantification du modèle afin de réduire l'utilisation de la mémoire graphique.
Exemple de commande :
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
Données de test officielles (basées sur la carte graphique A100) :
- Génération normale : 694 secondes, en utilisant 80 Go de mémoire vidéo.
- Décodage spéculatif supplémentaire : 324 secondes, 79,2 Go de mémoire vidéo.
- Plus le décodage spéculatif et la quantification : 304 secondes, 33,8 Go de mémoire vidéo.
- Plusieurs cycles d'édition et de génération contrôlée
Prise en charge de plusieurs cycles d'ajustement de l'image. Par exemple, il est possible de générer d'abord une image, puis de modifier certains détails à l'aide de la nouvelle description. Les opérations spécifiques doivent se référer àgenerate_examples
ou consultez la documentation officielle !<项目根目录>/README.md
. - Affiner le modèle
Si vous souhaitez optimiser le modèle avec vos propres données, vous pouvez vous référer à la rubrique<项目根目录>/TRAIN.md
Documentation. Elle détaille les étapes de la mise au point, y compris la préparation des données et les commandes d'entraînement.
flux de travail
- Suivez les étapes pour installer l'environnement et les dépendances.
- Télécharger les poids MoVQGAN.
- Saisissez une description textuelle et exécutez la commande generate.
- Vérifiez les résultats, ajustez les paramètres ou effectuez plusieurs séries de modifications.
Si vous rencontrez des problèmes, consultez la documentation sur GitHub ou les discussions de la communauté. L'ensemble du processus est clair et adapté aux débutants comme aux utilisateurs professionnels.
scénario d'application
- Conception créative
Les concepteurs ont saisi l'expression "A l'intérieur d'une future station spatiale" pour générer des dessins conceptuels qui serviront d'inspiration pour le projet. - recherche universitaire
Les chercheurs l'utilisent pour tester les capacités de génération d'images des modèles autorégressifs ou pour affiner les modèles pour les expériences. - création de contenu
Les blogueurs saisissent "spring garden" pour générer des images afin d'améliorer l'effet visuel de l'article. - Personnalisation
L'utilisateur génère des images spécifiques à un thème, telles que des "affiches publicitaires avec des logos d'entreprise", par le biais de plusieurs cycles d'édition.
QA
- Quel est le matériel nécessaire ?
Il est recommandé d'utiliser des GPU très performants tels que le A100, avec au moins 40 Go de mémoire vidéo. - Les images générées sont-elles disponibles dans le commerce ?
Le projet utilise le protocole Apache 2.0 et l'utilisation commerciale est autorisée, sous réserve des termes de l'accord. - Pourquoi le temps de génération est-il long ?
Il faut quelques minutes pour générer une image de 768x768 avec les paramètres par défaut. Cela peut être fait avec la fonction--speculative_jacobi
répondre en chantant--quant
Accélération. - Prend-il en charge la description chinoise ?
Nous sommes d'accord, mais la description en anglais peut être plus précise parce que les données d'entraînement du modèle sont principalement en anglais.
© déclaration de droits d'auteur
L'article est protégé par le droit d'auteur et ne doit pas être reproduit sans autorisation.
Articles connexes
Pas de commentaires...