Recherche de site Web

Comment exécuter une diffusion stable sur votre PC pour générer des images AI


Résumé : Pour exécuter Stable Diffusion localement sur votre PC, téléchargez Stable Diffusion depuis GitHub et les derniers points de contrôle depuis HuggingFace.co, puis installez-les. Ensuite, exécutez Stable Diffusion dans un environnement python spécial à l'aide de Miniconda.

L'art de l'intelligence artificielle (IA) fait actuellement fureur, mais la plupart des générateurs d'images IA fonctionnent dans le cloud. Stable Diffusion est différent - vous pouvez l'exécuter sur votre propre PC et générer autant d'images que vous le souhaitez. Voici comment installer et utiliser Stable Diffusion sous Windows.

Qu'est-ce que la diffusion stable ?

Stable Diffusion est un modèle d'apprentissage automatique open source qui peut générer des images à partir de texte, modifier des images basées sur du texte ou remplir des détails sur des images à faible résolution ou peu détaillées. Il a été entraîné sur des milliards d'images et peut produire des résultats comparables à ceux que vous obtiendriez avec DALL-E 2 et MidJourney. Il est développé par Stability AI et a été rendu public pour la première fois le 22 août 2022.

Stable Diffusion n'a pas (encore) d'interface utilisateur soignée comme certains générateurs d'images AI, mais il a une licence extrêmement permissive et, mieux encore, il est totalement gratuit à utiliser sur votre propre PC (ou Mac).

Ne soyez pas intimidé par le fait que Stable Diffusion fonctionne actuellement dans une interface de ligne de commande (CLI). Le mettre en place et le faire fonctionner est assez simple. Si vous pouvez double-cliquer sur un exécutable et taper dans une boîte, vous pouvez le faire fonctionner en quelques minutes.

De quoi avez-vous besoin pour exécuter Stable Diffusion sur votre PC ?

