L’IA et la création d’images via Stable Diffusion.

Cela fait environ 4 mois que je regarde un peu les sujets sur l’ia et plus particulièrement sur la génération d’images, j’ai tout d’abord regardé les différents sites de génération comme Dall-e puis je me suis renseigné sur MidJourney et j’ai fais quelques essais via des scripts sur un Discord, mais sans vraiment m’y attarder. Puis j’ai découvert Stable Diffusion (SD) et le fait que l’on puisse l’installer sur sa propre machine pour commencer à générer des images.

Dans cet article, je vais rappeler ce qu’est l’ia de manière général (je ferais sûrement un article plus détaillé plus tard.). Je donne mon explication de ce qu’est Stable Diffusion, j’explique brièvement ces forces et son actualité, je vous montre un exemple d’utilisation en ligne puis je m’attarde à son installation. Enfin, je vais faire une présentation pas à pas d’une génération d’images via SD. Je ferais, je pense une page dédiée sous la forme d’une procédure avec pourquoi pas une vidéo.

Qu'est-ce que l'intelligence artificielle (IA) ?

Dans cette première partie, nous allons jeter les bases en expliquant ce qu’est l’intelligence artificielle. L’IA est un domaine de l’informatique qui vise à créer des machines capables d’imiter l’intelligence humaine. Elle repose sur des algorithmes complexes et l’apprentissage automatique pour résoudre des problèmes, prendre des décisions et même générer du contenu, comme des images.

Qu’est-ce que l’Intelligence Artificielle ?

L’IA est une discipline qui cherche à développer des systèmes informatiques capables de réaliser des tâches qui nécessitent normalement l’intelligence humaine. Ces tâches comprennent la résolution de problèmes, la reconnaissance de motifs, l’apprentissage automatique, et bien plus encore. L’IA peut être appliquée dans divers domaines, de la médecine à la finance, en passant par la création artistique.

L’IA et la Création d’Images

Dans le contexte de la génération d’images, l’IA joue un rôle crucial. Elle permet de créer des œuvres d’art numériques, des illustrations, des designs et bien plus encore. Une de ces méthodes les plus couramment utilisé actuellement est « Stable Diffusion« , j’ai principalement choisi de parler de celui-ci car il est libre et gratuit.

SD c'est quoi au final ?

Stable Diffusion est un outil open source créer par https://stability.ai, ce qui signifie que son code source est accessible à tous et qu’il est disponible gratuitement. Cet outil a la capacité de générer des images à partir d’une description textuelle appelé « prompt« . Il utilise un modèle texte-vers-image, similaire à des modèles tels que DALL-E ou MidJourney, pour interpréter le texte fourni et créer une image basée sur cette description. C’est grâce à l’intelligence artificielle que cette prouesse est possible.

La force de Stable Diffusion :
  1. Accessibilité : Stable Diffusion est disponible gratuitement pour quiconque souhaite l’utiliser. Cela le rend accessible à un large public, encourageant ainsi la collaboration et l’innovation.

  2. Transparence : Le code source de Stable Diffusion est accessible et transparent. Les utilisateurs peuvent examiner le code pour comprendre son fonctionnement interne, ce qui favorise la confiance dans l’outil.

  3. Personnalisation : Les utilisateurs peuvent personnaliser et adapter Stable Diffusion à leurs besoins spécifiques. 

  4. Collaboration : En tant que projet open-source, Stable Diffusion peut bénéficier de la collaboration d’une communauté mondiale de développeurs et de chercheurs. Cela favorise l’innovation continue et l’amélioration de l’outil.

  5. Évolutivité : Stable Diffusion s’améliore rapidement grâce aux contributions de nombreux individus talentueux. Les mises à jour et les améliorations sont fréquentes, ce qui garantit que l’outil reste à jour et compétitif.

Il se distingue par sa capacité à produire des images de haute qualité avec une grande variété de styles et de contenus. Contrairement à certains modèles pré-entraînés, Stable Diffusion offre un contrôle granulaire sur le processus de génération, ce qui signifie que les utilisateurs peuvent influencer le résultat final de manière plus précise.

Stable Diffusion et la justice !

L’équipe de Stable Diffusion a été vivement critiquée par des artistes du monde entier pour des cas présumés de plagiat. En effet, dans ses premières versions, l’entraînement du modèle se basait sur des images provenant de diverses sources, y compris des images d’artistes soumises au droit d’auteur.

Ces accusations de plagiat ont suscité une grande controverse au sein de la communauté artistique. Les artistes ont exprimé leur indignation face à l’utilisation non autorisée de leurs créations dans le processus d’entraînement de Stable Diffusion. Cette pratique a été perçue comme une violation flagrante du droit d’auteur et des droits artistiques.

Les artistes du monde entier ont souligné l’importance de la protection de leurs œuvres originales et de la reconnaissance de leur travail. Ils ont demandé des mesures plus strictes pour garantir que les outils d’IA respectent les droits d’auteur et ne reproduisent pas les créations artistiques sans autorisation.

Face à cette pression croissante de la communauté artistique et pour éviter d’éventuelles poursuites judiciaires, l’équipe de Stable Diffusion a pris la décision radicale de repartir de zéro pour l’entraînement de leur modèle dans la version 2.0. Cette nouvelle approche vise à garantir que l’IA n’utilise plus d’images protégées par le droit d’auteur, mais elle a également entraîné une baisse significative de la qualité des images générées.

Cependant, cette décision a également suscité des débats, car elle a conduit à la création d’images de qualité médiocre et limité la capacité de l’IA à imiter les styles artistiques. Les artistes et les utilisateurs de Stable Diffusion se trouvent désormais face à un dilemme, car ils doivent composer avec ces nouvelles limitations tout en respectant les droits d’auteur et la créativité artistique.

