Dernières actualités
Guide à l’exposition et à la profondeur de champ dans Unreal EngineBien coter dans LayOut : guide pas à pas pour les planches d’architectureMuse Spark Open dévoilé : un modèle multimodal de 816 milliards de paramètresCréer des images d’architecture avec FLUX et Diffusers : guide de contrôle et de rapiditéSélection d’objets dans Rhino 8 : guide pratique des fenêtres, lassos et sous-objetsLa rumeur des 512 Go de mémoire pour les GPU Intel D-Series n’est pas confirméeComment configurer les coupes et transitions de caméra dans Unreal Engine Sequencer ?FLUX.3 Image Klein est disponible : le contrôle de la composition arrive dans DiffusersLa GeForce RTX 5090 apparaît comme « Not Carried » chez Micro CenterLe pavillon Hypha-Lume transforme les mouvements des visiteurs en lumière et en son
Conseils et guidesFLUXMariDiffusers

Créer des images d’architecture avec FLUX et Diffusers : guide de contrôle et de rapidité

La documentation de Hugging Face Diffusers présente les options de vitesse et de mémoire pour générer des images avec FLUX, ainsi que des méthodes de contrôle comme Canny, Depth et Kontext. Ce guide adapte ces méthodes aux travaux de concepts architecturaux.

Image de concept d’intérieur contemporain évoquant la profondeur et les contoursImage IA
Image d’illustration générée par IA.Image : 3dsınıfı / FCA AI

En bref

  1. FLUX.1-schnell est présenté dans la documentation comme une option tirant parti d’un faible nombre d’étapes d’inférence ; l’exemple utilise 4 étapes et une guidance_scale de 0.
  2. Pour FLUX.1-dev, environ 50 étapes d’inférence sont indiquées comme nécessaires pour obtenir une bonne qualité.
  3. Canny Control peut guider la génération à partir des contours, tandis que Depth Control s’appuie sur les informations de profondeur.
  4. La documentation de Diffusers indique que l’exécution de FLUX peut être coûteuse sur du matériel grand public et aborde des options de gestion de la mémoire comme le CPU offload et la quantification.

La documentation de Hugging Face Diffusers présente les modèles FLUX pour la génération d’images à partir de texte et la modification d’images existantes par conditionnement. Ce guide adapte les réglages décrits dans la documentation à des cas d’usage comme les concepts architecturaux, les ambiances d’intérieur et le travail à partir d’images de référence. Aucun numéro de version précis de Diffusers n’étant indiqué dans la documentation, les étapes ci-dessous s’appuient sur les exemples FLUX du guide ; il convient de vérifier séparément si elles varient selon la version installée.

1. Choisir la variante de FLUX adaptée au travail

La famille FLUX comprend différents modèles conçus pour des tâches distinctes. FLUX.1-schnell est un modèle distillé sur les pas de temps (timestep-distilled), tandis que FLUX.1-dev est une variante distillée avec guidance. La documentation répertorie également Fill, Canny Control, Depth Control, Redux et Kontext. Pour commencer, Schnell ou dev peuvent convenir si l’objectif est uniquement de générer une image d’ambiance à partir d’une description textuelle ; Canny ou Depth peuvent être envisagés si l’on souhaite suivre des lignes ou une organisation spatiale précise.

Pour Schnell, max_sequence_length doit être au maximum de 256 et guidance_scale doit être réglé sur 0. L’exemple de la documentation utilise 4 étapes d’inférence pour une sortie de 768 × 1360 pixels. Il est indiqué que la variante dev nécessite environ 50 étapes pour produire une bonne qualité ; elle n’a pas la même limite pour max_sequence_length. Il s’agit de réglages d’exemple présentés dans la documentation : il faut tester séparément la qualité et la durée pour chaque projet.

2. Générer un premier concept à partir d’une description

Pour un premier essai, décrivez les éléments essentiels de la scène et son atmosphère de manière concise et claire. Dans un travail architectural, par exemple, la description peut préciser le type d’espace, la sensation des matériaux et la qualité de la lumière. Il s’agit de conseils pratiques pour rédiger un prompt ; la documentation de Diffusers n’impose pas de modèle de prompt architectural particulier.