Stable Diffusion ne fonctionnera pas sur votre téléphone, ni sur la plupart des ordinateurs portables, mais il fonctionnera sur le PC de jeu moyen en 2022. Voici les exigences :

  • Un GPU avec au moins 6 gigaoctets (Go) de VRAM
    • Cela inclut la plupart des GPU NVIDIA modernes

    • Stable Diffusion peut également être exécuté sur Linux et macOS

    Si vous n'avez pas le matériel, envisagez d'utiliser un générateur d'images AI basé sur le Web. Vous pouvez même exécuter une démo de Stable Diffusion sur le Web.

    Comment installer et exécuter Stable Diffusion sous Windows

    Vous avez besoin de deux logiciels : Git et Miniconda3.

    Installer Git

    Git est un outil qui permet aux développeurs de gérer différentes versions des logiciels qu'ils développent. Ils peuvent gérer simultanément plusieurs versions du logiciel sur lequel ils travaillent dans un référentiel central et permettre à d'autres développeurs de contribuer au projet.

    Si vous n'êtes pas développeur, Git fournit un moyen pratique d'accéder à ces projets et de les télécharger, et c'est ainsi que nous l'utiliserons dans ce cas. Téléchargez le programme d'installation de Windows x64 à partir du site Web de Git, puis exécutez-le pour installer Git.

    Il y a plusieurs options que vous serez invité à sélectionner pendant l'exécution du programme d'installation - laissez-les sur leurs paramètres par défaut. Une page d'options, Réglage de votre environnement PATH, est particulièrement importante. Il doit être défini sur Git à partir de la ligne de commande et également à partir d'un logiciel tiers.

    Installation de Miniconda3

    Stable Diffusion s'appuie sur quelques bibliothèques Python différentes. Si vous ne savez pas grand-chose sur Python, ne vous inquiétez pas trop à ce sujet - disons simplement que les bibliothèques ne sont que des progiciels que votre ordinateur peut utiliser pour exécuter des fonctions spécifiques, comme transformer une image ou effectuer des calculs complexes.

    Miniconda3 est essentiellement un outil pratique. Il vous permet de télécharger, d'installer et de gérer toutes les bibliothèques nécessaires au fonctionnement de Stable Diffusion sans trop d'intervention manuelle. Ce sera également la façon dont nous utilisons réellement Stable Diffusion.

    Rendez-vous sur la page de téléchargement de Miniconda3 et cliquez sur Miniconda3 Windows 64 bits pour obtenir le dernier programme d'installation.

    Double-cliquez sur l'exécutable une fois qu'il a téléchargé pour démarrer l'installation. L'installation de Miniconda3 implique moins de clics sur les pages que Git, mais vous devez faire attention à cette option :

    Assurez-vous de sélectionner Tous les utilisateurs avant de cliquer sur Suivant et de terminer l'installation.

    Vous serez invité à redémarrer votre ordinateur après avoir installé Git et Miniconda3. Nous n'avons pas trouvé que c'était nécessaire, mais cela ne fera pas de mal si vous le faites.

    Téléchargez le dépôt Stable Diffusion GitHub et le dernier point de contrôle

    Maintenant que nous avons installé le logiciel prérequis, nous sommes prêts à télécharger et installer Stable Diffusion.

    Téléchargez d'abord le dernier point de contrôle - la version 1.4 fait près de 5 Go, cela peut donc prendre un certain temps. Vous devez créer un compte pour télécharger le point de contrôle, mais ils ne nécessitent qu'un nom et une adresse e-mail. Tout le reste est facultatif.

    Cliquez sur sd-v1-4.ckpt pour lancer le téléchargement.

    Vous devez ensuite télécharger Stable Diffusion depuis GitHub. Cliquez sur le bouton vert Code, puis cliquez sur Télécharger ZIP. Alternativement, vous pouvez utiliser ce lien de téléchargement direct.

    Nous devons maintenant préparer quelques dossiers dans lesquels nous allons décompresser tous les fichiers de Stable Diffusion. Cliquez sur le bouton Démarrer et tapez miniconda3 dans la barre de recherche du menu Démarrer, puis cliquez sur Ouvrir ou appuyez sur Entrée.

    Nous allons créer un dossier nommé stable-diffusion en utilisant la ligne de commande. Copiez et collez le bloc de code ci-dessous dans la fenêtre Miniconda3, puis appuyez sur Entrée.

    cd C:/
    mkdir stable-diffusion
    cd stable-diffusion

    Si tout s'est bien passé, vous verrez quelque chose comme ceci :

    Gardez la fenêtre Miniconda3 ouverte, nous en aurons besoin à nouveau dans une minute.

    Ouvrez le fichier ZIP, stable-diffusion-main.zip, que vous avez téléchargé depuis GitHub dans votre programme d'archivage de fichiers préféré. Alternativement, Windows peut également ouvrir des fichiers ZIP par lui-même si vous n'en avez pas. Gardez le fichier ZIP ouvert dans une fenêtre, puis ouvrez une autre fenêtre de l'Explorateur de fichiers et accédez au dossier C:\stable-diffusion que nous venons de créer.

    Faites glisser et déposez le dossier dans le fichier ZIP, stable-diffusion-main, dans le dossier stable-diffusion.

    Revenez à Miniconda3, puis copiez et collez les commandes suivantes dans la fenêtre :

    cd C:\stable-diffusion\stable-diffusion-main
    conda env create -f environment.yaml
    conda activate ldm
    mkdir models\ldm\stable-diffusion-v1

    N'interrompez pas ce processus. Certains fichiers sont plus volumineux qu'un gigaoctet, le téléchargement peut donc prendre un peu de temps. Si vous interrompez accidentellement le processus, vous devrez supprimer le dossier d'environnement et exécuter à nouveau conda env create -f environment.yaml . Si cela se produit, accédez à C:\Users\(Your User Account)\.conda\envs et supprimez le dossier ldm, puis exécutez la commande précédente.

    Les lignes que nous avons exécutées ont créé un nouvel environnement nommé ldm, ont téléchargé et installé toutes les bibliothèques Python nécessaires au fonctionnement de Stable Diffusion, ont activé l'environnement ldm, puis ont remplacé le répertoire par un nouveau dossier. Nous sommes à la dernière étape de l'installation. Accédez à C:\stable-diffusion\stable-diffusion-main\models\ldm\stable-diffusion-v1 dans l'Explorateur de fichiers, puis copiez et collez le fichier de point de contrôle (sd-v1-4.ckpt) dans le dossier.

    Attendez la fin du transfert du fichier, cliquez avec le bouton droit sur sd-v1-4.ckpt puis cliquez sur Renommer. Tapez model.ckpt dans la case en surbrillance, puis appuyez sur Entrée pour changer le nom du fichier.

    Et c'est tout - nous avons terminé. Nous sommes maintenant prêts à utiliser Stable Diffusion.

    Comment utiliser la diffusion stable

    L'environnement ldm que nous avons créé est essentiel et vous devez l'activer chaque fois que vous souhaitez utiliser Stable Diffusion. Entrez conda activate ldm dans la fenêtre Miniconda3 et appuyez sur Entrée. Le (ldm) sur le côté gauche indique que l'environnement ldm est actif.

    Ensuite, nous devons changer le répertoire (donc la commande cd) en C:\stable-diffusion\stable-diffusion-main avant de pouvoir générer des images. Collez cd C:\stable-diffusion\stable-diffusion-main dans la ligne de commande.

    Comment créer une image avec une diffusion stable

    Nous allons appeler un script, txt2img.py, qui nous permet de convertir des invites de texte en images 512×512. Voici un exemple. Essayez ceci pour vous assurer que tout fonctionne correctement :

    python scripts/txt2img.py --prompt "a close-up portrait of a cat by pablo picasso, vivid, abstract art, colorful, vibrant" --plms --n_iter 5 --n_samples 1

    Votre console vous donnera un indicateur de progression au fur et à mesure qu'elle produit les images.

    Cette commande produira cinq images de chat, toutes situées dans C:\stable-diffusion\stable-diffusion-main\outputs\txt2img-samples\samples.

    Ce n'est pas parfait, mais cela ressemble nettement au style de Pablo Picasso, tout comme nous l'avons précisé dans l'invite. Vos images doivent se ressembler mais pas nécessairement identiques.

    Chaque fois que vous souhaitez modifier l'image générée, il vous suffit de modifier le texte contenu dans les guillemets doubles après --prompt.

    python scripts/txt2img.py --prompt "YOUR, DESCRIPTIONS, GO, HERE" --plms --n_iter 5 --n_samples 1

    Disons que nous voulions générer un gopher réaliste dans une forêt magique portant un chapeau de sorcier. On pourrait essayer la commande :

    python scripts/txt2img.py --prompt "a photograph of a gopher wearing a wizard hat in a forest, vivid, photorealistic, magical, fantasy, 8K UHD, photography" --plms --n_iter 5 --n_samples 1

    C'est vraiment aussi simple que cela - décrivez simplement ce que vous voulez aussi précisément que possible. Si vous voulez quelque chose de photoréaliste, assurez-vous d'inclure des termes relatifs à une image réaliste. Si vous voulez quelque chose inspiré par le style d'un artiste spécifique, précisez l'artiste.

    La diffusion stable ne se limite pas non plus aux portraits et aux animaux, elle peut également produire des paysages saisissants.

    Que signifient les arguments dans la commande ?

    Stable Diffusion dispose d'un nombre énorme de paramètres et d'arguments que vous pouvez fournir pour personnaliser vos résultats. Les quelques éléments inclus ici sont essentiellement nécessaires pour garantir que Stable Diffusion fonctionnera sur un ordinateur de jeu moyen.

    • –plms — Spécifie comment les images seront échantillonnées. Il y a un article à ce sujet, si vous voulez vérifier les calculs.
    • –n_iter — spécifie le nombre d'itérations que vous souhaitez générer pour chaque invite. 5 est un nombre décent pour voir quel type de résultats vous obtenez.
    • –n_samples — spécifie le nombre d'échantillons qui seront générés. La valeur par défaut est 3, mais la plupart des ordinateurs n'ont pas assez de VRAM pour le supporter. Restez avec 1 sauf si vous avez une raison spécifique de le changer.

    Bien sûr, Stable Diffusion a une tonne d'arguments différents que vous pouvez mettre en œuvre pour ajuster vos résultats. Exécutez python scripts/txt2img.py --help pour obtenir une liste exhaustive des arguments que vous pouvez utiliser.

    Il y a une tonne d'essais et d'erreurs pour obtenir d'excellents résultats, mais c'est au moins la moitié du plaisir. Assurez-vous d'écrire ou d'enregistrer les arguments et les descriptions qui renvoient les résultats que vous aimez. Si vous ne voulez pas faire toutes les expériences vous-même, il existe de plus en plus de communautés sur Reddit (et ailleurs) dédiées à l'échange d'images et aux invites qui les ont générées.