FLUX.1-Kontext-dev : Modèle d'intelligence artificielle d'augmentation d'images
Modèle d'IA pour augmenter des images à l'aide d'instructions textuelles
Black Forest Labs a publié FLUX.1-Kontext-dev, un modèle avancé d’IA de transformation d’images qui améliore les images existantes à l’aide d’instructions textuelles.
Contrairement à FLUX.1-dev qui génère des images à partir de texte seul, FLUX.1-Kontext-dev utilise à la fois une image d’entrée et un prompt textuel pour créer des versions modifiées tout en préservant les éléments clés.
Cette image démontre la capacité de FLUX.1-Kontext-dev à améliorer les images.
L’image originale du mascotte Go :

a été transformée avec l’instruction this gopher rides on the bicycle on the hilly road. Un résultat assez bon, n’est-ce pas ?
Qu’est-ce que FLUX.1-Kontext-dev ?
FLUX.1-Kontext-dev est conçu pour la génération et la modification d’images en contexte. Ses fonctionnalités clés incluent :
- Consistance des personnages : préserve les éléments uniques (comme les personnages ou les objets) à travers plusieurs scènes
- Modification locale : modifie des parties spécifiques d’une image sans affecter le reste
- Référence de style : génère de nouvelles scènes tout en maintenant les styles des images de référence
- Amélioration d’images : transforme les images en fonction des instructions textuelles
Installation
Prérequis
Vous aurez besoin de :
- 16 Go+ de VRAM sur votre GPU (NVIDIA RTX recommandé)
- Python 3.8+ avec pip
- Accès à Hugging Face (compte et jeton)
Étapes de configuration
-
Créez un compte Hugging Face sur huggingface.co si vous n’en avez pas déjà un
-
Visitez la page du modèle : https://huggingface.co/black-forest-labs/FLUX.1-Kontext-dev
-
Acceptez le contrat de licence (utilisation non commerciale)
-
Créez un jeton d’accès en écriture sur https://huggingface.co/settings/tokens
-
Téléchargez le modèle :
git clone https://huggingface.co/black-forest-labs/FLUX.1-Kontext-dev
Ou utilisez directement le chemin du modèle dans votre code.
Installation
Installez les packages Python requis :
pip install -U diffusers torch transformers pillow accelerate sentencepiece
Ou utilisez uv :
cd tools/fkon
uv sync
Utilisation
Script Python de base
Voici un exemple complet utilisant FLUX.1-Kontext-dev :
import torch
from diffusers import FluxKontextPipeline
from PIL import Image
# Chargez le modèle
model_path = "/path/to/FLUX.1-Kontext-dev"
pipe = FluxKontextPipeline.from_pretrained(
model_path,
torch_dtype=torch.bfloat16
)
# Activez le déchargement vers le CPU pour économiser la VRAM
pipe.enable_model_cpu_offload()
pipe.enable_sequential_cpu_offload()
# Chargez votre image d'entrée
input_image = Image.open("path/to/your/image.png").convert("RGB")
# Définissez votre instruction d'amélioration
prompt = "this gopher rides on the bicycle on the hilly road"
# Générez l'image améliorée
result = pipe(
prompt=prompt,
image=input_image,
height=496,
width=680,
guidance_scale=3.5,
num_inference_steps=60,
max_sequence_length=512,
generator=torch.Generator("cpu").manual_seed(42)
)
# Enregistrez le résultat
output_image = result.images[0]
output_image.save("augmented_image.jpg")
Gestion des dimensions
FLUX.1-Kontext-dev a des exigences spécifiques en matière de dimensions :
- Multiples de 16 : les dimensions doivent être des multiples de 16
- Ajustement automatique : le modèle peut ajuster les dimensions pour répondre à ses exigences
- Redimensionnement de la sortie : notre outil redimensionne automatiquement la sortie aux dimensions demandées
L’outil gère cela en :
- Arrondissant les dimensions demandées aux multiples de 16
- Redimensionnant l’image d’entrée aux dimensions arrondies
- Générant l’image (le modèle peut ajuster davantage)
- Redimensionnant la sortie aux dimensions demandées
Exemples d’utilisation
- Transformation de personnage
Transformer un personnage tout en maintenant la cohérence :
prompt = "this gopher rides on the bicycle on the hilly road"
- Suppression d’objets
Supprimer des éléments indésirables :
prompt = "please remove the human dressed as minnie mouse from this photo"
Conseils et bonnes pratiques
- Gestion de la VRAM : utilisez
enable_model_cpu_offload()si vous avez peu de VRAM - Planification des dimensions : demandez des dimensions qui sont des multiples de 16 pour minimiser les ajustements
- Clarté des instructions : soyez précis dans vos instructions textuelles pour obtenir de meilleurs résultats
- Génération par lots : générez plusieurs variations (
--n 4) pour obtenir le meilleur résultat - Contrôle des graines : utilisez des graines manuelles pour des résultats reproductibles
Limitations
- Licence non commerciale : une licence commerciale est nécessaire pour une utilisation professionnelle
- Exigeant en termes de matériel : nécessite un GPU puissant avec une grande quantité de VRAM
- Contraintes de dimensions : les dimensions peuvent être ajustées automatiquement
- Temps de traitement : peut prendre 10 à 15 minutes par image selon le matériel