L’exemple ci-dessous reprend l’utilisation de FLUX.1-schnell présentée dans la documentation. Le texte du champ prompt doit être adapté à la scène de travail. enable_model_cpu_offload() figure dans l’exemple de la documentation et permet d’utiliser l’option de déchargement du modèle vers le CPU.

python
import torch
from diffusers import FluxPipeline

pipe = FluxPipeline.from_pretrained(
    "black-forest-labs/FLUX.1-schnell",
    dtype=torch.bfloat16
)
pipe.enable_model_cpu_offload()

image = pipe(
    prompt="A calm contemporary interior with natural materials and soft daylight",
    guidance_scale=0.0,
    height=768,
    width=1360,
    num_inference_steps=4,
    max_sequence_length=256,
).images[0]

Les dimensions et le nombre d’étapes de cet exemple sont identiques à ceux de l’exemple Schnell dans la documentation source ; le texte du prompt n’est fourni qu’à titre d’illustration. Lors de l’évaluation du résultat, ne vous fiez pas uniquement à vos préférences visuelles : vérifiez également si l’organisation générale de l’espace a été préservée. Si vous souhaitez essayer le modèle dev pour obtenir davantage de détails, gardez à l’esprit qu’une génération d’environ 50 étapes peut prendre plus de temps.

3. Contrôler la géométrie avec Canny ou Depth

Si la description textuelle ne préserve pas assez précisément la forme d’un croquis ou d’une organisation spatiale existante, vous pouvez utiliser une image de conditionnement. Canny Control s’appuie sur les contours ; la documentation de Diffusers indique que cette méthode est conçue pour suivre de près la contrainte structurelle. Pour le prétraitement Canny, la documentation donne en exemple un seuil bas de 50, un seuil haut de 200, ainsi que des valeurs de 1024 pour la détection et la résolution de l’image. L’exemple de génération utilise également une sortie de 1024 × 1024, 50 étapes et une guidance_scale de 30,0.

Depth Control utilise une condition visuelle obtenue à l’aide d’un préprocesseur de profondeur. L’exemple de la documentation indique une sortie de 1024 × 1024, 30 étapes et une guidance_scale de 10,0. Pour expérimenter avec un croquis d’intérieur ou un travail de volumétrie, considérez Canny comme une option privilégiant les contours et Depth comme une option mettant l’accent sur les relations de profondeur. Ces méthodes doivent être envisagées comme un moyen d’ajouter une condition à la génération, et non comme une garantie de figer complètement le résultat.

RéglageValeur recommandéeEffet
guidance_scale de Schnell0Exigence de l’exemple Schnell dans la documentation
max_sequence_length de Schnell256 au maximumLimite documentée pour Schnell
Nombre d’étapes de l’exemple Schnell4Exemple de la documentation en 768 × 1360
Nombre d’étapes de l’exemple devEnviron 50Valeur approximative indiquée dans la documentation pour une bonne qualité
Seuils Canny50 / 200Exemple de seuil bas/haut fourni dans la documentation pour le prétraitement Canny
Nombre d’étapes de l’exemple Depth30Exemple Depth Control dans la documentation

4. Envisager Fill, Redux ou Kontext pour modifier des images

FLUX Fill permet de modifier une image à l’intérieur d’une zone masquée et de réaliser un outpainting au-delà de ses limites. Selon la documentation de Diffusers, ce pipeline ne requiert pas l’entrée strength des pipelines d’inpainting classiques. Cette fonctionnalité peut convenir lorsqu’il faut modifier une zone précise d’une image d’intérieur ou étendre le cadrage ; la préparation du masque et de l’image source reste toutefois à la charge de l’utilisateur.

Redux est décrit comme un adapter fonctionnant avec les modèles de base FLUX.1 et prenant en charge FLUX.1-dev et FLUX.1-schnell pour la génération d’image à image. Kontext est destiné à des usages comme la modification d’une image existante, son amélioration, le rééclairage et le transfert de style. La documentation précise également qu’il faut exécuter le integrity safety checker fourni après une génération avec Kontext. Lors d’une étape de retouche, il est donc important d’ajouter au flux de travail les étapes de contrôle et de sécurité, en plus de choisir le pipeline approprié.

