Sommaire
- Qu’est ce qu’un LoRA ?
- Comment fonctionnent les LoRAs ?
- Où trouver des modèles LoRA ?
- Comment utiliser les LoRAs ?
- Installation d'un LoRA
- Utilisation d'un LoRA
- Conseils pour l'utilisation des LoRA
- Ajustement du multiplicateur
- Mot-clefs déclencheurs
- Utiliser plusieurs LoRAs
- Syntaxe du prompt
- Modèle (checkpoint)
- Comment créer un LoRA ?
- Quelques LoRA populaires
- LoRA pour SDXL
- LeLo - LEGO LoRA
- Dressed Animals
- Voxel XL
- ClassipeintXL
- LoRA pour SD 1.5
- One Piece (Wano Saga)
- 墨心 MoXin
- DieselpunkAI
- Dressed Animals
- SamDoesArts (Sam Yang)
- En résumé
- Pour aller plus loin
Êtes-vous prêts à découvrir une nouvelle technique pour enrichir votre collection de modèles tout en économisant de l'espace disque ?
Qu’est ce qu’un LoRA ?
Les LoRA, ou Low-Rank Adaptation, sont de petits modèles qui apportent de légères modifications à un modèle IA comme les modèles standard de Stable Diffusion (checkpoints) ou Flux [dev]. Ils sont généralement 10 à 100 fois plus petits, ce qui les rend très attrayants pour les personnes possédant une vaste collection de modèles.
Certains LoRA vous permettront d’ajouter un style spécifique à vos images tandis que d’autres vous donneront la possibilité de générer des images issues d’univers différents, tels que ceux de vos films, animes ou jeux vidéo favoris.
Dans cet article, nous allons explorer le monde fascinant des LoRA en nous concentrant sur ceux créés pour Stable Diffusion.
Les explications sur leur fonctionnement restent cependant valides pour d’autres modèles de diffusion comme Flux.
Nous verrons également comment les utiliser pour créer vos images avec Stable Diffusion et Automatic1111.
Comment fonctionnent les LoRAs ?
Le terme LoRA (Low-Rank Adaptation) désigne au départ une technique d'apprentissage pour l'ajustement fin des modèles de diffusion.
Elle se distinguent des autres techniques d'apprentissage, telles que Dreambooth et l'inversion textuelle (textuel inversion en anglais, aussi appelée embedding), par un excellent compromis entre la taille du fichier obtenu et la puissance d'apprentissage.
Les fichier LoRAs parviennent en effet à réduire la taille du fichier sans perdre beaucoup de puissance d'apprentissage en s'attaquant aux couches d'attention croisée (cross-attention layers), qui sont les parties les plus cruciales des modèles de diffusion.
Les LoRAs décomposent les matrices de poids de ces couches en deux matrices de bas rang, ce qui permet de stocker beaucoup moins de nombres. Ces matrices ne viennent pas remplacer le fichier du modèle d’origine mais sont enregistré dans un fichier à part, le LoRA, qui ne contient alors que les informations propre à l’entrainement.
Grâce à cette astuce, les fichiers LoRA sont beaucoup plus petits, tout en conservant une puissance d'apprentissage efficace.
En plus de la technique de Low-Rank Adaptation elle-même, d’autres techniques similaires ont également été mises au point pour optimiser la création et le stockage des données d’entrainement. Parfois également désignés sous le nom de LyCORIs, les fichiers obtenu avec ces techniques sont le plus souvent assimilé aux LoRAs et s’utilisent de manière similaire.
Où trouver des modèles LoRA ?
Si vous êtes déjà impatients de mettre la main sur des LoRA, Civitai et Hugging Face sont deux sources incontournables.
Civitai propose une large collection de modèles, de LoRAs et d’autres fichiers de fine tuning pour Stable Diffusion. N'oubliez pas d'y appliquer le filtre LoRA lors de vos recherche pour ne pas avoir d’autres type de fichier dans vos résultats.
Il y a beaucoup de contenu pour adulte (NSFW) sur Civitai. Faites donc attention à activer le filtre NSFW si vous ne voulez pas voir ce type de contenu. (il est normalement activé par défaut)
Hugging Face, quant à lui, dispose d'une bibliothèque de modèles LoRA plus petite mais également variée. Vous pouvez y consulter une liste de LoRA sélectionnés ou y faire une recherche sur le terme LoRA.
N'hésitez pas à fouiller ces deux sites pour trouver des modèles correspondant à vos goûts et à vos projets.
Comment utiliser les LoRAs ?
Dans cette partie de l’article, nous allons détailler comment installer et utiliser un LoRA avec Automatic1111 / Forge, l’interface graphique la plus connue et la plus souvent utilisée pour débuter avec Stable Diffusion.
Mais les LoRAs peuvent évidemment être utilisés avec d’autres interface comme ComfyUI ou Fooocus.
Fooocus est une interface alternative pour Stable Diffusion XL dont l’installation et la prise en main sont plus simples simple et qui permet également d’utiliser les LoRAs.
→ Apprenez Comment utiliser les LoRAs avec Fooocus dans notre tutoriel dédié.
Installation d'un LoRA
Maintenant que vous savez où dénicher des LoRAs, passons à leur installation dans l'interface graphique Automatic1111 (que vous pouvez installer avec nos tutos pour Windows, Mac ou Google Drive) ou utiliser en ligne avec Diffus.
C'est simple comme bonjour : placez simplement le fichiers du LoRA de dans le dossier
stable-diffusion-webui/models/Lora
de votre installation.Utilisation d'un LoRA
Pour utiliser un LoRA dans AUTOMATIC1111 ou Forge, il faut utiliser l’expression suivante dans le prompt :
<lora:filename:multiplier>
filename
correspond au nom du fichier LoRA, sans l'extension (.pt, .bin, etc.), et multiplier
est le poids appliqué au modèle LoRA, avec une valeur par défaut de 1.Mais plutôt que de devoir retenir les noms de fichiers et la bonne syntaxe pour le LoRA, vous pouvez simplement cliquez sur le bouton "modèle", puis sur l'onglet "Lora". Vous verrez alors la liste des modèles LoRA installés (cliquez sur “Refresh” si ce n’est pas le cas).
Cliquez sur celui que vous souhaitez utiliser, et l’expression adéquate sera automatiquement ajoutée dans le prompt.
Et voilà ! Vous avez maintenant activé le LoRA pour la génération de votre prochaine image.
Conseils pour l'utilisation des LoRA
Ajustement du multiplicateur
Vous pouvez augmenter ou diminuer l'effet du modèle LoRA en ajustant la valeur du multiplicateur (
multiplier
). Si vous le réglez sur 0, cela revient à désactiver le LoRA. Plus le valeur sera élevée, plus l’influence du LoRA sur le résultat sera forte.Mot-clefs déclencheurs
Certains LoRAs, comme ceux entraînés avec Dreambooth, nécessitent un mot-clef déclencheur (Trigger Word) pour être utilisés. Vous trouverez généralement ce mot-clef sur la page de présentation du LoRA en question.
Utiliser plusieurs LoRAs
Comme pour les embeddings, vous pouvez utiliser plusieurs LoRA en même temps et les combiner en utilisant plusieurs expression de LoRA de votre prompt.
Syntaxe du prompt
Dans Automatic1111 et Forge, l’expression du LoRA n'est pas considérée comme faisant partie du prompt. Elle sera supprimée une fois le LoRA appliqué. Cela signifie que vous ne pouvez pas utiliser la syntaxe avancée des prompt, comme par exemple [mot-clé1:mot-clé2: 0.8], avec les expression de LoRA.
Modèle (checkpoint)
Certains LoRA donnent de meilleurs résultats avec certains modèles (typiquement ceux qui dérivent du même modèle de base que celui à partir duquel il a été entrainé). En général, il vaut mieux utiliser soit le base model mentionné sur la fiche du LoRA, soit un des modèles conseillés par son créateur dans sa description.
Comment créer un LoRA ?
Un LoRA peut être créer, ou entrainer, relativement facilement.
En effet, si la méthode de création elle-même reste inévitablement complexe (puisqu’il s’agit de calculer les valuers à modifier dans le poids des modèles), il existe aujourd’hui des interfaces prêtes à l’emploi qui permettent d’entrainer de LoRA en choisissant juste quelques paramètres de configuration.
En réalité, l’étape la plus compliquée reste peut-être celle qui précède l’entrainement lui même : la préparation des données qui seront utilisées. C’est à dire la sélection des images et leurs descriptions.
Une fois les images correctement préparé, différente solution s’offrent alors pour entrainer le LoRA sur ces nouvelles images.
L’interface de ComfyUI peut par exemple être utilisée pour entrainer en LoRa - par exemple avec ce Workflow pour entrainer un LoRA Flux. Et des sites comme replicate.com propose également des modules d’entrainement en ligne.
Tutotiels de création d’un LoRA Flux
Consultez également notre guide complet de la création de LoRA pour Flux.
Quelques LoRA populaires
Pour vous donner un aperçu de ce que les LoRAs peuvent accomplir, voici quelques exemples que j’ai particulièrement appréciés.
LoRA pour SDXL
LeLo - LEGO LoRA
Entrainé à l’aide de plus de 900 images de LEGO, ce LoRA est excellent pour générer tout et n’importe quoi en LEGO : figurine, bâtiments, constructions,…
Dressed Animals
Dressed Animals est le LoRA que vous voudrez utiliser pour générer des images plus ou moins photoréalistes avec des animaux habillés comme des humains.
Voxel XL
Voxel est un mot valise créé en contractant les mots volume et pixel. Ils sont en quelques sortent des pixels en 3D. C’est une méthode de rendu 3D particulière utilisée principalement pour la création des terrains dans des jeux vidéos comme Outcast. Ce LoRA génère donc des images en voxels, les pixels 3D.
ClassipeintXL
Ce LoRA mélange les inspirations de plusieurs peintre européens pour générer des peintures à l’huile dans un style classique (mais pas que) du plus bel effet.
LoRA pour SD 1.5
One Piece (Wano Saga)
Le fan de l’anime apprécieront ce LoRA qui permet de générer des images très similaire à celles du dessin animé. De base, ce LoRA permet aussi de générer des images des personnages de Luffy et Zoro. Son auteur propose aussi des LoRA de Nami et Nico Robin qui peuvent le compléter.
墨心 MoXin
Ce Lora se base sur des peinture à l’encre classiques de maitres Chinois. Il génère des illustrations agréables et variées avec beaucoup d’espace négatif et un aspect traditionnel.
Ce Lora donne notamment de très bons résultats avec le modèle GuoFeng3 de style chinois et antique.
DieselpunkAI
Un LoRA adapté à la génération d’images rétrofuturistes, dans un monde dérivée du steampunk mais avec des grosse machine au diesel - Un peu comme dans le Jeu de role Children of the Sun.
Dressed Animals
Un lora qui, comme son nom l’indique, a été conçu pour générer des images d’animaux habillés - ou des personnes à tête d’animal, c’est vous qui voyez…
SamDoesArts (Sam Yang)
Un LoRA conçu pour reproduire le style des illustrayion de Sam Yang tout en étant suffisament flexible pour produire diffèrents genres d’illustrations.
En résumé
Les LoRA sont de petits modificateurs de modèles qui permettent d'apporter des variations intéressantes à vos créations tout en économisant de l'espace disque.
Leur utilisation est simple et intuitive avec l'interface graphique Automatic1111.
N'hésitez pas à expérimenter avec ces modèles pour donner une nouvelle dimension à vos œuvres numériques.
Pour aller plus loin
- L’article de recherche à l’origine de la tehcnique des LoRA : LoRA: Low-Rank Adaptation of Large Language Models (2021)
- Une bonne présentation de comment le concept LoRA est appliqué dans Stable Diffusion : Using LoRA for Efficient Stable Diffusion Fine-Tuning (Hugging Face blog)
- Un guide en anglais sur les LoRA qui explique comment en créer soi-même : Stable Diffusion LoRA models: a complete guide
Ecrit par