Stable Diffusion est une IA de création et de génération d’images open-source, qui est proposée gratuitement sur Github. L’IA a été développée par la startup Stability.AI.
Cette IA permet de générer des photos ou des dessins en lui donnant une simple phrase en entrée (également appelée prompt). Par exemple, vous pouvez lui demander (en anglais) de générer l’image d’un chat qui porte un chapeau (comme sur l’image de Une de ce tutoriel, qui a été générée par cette IA).
Il est donc possible de télécharger et d’utiliser cette IA sur votre ordinateur en local, de manière gratuite. Il y a cependant quelques pré-requis :
- Disposer d’une carte graphique Nvidia avec un minimum de 6 Go de VRAM (certaines personnes réussissent à priori à utiliser l'IA avec moins de VRAM via les scripts optimisés). Certains utilisateurs ont cependant réussi à lancer l'IA avec une carte graphique AMD.
- Disposer de 16 Go de RAM (recommandé)
Ce tutoriel a été testé sur un Linux, mais il peut également être suivi sur Windows (mais non testé).
Première étape : installation de Miniconda et Git
La première étape consiste en l’installation de Miniconda. Pour installer Miniconda pour Linux, lancez les commandes suivantes :
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
chmod +x Miniconda3-latest-Linux-x86_64.sh
./Miniconda3-latest-Linux-x86_64.sh
Puis suivez les instructions, vous devrez valider la licence du logiciel (entrez yes). Puis appuyez sur Entrer lorsque l’on demande où vous souhaitez installer Miniconda.
Pour installer Miniconda sous Windows, rendez-vous à l’adresse suivante : https://docs.conda.io/en/latest/miniconda.html
Sélectionnez le lien pour Windows, un fichier .exe sera téléchargé. Lancez-le pour installer Miniconda. Suivez les instructions de l’installateur, et cochez la case "Add Miniconda3 to my PATH environment variable".
Assurez-vous que Git soit installé. Sur Linux, vous pouvez utiliser la commande suivante (exemple pour Ubuntu/Debian) :
sudo apt install git
Pour Windows, rendez-vous ici pour télécharger l'installateur de Git : https://gitforwindows.org/
Suivez les étapes de l'installateur.
Dans tous les cas, que ce soit sur Windows ou Linux, ouvrez un terminal (ou la ligne de commande Windows) et lancez la commande suivante :
conda init
Puis fermez la fenêtre du terminal (ou de la ligne de commande Windows).
Deuxième étape : télécharger le modèle de Stable Diffusion
Pour cette étape, nous allons télécharger le modèle de Machine Learning de l’IA. Pour cela, inscrivez vous sur le site : https://huggingface.co
Une fois inscrit, rendez-vous ici : https://huggingface.co/CompVis/stable-diffusion#model-access
Cliquez sur le lien « stable-diffusion-v-1-4-original » :
Sur la page qui s'ouvre, cochez la case à droite de I have read the License and agree with its terms puis cliquez sur Access repository.
Puis sélectionnez « sd-v1-4.ckpt ». Un fichier de 4 Go environ sera téléchargé. Nous l’utiliserons plus tard.
Troisième étape : configuration de Stable Diffusion
Rendez-vous sur le dépôt Github de l’IA : https://github.com/CompVis/stable-diffusion
Cliquez sur Code > Download ZIP (vous pouvez aussi utiliser la commande git clone si vous le souhaitez).
Une archive ZIP sera téléchargée. Extrayez-la avec un logiciel d’extraction (7-Zip, Winrar, etc.).
Maintenant, rendez-vous sur ce dépôt Github : https://github.com/basujindal/stable-diffusion
Effectuez la même action que précédemment, mais au lieu d’extraire tout le contenu de l’archive Zip, copiez uniquement le dossier « optimizedSD » contenu dans l’archive vers le dossier précédemment extrait (celui du premier dépôt Github). Il contient des scripts pré-conçus et optimisés (utilise moins de mémoire vidéo VRAM) pour lancer la génération d’image.
Maintenant, ouvrez un terminal (ou la ligne de commande Windows) et rendez-vous dans le dossier du premier dépôt Github :
cd /chemin/vers/le/dossier
Lancez ensuite les commandes suivantes :
conda env create -f environment.yaml
conda activate ldm
Ensuite, vous devrez déplacer le fichier .ckpt (celui de plusieurs Go téléchargé lors de l'étape 2) dans le sous-dossier models/ldm/stable-diffusion-v1/ (vous devez créer le dossier stable-diffusion-v1) situé dans le dossier du premier dépôt Github, et le renommer model.ckpt.
Quatrième étape : génération d’une image
Restez dans le dossier du premier dépôt Github. Lancez la commande suivante pour générer l’image d’un chat avec un chapeau :
python optimizedSD/optimized_txt2img.py --prompt "a photograph of a cat wearing a hat"
Patientez ensuite quelques instants (la génération met environ 1 minute et 10 secondes sur une carte graphique Nvidia RTX 3070).
Les images générées se trouvent dans le sous-dossier outputs/txt2img-samples.
Si vous fermez le terminal (ou la ligne de commande Windows), la prochaine fois que vous souhaiterez utiliser l’IA, vous devrez activer l’environnement Conda avec la commande suivante :
conda activate ldm
Exemple d’images générées par la commande (en plus de celle de Une de ce tuto) :
Note supplémentaire : sous Linux, l'environnement Conda base sera utilisé par défaut à chaque ouverture de bash. Pour complétement désactiver Conda par défaut, lancer la commande suivante :
conda config --set auto_activate_base false
Commentaires