FLUX.3 Image Klein lands in Diffusers with bounding-box layout control
Black Forest Labs' FLUX.3 Image Klein is out, and it runs in Diffusers from day one. Two open checkpoints, one model covering text-to-image, multi-reference image-to-image and a new capability: layout control, where you write bounding boxes into the prompt to say where each part of the image goes, or which part of a reference image moves.
What it can do
The distilled checkpoint generates a 1024 by 1024 image in 16 steps by default, with no classifier-free guidance. The base checkpoint runs 50 steps with guidance and is the one meant for fine-tuning.
Multi-reference editing works by passing several images and addressing them in the prompt as <ref_image_0>, <ref_image_1>, and so on. The prompt is written as a caption of the image you want, with the change included. The new piece is the layout control: you append a JSON list of regions to the caption, each with an id, a bounding box and a short description, and the model draws each region's description inside its box. Boxes use a normalized 0 to 1000 scale, so the same coordinates work at any output size. For edits, each region carries a source box in the reference and a target box in the output: matching boxes pin a region in place, different ones move it while the rest of the scene stays put.
What it costs to run
Hugging Face benchmarked the distilled checkpoint on a single H100 with no offloading: 1.93 seconds for a 1024 by 1024 text-to-image generation, 3.87 seconds with one reference image, peak memory 23.8 GiB in all three workflows. A reference image roughly doubles the time, because its tokens join the same sequence as the text and the image being generated; a 1024 by 1024 reference adds 4,096 tokens to every transformer call.
If your GPU is smaller, Black Forest Labs also ships the transformer as a single file in bf16, FP8 and NVFP4 quantized formats. The FP4 build peaks around 15 GiB on an RTX 6000, and Diffusers has automatic CPU offloading for anything below that.
Fine-tuning and the architecture
Diffusers ships DreamBooth LoRA training scripts for both text-to-image and image editing, with memory-saving flags (gradient checkpointing, latent caching, 8-bit Adam) for smaller cards.
Under the hood, FLUX.3 is a latent-space flow model using the same VAE as Flux.2, where one token covers a 16 by 16 pixel patch, so a 1024 by 1024 image is a grid of 4,096 tokens. The text encoder is Qwen3-VL, and the model reads hidden states from eight of its 36 layers instead of just the last one. The transformer runs in two stages: five per-mode blocks where the text, image and reference streams attend only to themselves, then 28 joint blocks where everything attends to everything. A notable change from FLUX.1 and FLUX.2: every token gets its own timestep, so reference images are marked as clean context rather than something to denoise. The pipeline ships as a Modular Diffusers pipeline, meaning individual blocks can be swapped or extended.
The practical read
This is a solid option for teams that generate images locally or want an open-weights base to fine-tune. Two things to check before committing: whether your GPU clears the 24 GiB line (or you accept FP4 quantization and the offload path), and whether the prompt-level layout control holds up on your content, since the bounding boxes steer the model but don't guarantee pixel-exact placement. Some will call it the strongest open image model on the market; that claim is not in the article, and the numbers above are Hugging Face's own measurements on a single H100.
Source: huggingface.co