Black Forest Labsはオープンな画像生成モデルFLUX.3 Image Kleinを公開し、Hugging Face Diffusersはリリース初日から対応しました。蒸留チェックポイントはH100上で1024×1024画像を約2秒、16 stepsで生成します。
何が新しいか
FLUX.3 Image Kleinは、テキストから画像、複数参照画像による画像から画像、そしてプロンプト内にバウンディングボックスを書くレイアウト制御を1つのモデルで扱います。チェックポイントは蒸留版black-forest-labs/flux-3-image-klein(16 steps、CFGなし)とベース版black-forest-labs/flux-3-image-klein-base(50 steps、classifier-free guidance)の2つです。テキストエンコーダーにはQwen3-VLを使います。Qwenは Alibaba Cloudが開発するモデルファミリーです。DiffusersではModular Pipelineとして提供され、ブロックの差し替えや追加ができます。
メモリ使用量
| 形式(GPU) | ロード後ピーク | 推論後ピーク |
|---|---|---|
| nvfp4(RTX6000) | 13.4 GiB | 15.3 GiB |
| fp8r(H100) | 14.35 GiB | 16.27 GiB |
| bf16(H100) | 18.80 GiB | 20.72 GiB |
fp8r(rowwise FP8)の高速カーネルはCompute capability 8.9以上(Ada、Hopper、Blackwell)で動きます。nvfp4はBlackwellで、flashinfer-pythonとflashinfer-cubinを同じバージョンで揃える必要があります。それ以外のGPUでは各ステップで重みを逆量子化するため、メモリは減りますが高速化はしません。原文は、メモリが少ない場合の対策として量子化transformerのロードと、テキストエンコーダーを別に実行して解放する方法を挙げています。
試し方
インストールはpip install -U diffusers transformersです。蒸留版は次のように動かします。
import torch
from diffusers import ModularPipeline
pipe = ModularPipeline.from_pretrained("black-forest-labs/flux-3-image-klein")
pipe.load_components(dtype=torch.bfloat16)
pipe.to("cuda")
pipe(prompt="a red fox", output="images")[0].save("fox.png")
height、width、num_inference_stepsでサイズとステップ数を変更できます。- 画像から画像では
image引数に参照画像を渡します。複数枚はimage=[red_fox, bench]のように渡し、プロンプト内で渡した順に参照します。 - レイアウト制御では、キャプションの後に
id・bbox・descを持つJSONリストを追加します。bboxは[y_min, x_min, y_max, x_max]の順で0〜1000に正規化するため、画像サイズに依存しません。 - 参照画像内の領域移動では各領域に
from・src_bbox・tgt_bbox・descを指定し、両boxが同じ領域は動きません。 - ベース版では
pipe.guider = pipe.guider.new(guidance_scale=5.0)でCFGを設定できます。 - 単一ファイルのbf16・fp8r・nvfp4は
Flux3Transformer2DModel.from_single_fileにBFLQuantizationConfigを渡してロードし、pipe.update_components(transformer=transformer)で差し込みます。
LoRA学習
LoRA学習はベースチェックポイントを対象にします。Diffusersはテキストから画像用のtrain_dreambooth_lora_flux3_klein.pyと、(参照画像、目標画像、指示)の3つ組で学習する画像編集用のtrain_dreambooth_lora_flux3_klein_img2img.pyを提供します。原文の例はタロットカード風スタイルを--rank=16、--resolution=1024、--max_train_steps=1500で学習しており、省メモリ用に--gradient_checkpointing、--cache_latents、--use_8bit_adamを追加できます。Ostris' AI Toolkitでも学習できます。

まだコメントはありません。