5. Prévoir le matériel et la reproductibilité

La documentation de Diffusers indique que l’exécution de FLUX peut être coûteuse sur du matériel grand public et que les optimisations peuvent contribuer à accélérer le traitement ou à réduire l’utilisation de la mémoire. Elle précise également que la quantification peut améliorer l’efficacité mémoire, mais qu’elle peut entraîner un compromis en matière de latence d’inférence. Dans les bureaux, il est donc préférable de commencer par de petits tests avec la résolution et la variante de modèle visées, puis d’évaluer les besoins en matériel et en temps. La documentation ne fournit aucune configuration de carte graphique requise ni aucun prix.

La documentation générale de Diffusers sur la génération d’images explique que l’utilisation de torch.Generator pour définir une seed permet de reproduire un même résultat. Cette fonction peut être utile pour comparer des prompts ou d’autres réglages dans le cadre d’une présentation de concept. Toutefois, les sources ne garantissent pas que les différents pipelines FLUX produisent le même résultat dans toutes les conditions.

Erreurs fréquentes

  • Utiliser une valeur de guidance_scale autre que 0 avec Schnell ou dépasser 256 pour max_sequence_length.

  • Considérer l’exemple de Schnell en 4 étapes comme un réglage pour le modèle dev ; la documentation décrit des exigences distinctes pour les deux variantes.

  • Supposer que l’image de conditionnement Canny ou Depth verrouillera précisément chaque détail du résultat.

  • Ne voir dans la quantification qu’un gain de mémoire ; la documentation mentionne également le compromis en matière de latence.

Sources

2 sources
H(
huggingface.co (Apache-2.0)huggingface.co/docs/diffusers/api/pipelines/flux
Résumé
H(
huggingface.co (Apache-2.0)huggingface.co/docs/diffusers/using-diffusers/conditional_image_generation
Résumé

Les textes sources ne sont pas republiés ; les courtes citations sont signalées, le reste est notre propre résumé et commentaire.

L’avis de 3dsınıfı
3dL’analyse de la rédaction

Pour les bureaux d’architecture et de visualisation en Turquie, le principal avantage pratique est de pouvoir tester des images d’idées avec différents niveaux de contrôle : commencer rapidement à partir d’un texte, puis utiliser un conditionnement de type croquis ou modifier des zones choisies. Des options comme Canny et Depth peuvent faciliter l’intégration d’une référence spatiale existante au flux de travail ; il ne faut toutefois pas supposer que les résultats préserveront parfaitement la géométrie du projet.

Côté matériel, les sources soulignent en particulier que FLUX peut être coûteux à exécuter sur du matériel grand public et qu’il existe un compromis entre efficacité mémoire et latence d’inférence. Les bureaux devraient commencer par de courts tests sur leurs propres scènes et évaluer conjointement la vitesse, la mémoire et la cohérence visuelle. Les conditions de licence et d’utilisation commerciale ne sont pas abordées dans cette documentation : il convient donc de consulter séparément les conditions applicables aux modèles avant toute mise en production.

Questions fréquentes

Quels réglages utiliser pour FLUX.1-schnell ?

La documentation de Diffusers indique que `guidance_scale` doit être réglé sur 0 et que `max_sequence_length` ne doit pas dépasser 256. L’exemple d’utilisation comprend 4 étapes d’inférence.

Comment contrôler la structure d’un croquis avec FLUX ?

Canny Control utilise une condition de contour, tandis que Depth Control utilise une condition de profondeur. La documentation présente les deux comme des options permettant d’ajouter une condition à la génération d’images avec FLUX.

Quelle carte graphique faut-il pour exécuter FLUX ?

La documentation source ne précise pas de configuration de carte graphique requise. Elle indique que FLUX peut être coûteux à exécuter sur du matériel grand public et qu’il existe des options d’optimisation pour réduire l’utilisation de la mémoire.

Les commentaires et le forum sont en turc.Rejoindre la discussion
+

À lire aussi