Il suffit d’entré dans prompt, le texte que vous voulez et dans negative prompt ce que vous ne voulez pas. Plus l’explication est détaillé, meilleurs sera le résultat. A noter qu’il existe des techniques pour obtenir vraiment ce que l’on veut.

Ce site reste du test rapide, je vous propose de voir comment l’installer sur votre propre machine si votre configuration le permet.

installation ?

Stable Diffusion ne nécessite pas une installation traditionnelle comme un logiciel classique. Au lieu de cela, il s’agit d’un modèle que l’on peut télécharger et exploiter en utilisant du code.

Pour plus de simplicité d’utilisation, nous utilisons une interface graphique nommé AUTOMATIC1111 (voir image ci-dessous) :

Cette interface est totalement modulable, vous pouvez télécharger de nombreuses extensions pour étendre les capacités de l’interface à l’infini. Cela signifie que vous pouvez générer gratuitement et en illimité des images en utilisant uniquement la puissance de votre ordinateur, sans dépendre d’une connexion internet.

L'obtenir sur son ordi perso
Configuration

Si vous envisagez d’expérimenter Stable Diffusion sur votre propre appareil, il est important de prendre en compte les configurations requises. Le système exige au minimum 6 Go de VRAM (mémoire vidéo) pour pouvoir générer une image d’une dimension de 512 x 512 pixels. Cette quantité de VRAM est le minimum nécessaire pour traiter efficacement les opérations de génération d’images. Si vous en avez 8 ou 10 c’est mieux, si vous en avez plus ce sera plus rapide.

StabilityAI recommande également l’utilisation de puces NVIDIA si vous souhaitez exécuter le modèle sur votre propre ordinateur. Les cartes graphiques NVIDIA sont souvent optimisées pour les tâches liées à l’intelligence artificielle et à la génération d’images. Selon la société, ils prévoient d’optimiser la version actuelle de Stable Diffusion pour une utilisation sur des puces AMD, sur les processeurs M1 et M2 des MacBook, ainsi que sur d’autres chipsets.

Pour ma part, comme je suis sous AMD avec 8 Go VRAM actuellement, la génération prend plus de temps mais ça fonctionne quand même.

Il est donc essentiel de vérifier que votre système répond aux exigences minimales en matière de VRAM et, si possible, d’utiliser une puce NVIDIA pour une expérience optimale. Gardez également un œil sur les mises à jour futures qui pourraient étendre la compatibilité de Stable Diffusion à d’autres types de processeurs.

Astuce sur Windows : vous pouvez voir votre VRAM via le logiciel dxdiag.

Ma config actuelle

Pour pouvoir faire tourner AUTOMATIC1111, vous devrez avoir Python d’installé sur votre machine.

Installez Python à partir du site officiel. Vous voulez la dernière version, la 3.10. Assurez-vous de choisir la bonne version pour votre plateforme, 32-bit ou 64-bit.

Important : dans l’assistant d’installation, veillez à cocher la case « Add python.exe to PATH ».

Allez sur le site officiel de Git pour télécharger Git.

Pour Windows, ouvrez le fichier .exe que vous venez de télécharger.

Cliquez sur Suivant pour accepter la licence.

Plusieurs écrans d’options vous sont proposés. Les options par défauts sont toutes correctes. Cliquez sur Suivant pour chacune d’entre elles. Git s’installe.

Tout d’abord, vous devez aller sur le repo git d’AUTOMATIC1111.

Ensuite, allez dans le dossier où vous allez créer vos images.

Faites un clic droit, puis « ouvrir un terminal ».

Pour Nvidia :

git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui

Pour AMD :

git clone https://github.com/lshqqytiger/stable-diffusion-webui-directml && cd stable-diffusion-webui-directml && git submodule init && git submodule update

Laissez le temps de se télécharger et une fois le téléchargement terminé, vous pourrez voir votre nouveau dossier apparaitre dans le dossier que vous avez choisi.

Si vous souhaitez utiliser le modèle de Stable Diffusion de base alors vous pouvez lancer AUTOMATIC1111 directement en double cliquant sur le fichier webui-user.bat

Voici le contenu de mon fichier que j’ai modifié  et adapté pour s’adapter à ma configuration personnel, il faudra surement faire varier les différents paramètres chez vous. Le forum sur la communauté Git suffit amplement pour trouver la bonne conf :

@echo off

set PYTHON=
set GIT=
set VENV_DIR=
set COMMANDLINE_ARGS=--medvram --precision full --opt-split-attention-v1 --no-half --no-half-vae --opt-sub-quad-attention --disable-nan-check --use-cpu interrogate gfpgan bsrgan esrgan scunet codeformer
set SAFETENSORS_FAST_GPU=1

call webui.bat

On ouvre ensuite son navigateur préféré (perso j’utilise brave) et on va sur http://127.0.0.1:7860/ (le port est modifiable)

La première chose à faire et de le mettre à jour. Aller dans : Extensions > Cliquer sur « Check for updates » et puis sur « Apply and restart UI ».

C’est sur cette page que l’on peut installer les différentes extensions. Les possibilités sont très nombreuses.

Petit exemple de ce que j’ai actuellement en plus de ceux par défaut. Bien entendu vous pouvez tester en les activant ou non.

  • multidiffusion-upscaler-for-automatic1111
  • sd-webui-controlnet
  • stable-diffusion-webui-images-browser
  • ultimate-upscale-for-automatic1111

Je présente l’interface plus en détail d’A1111 en Français et montre ces différentes possibilités à travers des exemples concrets. La partie sur les exemples fera l’objet d’une vidéo sur youtube.

error: Le contenu est protégé !