Pourquoi vouloir générer des images en local alors que d'innombrables sites web sont disponibles, souvent gratuitement. Voici un tableau des avantages et inconvénients de chaque solution :
LOCAL | CLOUD | ||
---|---|---|---|
Avantages | Inconvénients | Avantages | Inconvénients |
Maîtrise technologique Indépendance vis à vis d'un prestataire Confidentialité des données | Installation parfois fastidieuse Maintenance des outils | Prêt à être utilisé Performances techniques maximales Avance technologique probable | Risque de fermeture du service Partage de vos données avec un tiers |
Meilleure compréhension du fonctionnement de l'IA | Apprentissage indispensable | Ergonomie travaillée | Enormément de choix de prestataires |
Gratuité des logiciels Large communauté d'utilisateurs | Besoin de matériel récent Coût du fonctionnement (usure et électricité) | Coût modéré (à l'acte ou au mois) Parfois quelques crédits gratuits | Tarification non garantie dans la durée |
Au final, il n'y a pas de mauvais choix. J'aime maîtriser la technologie. J'aime le matériel informatique. Donc, j'ai choisi l'installation en local. Voir aussi le Tuto TJS : débuter avec la génération d'images en ligne
Fooocus (avec 3 fois la lettre o) est un logiciel développé en python (comme l'immense majorité des outils d'IA) avec une interface web.
Fooocus gère la dernière version des modèles Stable Diffusion XL. Il s'agit de l'outil open source le plus avancé disponible.
Après pas mal de tests sur différents logiciels comparables, j'ai choisi Fooocus pour sa relative simplicité, son efficacité, ses outils intégrés et sa large communauté d'utilisateurs. Notez que les autres outils (Automatic1111, InvokeAI ou ComfyUI) s'appuient sur les mêmes modèles de données Stable Diffusion et reprennent tous les mêmes grands principes de fonctionnement.
La génération d'image avec Stable Diffusion revient à soumettre un prompt (la requête sous forme de texte) puis à lancer la génération de l'image. L'optimisation est une question de choix des modèles et de paramètres de génération.
L'installation des outils d'IA est toujours une étape délicate. Non seulement, cela nécessite plusieurs Go de téléchargement et d'espace de stockage sur la machine, mais l'installation se fait souvent en ligne de commande. Cela peut être fastidieux et surtout capricieux.
Heureusement Fooocus prévoit une procédure relativement simple.
Avant de vous lancer dans la génération locale d'images, vérifiez que vous disposez au strict minimum des éléments suivants :
Pour ma part, je travaille en local sur l'IA avec un PC dédié sous Windows 11 avec un AMD Ryzen 3950X, 32 Go de RAM et une RTX 3070 disposant de 8 Go de VRAM.
Ne stockez pas sur votre machine dédiée à l'IA de données sensibles. Il y a énormément de logiciels et de ressources à télécharger en ligne : les risques d'infection par un malware sont non négligeables.
Pour installer Fooocus sur Windows, suivez les étapes suivantes :
J'apprécie aussi grandement les assistants d'installation type Stability Matrix ou Pinokio qui centralisent l'installation et le téléchargement des ressources. Toutes les actions en ligne de commande sont remplacées par des boutons dans une interface classique.
L'interface de travail s'ouvre sur une adresse web locale du type 127.0.0.1:7865. Il suffit de remplir la zone prompt en bas d'écran et de lancer la génération pour obtenir ce type de rendu :
La zone de gauche montre en temps réel le rendu des images générées. En cliquant sur la case à cocher Advanced, vous ouvrez la zone de droite avec tous les paramètres disponibles.
Le premier onglet Settings permet de configurer :
Notez le lien [history log] en bas d'onglet. On en parle plus bas dans ce tuto.
Le second onglet Styles est une particularité de Fooocus. En cliquant sur les styles prédéfinis, le prompt est enrichi par des termes prédéfinis qui vont aboutir au style choisi. Cet onglet est un assistant de prompt pour accélérer la génération. Le style Fooocus V2 apporte des termes d'optimisation du rendu.
Le troisième onglet Model sert à déterminer les ressources à utiliser pour la génération :
Le dernier onglet Advanced affiche deux valeurs de configuration:
La génération d'images par IA est un processus créatif aléatoire. Le même prompt et les mêmes paramètres peuvent aboutir à des résultats assez différents. L'image est marquée par sa seed. Comme elle est définie de manière aléatoire lors des générations initiales, les résultats sont différents.
Actuellement, et dans l'état actuel de l'IA, le but est donc de générer de nombreuses images et de sélectionner la meilleure pour l'utiliser directement ou la re-travailler avec un logiciel classique ou par d'autres processus IA.
L'historique de génération (la log) est donc indispensable. Fooocus enregistre toutes les images dans les répertoires quotidiens /outputs/YYYY-MM-DD/. J'ai travaillé sur un visualiseur de ces logs pour faciliter le travail de sélection. Il est disponible sur mon dépôt Github Fooocus Log Viewer
C'est aussi un autre avantage de l'IA en local. Vous n'êtes pas limité en nombre de tentatives et d'images générées, par rapport à un service cloud qui facture souvent à l'image produite.
Les modèles Stable Diffusion sont au coeur de la génération d'images.
A l'installation de Fooocus, quelques modèles sont téléchargés automatiquement. Je vous recommande d'en charger d'autres à partir du superbe site gratuit Civit.ai.
Une fois les modèles téléchargés, vous les déplacez dans le répertoire dédié de Fooocus : /fooocus/models/checkpoints/
Les LoRAs sont à placer dans /fooocus/models/loras/
Un checkpoint pèse environ 7Go. Un LoRA entre 0.1 et 2 Go. On se rend bien compte de l'espace disque nécessaire pour travailler en IA.
Pour mieux gérer les modèles de Fooocus, j'ai aussi créé l'outil FoooXus sur ce dépôt Github. Il permet de créer des rendus pour les modèles, LoRAs et styles de Fooocus. Cela permet ainsi de mieux choisir parmi sa collection les modèles et configurations adaptés.
L'IA n'échappe pas à la règle Internet et encore moins la génération d'images. Les contenus pour adulte sont facilement générables. Pour éviter de tomber sur des images sensibles à des moments non appropriés, il faut connaître la signification des termes SFW et NSFW. Safe For Work indique que les images sont visibles dans un cadre public. L'opposé Not Safe For Work est explicite.
Stable Diffusion (et Fooocus) peuvent aller bien plus loin dans la génération d'images.
Poursuivez la lecture avec le tuto, sur img2img : Img2Img et Image Prompte avec Fooocus
Ne manquez pas le site communautaire Civitai qui fournit des modèles à télécharger, de la génération gratuite d'images en ligne et des concours amusants
Mes outils autour de Fooocus avec Fooocus Log Viewer et Fooocus Extender