DSAA D4+ :
/Pratiques numériques

(info D2) IA génératives locales

Introduction

Pourquoi préférer l'usage de modèles génératifs en local, sur son propre poste ou un serveur mutualisé :

LLM et chat local

Plusieurs outils permettent d'exécuter des LLM localement, et donc en grande partie remplcer ChatGPT, Cmlude, Mistral, Gemini, etc. En voici 2, faciles à installer et à utiliser : Ollama et LM Studio.

En fonction de la puissance de votre ordinateur (GPU et CPU), vous pourrez exécuter des modèles plus ou moins "performants". La performance d'un modèle est en partie relative au nombre de ses paramètres, généralement indiqué par le nombre 7B ou 20B, qui signifie 7 milliards ou 20 milliards de paramètres. Mais elle dépend aussi de son architecture, de sa spécialisation, etc.

Exemples de modèles utilisable via Ollama ou LM Studio :

IA génératives locales pour le traitement du son

Si vous installez Pinokio, vour aurez accès à plusieurs solutions de traitement du son :

En dehors de Pinokio la solution de transcription NoScribe est assez performante : https://github.com/kaixxx/noScribe

Interface de noScribe

Génération de médias (images, vidéos, sons, 3D)

Logiciels

Cet article de Tech Tactician publié fin 2024 recense les principaux outils de génération locale d'images, de vidéos et d'objets 3D :

Ces outils offrent des possiblités de contrôle de la génération, à partir d'un prompt ou d'une image (voire d'un flux vidéo) :

Le contrôle peut être renforcé par des fonctionnalités intégrées aux outils ou des plugins :

Pour cet atelier nous utiliserons principalement Stable Diffusion Web UI, dédié à la génération d'images.

Interface de Stable Diffusion Web UI

Stable Diffusion Web UI

Stable Diffusion Web UI est une interface permettant d'utiliser des modèles d'IA générative open source en local, sur son propre poste, ou à partir d'un autre poste jouant le rôle de serveur.
Les modèles open source peuvent être téléchargés sur Hugging Face, ou d'autres plateformes dédiées (comme CivitaAi, bloqué à l'école) ou les dépôts officiels sur Github. Par exemple les modèles de Stable Diffusion sont accessibles ici : https://github.com/Stability-AI/generative-models

Liste des modèles sur Hugging Face

Lancer un serveur local Stable Diffusion sur le PC de l'école

Sur le PC de la salle 305 est équipé d'une carte graphique Nvidia GeForce RTX 4080 SUPER, assez performante pour la génération. C'est cette machine qui générera les images, mais c'est vous qui lancerez les commandes depuis votre poste, dans l'interface web de Stable Diffusion.

Nvidia GeForce RTX 4080 SUPER

Sur le PC de l'école :

Sur votre machine :

Vous vous retrouvez sur l'interface de Stable Diffusion Web UI.

Texte vers image(s)

Réglages :

Pour le modèl eSDXL Turbo, les réglages sont plus limités :

Vous pouvez donner des précisions de style dans le panneau SDXL Styles. Pour cela cochez Enable Style Selector et sélectionnez un style.
Par exemple le prompt basique "Winter landscape" peut être automatiquement complété par une précision de style, ce qui transformera les instructions prompt positif "cinematic photo Winter landscape, 35mm photograph, film, bokeh, professional, 4k, highly detailed", et un prompt négatif : "drawing, painting, crayon, sketch, graphite, impressionist, noisy, blurry, soft, deformed, ugly"

Résultats :

Prompt "Winter landscape" sans précision de style
Prompt "Winter landscape" avec style Photographic

Image vers image(s)

Les fonctionnlités img2img permettent de contrôler la génération à partir d'une image de référence. Voici un rapide panorama des réglages possibles :

Expérimenter

Le travail de génération devient intéressant lorsqu'on met en place des processus de génération plus complexes avec différentes étapes qui articulent contrôle et aléatoire, ou mettent en jeu plusieurs modèles, voire différents outils.
Par exemple pour son projet La ville qui n’existait pas 3: Les veilleurs (2050), Grégory Chatonsky a chaîné différents modèles pour générer des images, vidéos et sons à partir d'archives de cartes postales. Ce schéma décrit le processus qu'il a conçu :

Processus mis en place par Grégory Chatonsky pour le projet La ville qui n’existait pas 3: Les veilleurs (2050)