L'Entraînement LoRA FLUX.2 [dev] est très différent de l'entraînement des anciens modèles SD. FLUX.2 [dev] combine un énorme transformer à flux rectifié de 32B paramètres, un encodeur de texte Mistral de 24B et un autoencoder de haute qualité. Il gère la génération texte-vers-image et l'édition d'images dans un seul checkpoint. Ce guide couvre :
- Ce qui rend FLUX.2 [dev] spécial
- Comment ces choix de conception affectent l'entraînement LoRA
- Comment configurer AI Toolkit pour différents niveaux de matériel
- Comment configurer les datasets, déclencheurs et paramètres pour obtenir le style / personnage / comportement d'édition souhaité
Cet article fait partie de la série d'entraînement LoRA AI Toolkit. Si vous êtes nouveau sur Ostris AI Toolkit, commencez par la vue d'ensemble de l'entraînement LoRA AI Toolkit avant de plonger dans ce tutoriel LoRA FLUX 2 dev.
Table des matières
- 1. Comprendre FLUX.2 [dev] pour l'entraînement LoRA
- 2. Quel type de FLUX.2 LoRA entraînez-vous réellement ?
- 3. Détails spécifiques à FLUX.2 qui changent les paramètres LoRA
- 4. Exigences matérielles et VRAM pour l'entraînement LoRA FLUX.2
- 5. Concevoir des datasets pour FLUX.2 LoRA
- 6. Étape par étape : configurer l'entraînement LoRA FLUX.2 dev dans AI Toolkit
- 7. Déboguer les résultats LoRA FLUX.2 et améliorer la qualité
- 8. Utiliser votre FLUX.2 LoRA en inférence
1. Comprendre FLUX.2 [dev] pour l'entraînement LoRA
Avant de toucher aux curseurs, il est utile de comprendre ce que vous affinez.
1.1 Architecture de haut niveau
D'après la fiche officielle du modèle FLUX.2-dev et l'annonce de Black Forest Labs :
- Modèle de base
FLUX.2 [dev]est un transformer à flux rectifié de 32B paramètres (un modèle de flux latent de style DiT) entraîné from scratch, pas une continuation de FLUX.1. Il combine la génération texte-vers-image et l'édition d'images (image unique et multi-référence) dans un seul checkpoint. - Encodeur de texte
FLUX.2 [dev] utilise Mistral Small 3.1 / 3.2 – 24B comme encodeur de texte vision-langage. Ce sont 24B paramètres supplémentaires en plus des 32B du DiT. En précision normale, cela seul consomme une énorme partie de la VRAM et joue un rôle central dans le comportement du modèle.
- Autoencoder (VAE)
Le modèle utilise un nouveau AutoencoderKLFlux2 avec 32 canaux latents (FLUX.1 en utilisait 16). Il est conçu pour l'édition haute résolution et la préservation fine des textures, c'est pourquoi FLUX.2 peut faire des éditions nettes à 1024×1024.
- Génération + édition unifiées
La même architecture gère le texte-vers-image pur, l'édition d'image unique et l'édition multi-référence (jusqu'à environ 10 images de référence). Il n'y a pas de branche séparée "édition uniquement" ; c'est un seul réseau.
- Guidance distillé
FLUX.2 [dev] est un modèle guidance-distillé : il n'y a pas de guidance classique sans classifieur avec des passes séparées "conditionnelle" et "inconditionnelle". Le "guidance" est intégré dans une seule passe forward.
Ce que cela signifie pour LoRA :
- Le transformer central est énorme.
Parce que FLUX.2 [dev] utilise un transformer fusionné de haute capacité, le rang LoRA doit être choisi avec soin. Des rangs très bas (4–8) peuvent à peine faire bouger les choses.
- L'encodeur de texte est lourd et central pour le comportement.
Le VLM Mistral de ~24B est responsable de la façon dont les prompts sont compris.
- Les mêmes poids gèrent T2I et l'édition.
Si vous poussez trop un LoRA, vous risquez de changer à la fois le comportement texte-vers-image et édition d'image.
- Le guidance est spécial car le modèle est guidance-distillé.
Vous entraînez normalement avec
guidance_scale = 1. En inférence, vous utiliserezguidance_scaleautour de 2–4.
2. Quel type de FLUX.2 LoRA entraînez-vous réellement ?
Avec FLUX.2 [dev], vous devriez d'abord décider ce que vous voulez que l'adaptateur fasse. Le modèle de base est déjà fort en édition multi-référence et suivi de prompts complexes, donc vous n'avez besoin d'un LoRA que lorsque vous voulez quelque chose de persistant que le modèle de base ne peut pas faire de manière fiable par lui-même.
Objectifs courants pour entraîner un LoRA pour FLUX.2-dev :
- LoRA de style (T2I + édition)
Apprendre à FLUX.2 à utiliser un style de peinture spécifique, une gradation de couleurs ou un look de rendu lorsqu'un déclencheur est présent.
- LoRA de personnage / identité
Modéliser une personne spécifique, un avatar, une mascotte ou une gamme de produits avec des visages/caractéristiques cohérents.
- LoRA d'objet / accessoire / marque
Capturer des produits spécifiques, logos, accessoires ou formes avec des contraintes strictes de géométrie ou de marque.
- LoRA d'instruction / édition
Changer le comportement plutôt que le style : par exemple, "transformer tout portrait en croquis aquarelle", "créer une version blueprint", ou des instructions d'édition structurées avec des paires avant/après.
Savoir lequel de ces objectifs vous visez aide à décider du dataset, du rang, du Differential Output Preservation et des paramètres de guidance.
3. Détails spécifiques à FLUX.2 qui changent les paramètres LoRA
3.1 LoRA sur un transformer fusionné (mise à l'échelle du rang)
FLUX.2 [dev] fusionne les projections d'attention et MLP en matrices très larges par rapport au SD1.5/SDXL classique. Cela signifie :
- Des rangs très bas (4–8) semblent souvent trop faibles.
- Pour les LoRAs de style ou de personnage sur FLUX.2 [dev], rang 32 est une bonne valeur par défaut quand la VRAM le permet.
- Si la VRAM est serrée ou le style est simple, vous pouvez utiliser rang 8–16 et moins d'étapes.
- Pour des marques ou identités extrêmement complexes, rang 32–64 peut aider, mais le surajustement devient plus probable.
Pour le FLUX.2 dev entraînement LoRA, le modèle bénéficie généralement de rangs légèrement plus élevés que les anciens modèles, mais vous payez en VRAM et en risque de surajustement.
3.2 Modèle guidance-distillé : entraînement à guidance_scale = 1
Parce que FLUX.2 [dev] est guidance-distillé, l'intuition habituelle de Stable Diffusion de "CFG 7–8" ne s'applique pas.
- Entraînement : définissez
guidance_scale = 1. - Inférence : une
guidance_scaledans la plage 2–4 fonctionne bien.
3.3 L'encodeur de texte est énorme (et pourquoi le caching des embeddings compte)
Le Mistral 24B VLM utilisé comme encodeur de texte de FLUX.2 n'est pas un petit module secondaire. En précision normale, c'est environ 24GB de paramètres seul.
Dans AI Toolkit, les schémas habituels sont :
- Si votre configuration d'entraînement utilise une légende fixe par image et que vous n'utilisez pas Differential Output Preservation : Activez Cache Text Embeddings.
- Si vous utilisez Differential Output Preservation (DOP) ou quoi que ce soit qui modifie les prompts à chaque étape : Vous ne pouvez pas mettre en cache les embeddings de texte.
3.4 Autoencoder et résolution
FLUX.2 utilise un AutoencoderKLFlux2 dédié conçu pour le travail 1024×1024+ :
- Il utilise 32 canaux latents, ce qui donne meilleurs détails et fidélité d'édition que les anciens VAE à 16 canaux.
- En pratique, entraîner des LoRAs FLUX.2 à résolution 768–1024 capture la plupart des avantages.
Les buckets de résolution d'AI Toolkit vous permettent de lister plusieurs résolutions (par exemple [768, 896, 1024]).
4. Exigences matérielles et VRAM pour l'entraînement LoRA FLUX.2
FLUX.2 [dev] est très gourmand en mémoire. L'entraînement LoRA est plus lourd que l'inférence car vous avez aussi besoin de mémoire pour les gradients et les états de l'optimiseur.
4.1 Paramètres recommandés par niveau de VRAM
Niveau A — GPU 16–24 GB (ex. 4070 Ti, 4080, 4090)
- Ce qui est réaliste
À ce niveau, le fine-tuning LoRA FLUX.2 dev est possible mais serré. Vous êtes principalement limité aux petits LoRAs de style ou de personnages simples à environ 896–1024 px sur le côté long, avec Batch Size = 1.
- Paramètres clés de l'UI
Dans le panneau MODEL : Low VRAM ON et Layer Offloading ON.
Dans le panneau QUANTIZATION : Transformer à
float8 (default)et Text Encoder àfloat8 (default).Dans le panneau TRAINING : Batch Size = 1 et utiliser Gradient Accumulation si besoin.
Niveau B — GPU 32–48 GB (ex. RTX 6000 Ada, A6000, certains A100)
- Ce qui est réaliste
C'est le premier niveau où AI Toolkit FLUX.2 dev LoRA se sent confortable. Vous pouvez entraîner des LoRAs de style et personnage de qualité production à 1024×1024, avec 20–60+ images et 1000–3000 étapes.
- Paramètres clés de l'UI
Dans MODEL : Low VRAM ON par défaut ; Layer Offloading OFF sauf si vous avez encore OOM.
Dans TRAINING : Batch Size = 1–2, Steps ≈ 1000–3000, Learning Rate = 0.0001, Linear Rank = 32.
Niveau C — GPU 64–96+ GB (ex. H100, H200 sur RunComfy)
- Ce qui est réaliste
Ici vous avez enfin de la marge : 1024×1024 avec Batch Size = 2–4, buckets de résolution plus grands ou multiples, et Differential Output Preservation ON par défaut sont tous simples.
- Paramètres clés de l'UI
Dans MODEL : vous pouvez laisser Low VRAM OFF et Layer Offloading OFF.
Dans TRAINING : Batch Size = 2–4, Linear Rank = 32–64 et Differential Output Preservation ON.
4.2 AI Toolkit local vs. AI Toolkit cloud sur RunComfy
Vous pouvez exécuter ce workflow LoRA FLUX.2 de deux façons :
- Localement avec AI Toolkit – installez AI Toolkit depuis le dépôt GitHub AI Toolkit et utilisez votre propre GPU.
- AI Toolkit cloud sur RunComfy – ouvrez l'AI Toolkit cloud sur RunComfy et entraînez sur des GPU H100 (80 GB) ou H200 (141 GB) sans installation locale.
5. Concevoir des datasets pour FLUX.2 LoRA
5.1 Combien d'images ?
- LoRA de style simple – environ 15–30 images curées avec un style cohérent.
- LoRA de personnage / identité – environ 20–60 images avec des vues claires, angles variés et éclairage.
- LoRA d'édition / instruction – souvent des datasets de paires avec 50–200 triplets (source, cible, instruction).
5.2 Stratégie de captioning : ce que vous n'écrivez pas compte
Ce que vous ne décrivez pas dans la légende est "libre" pour que le LoRA l'attache à votre déclencheur.
Pour un LoRA de style :
- Légendes qui décrivent ce qui est dans l'image (personne, pose, scène, objets).
- Légendes qui ne décrivent pas les coups de pinceau, couleurs, médium ou style de composition.
Pour un LoRA de personnage :
- Utilisez un déclencheur court et unique (ex.
midnight_tarot) et un mot de classe (person,woman, etc.).
5.3 Differential Output Preservation (DOP)
Differential Output Preservation est une stratégie de régularisation utilisée dans AI Toolkit qui compare :
- La sortie du modèle de base sans LoRA, et
- La sortie avec le LoRA actif,
et pénalise le LoRA pour changer des choses quand un déclencheur n'est pas présent.
6. Étape par étape : configurer l'entraînement LoRA FLUX.2 [dev] dans AI Toolkit
6.1 Configuration initiale unique
- Installez AI Toolkit depuis le dépôt GitHub et lancez l'UI (
npm run build_and_startdans le dossierui/). - Alternativement, ouvrez l'AI Toolkit cloud sur RunComfy et commencez de là (pas d'installation locale nécessaire).
6.2 Préparez votre dataset dans le Toolkit
- Rassemblez les images pour votre type de LoRA choisi.
- Placez-les dans un dossier dans le répertoire datasets d'AI Toolkit, par exemple :
/ai-toolkit/datasets/flux2_midnight_tarot/ - Ajoutez des fichiers de légende
.txtavec le même nom de base que chaque image. - Utilisez
[trigger]dans les légendes où votre mot déclencheur doit apparaître.
6.3 Créer un nouveau job d'entraînement
6.3.1 Panneau JOB – nom, GPU et mot déclencheur
- Training Name : Choisissez un nom descriptif, par exemple
flux2_midnight_tarot_v1. - GPU ID : Pour installation locale, sélectionnez votre GPU physique (typiquement
0). - Trigger Word : Définissez le token réel que vous voulez taper dans les prompts, par exemple
midnight_tarot.
6.3.2 Panneaux MODEL & QUANTIZATION
- Model Architecture : Choisissez FLUX.2.
- Name or Path :
black-forest-labs/FLUX.2-dev. - Low VRAM : ON au Niveau A et souvent Niveau B. OFF au Niveau C.
- Layer Offloading : Activez au Niveau A. OFF aux Niveaux B et C.
- Transformer :
float8 (default). - Text Encoder :
float8 (default).
6.3.3 Panneau TARGET
- Target Type :
LoRA. - Linear Rank : 32 comme bon défaut pour FLUX.2.
6.3.4 Panneaux TRAINING & SAVE
- Batch Size :
1sur GPU 24–48GB,2sur 64GB+. - Gradient Accumulation : Commencez à
1. Augmentez à2–4si VRAM est serré. - Steps :
- LoRA de style, 15–30 images : 800–2000 étapes.
- LoRA de personnage, 30–60 images : 1000–2500 étapes.
- LoRA d'instruction/édition avec 100+ exemples : 1500–3000 étapes.
- Optimizer :
AdamW8Bit. - Learning Rate :
0.0001. - Weight Decay :
0.0001. - Timestep Type :
weightedrecommandé. - Loss Type :
Mean Squared Error. - EMA : OFF pour LoRAs.
- Text Encoder Optimizations :
- Sans DOP et légendes statiques :
Cache Text Embeddings: ON,Unload TE: OFF. - Avec DOP : Les deux OFF.
- Data Type :
BF16. - Save Every :
250étapes.
6.3.5 Regularization & Advanced
Differential Output Preservation (DOP) :
- Differential Output Preservation ON.
- Trigger : même mot déclencheur.
- Preservation Class : mot neutre comme
photo.
Differential Guidance :
- Do Differential Guidance : ON avec Scale de
3est sûr pour la plupart des LoRAs FLUX.2.
6.3.6 Panneau DATASETS
- Target Dataset : Choisissez votre dataset.
- Default Caption :
[trigger] a portrait of a personsi pas de fichiers.txt. - Caption Dropout Rate :
0.05si Cache Text Embeddings OFF, sinon0. - Cache Latents : ON.
- Resolutions :
[768, 896, 1024]selon VRAM.
6.4 Configuration d'échantillonnage de prévisualisation
- Sample Every :
250étapes. - Guidance Scale :
1pour les prévisualisations. - Sample Steps : 25 étapes.
- Seed : Fixez une seed (ex.
42). - Prompts : Ajoutez 2–4 prompts représentatifs.
7. Déboguer les résultats LoRA FLUX.2 et améliorer la qualité
7.1 "GatedRepoError / 401 lors du téléchargement de FLUX.2-dev"
FLUX.2 [dev] est un repo Hugging Face protégé. Acceptez la licence sur https://huggingface.co/black-forest-labs/FLUX.2-dev, créez un token Read, et ajoutez-le dans les Settings du trainer.
7.2 "Rien ne change après 1000+ étapes"
- Vérifiez que le LoRA est appliqué dans l'échantillonnage.
Linear Rank = 16–32au lieu de 4–8.Learning Rate = 0.0001.- Supprimez les descripteurs stylistiques des légendes.
7.3 "Mon LoRA a écrasé le modèle de base"
- Activez Differential Output Preservation.
- Réduisez à 800–1500 étapes.
Linear Rank = 16etLearning Rate = 0.000075.
7.4 "CUDA out of memory"
- Résolution de 1024 → 896 ou 768.
- Activez gradient checkpointing et accumulation.
- Quantification FP8 ou 4-bit.
- Activez Cache Latents.
- Migrez vers H100/H200 sur RunComfy.
8. Utiliser votre FLUX.2 LoRA en inférence
- Model playground – ouvrez le FLUX.2 LoRA playground.
- Workflows ComfyUI – chargez un workflow comme Flux 2 Dev.
Plus de guides d'entraînement LoRA AI Toolkit
- Entraînement LoRA Z-Image Turbo avec AI Toolkit
- Entraînement LoRA LTX-2 avec AI Toolkit
- Entraînement LoRA Qwen-Image-Edit-2511 avec AI Toolkit
- Entraînement LoRA Qwen-Image-Edit-2509 avec AI Toolkit
- Entraînement LoRA Wan 2.2 I2V 14B image-vers-vidéo
- Entraînement LoRA Wan 2.2 T2V 14B texte-vers-vidéo
- Entraînement LoRA Qwen Image 2512
Prêt à commencer l'entraînement ?

