
- テキスト生成・複数参照の画像編集・矩形によるレイアウト指定を1モデルでカバー
- 蒸留版は1024×1024をH100で約2秒、16ステップ。fp8rとnvfp4の量子化重みも提供
- DreamBooth LoRAの学習スクリプトが両タスク向けに用意され、独自スタイルを追加学習できる
公開された内容
Black Forest Labsが公開した画像生成モデル「FLUX.3 Image Klein」が、Hugging FaceのDiffusersで扱えるようになりました。2つのオープンなチェックポイントが「FLUX.3 Image Klein」コレクションに含まれており、Hugging Face Spaceからすぐに画像生成を試せると案内されています。利用には最新のdiffusersとtransformersが必要で、これはQwen3-VLベースのテキストエンコーダを使うためです。
読み込みはModularPipeline.from_pretrainedで行い、load_componentsでdtypeを指定してからパイプラインをGPUに移します。Modular Diffusersのパイプラインとして提供されるため、ブロック単位で差し替えたり独自のブロックを追加したりできる点が特徴として挙げられています。
1モデルで3つの用途
FLUX.3は、テキストからの生成、複数の参照画像を使った画像編集、バウンディングボックス(矩形領域)によるレイアウト制御を1つのモデルでこなします。テキストからの生成では、被写体・状況・光・構図・スタイルを含むシーン全体の記述が効果的とされ、蒸留版はデフォルト16ステップで1024×1024の画像を生成します。ステップ数や縦横のサイズは引数で変更できます。
参照画像はimage引数で渡し、複数ある場合はプロンプト中で<ref_image_0>、<ref_image_1>のように、渡した順に参照します。レイアウト制御では、キャプションの後にid・bbox・descを持つJSONのリストを付けて領域を指定します。bboxは[y_min, x_min, y_max, x_max]の順で0〜1000に正規化されているため、同じ指定を画像サイズによらず使い回せます。
編集では、各領域が参照画像内のsrc_bboxと出力側のtgt_bboxを持ち、同じ矩形を指定すればその場にとどまります。原文では、編みぐるみの騎士を毛糸の崖に沿って左上に動かし、背景やドラゴン、炎など他の要素は変更しない例が示されています。
量子化・メモリ・速度
ベースチェックポイント(flux-3-image-klein-base)はclassifier-free guidanceを使って50ステップで動かし、ファインチューニングの土台に向くとされています。ガイダンススケールは5.0の例が示されています。transformerはbf16の単一ファイルに加え、行単位FP8の「fp8r」と「nvfp4」の量子化版も配布され、from_single_fileで読み込めます。その際は他のコンポーネントを名前指定で読み込み、bf16版のtransformerを重複してダウンロードしないようにします。
メモリが足りない場合の手段として、量子化transformerの利用、テキストエンコーダを分離して実行後に解放する方法、実行中だけ各コンポーネントをGPUに移す自動CPUオフロードの3つが案内されています。自動CPUオフロードについては、ベンチマークを取っていないと明記されています。
速度は、H100 80GB・オフロードなし・デフォルトのattentionバックエンドという条件で、蒸留版16ステップのエンドツーエンドの時間がウォームアップ後の3回平均として示されています。参照画像を1枚加えると時間はおよそ2倍になり、1024×1024の参照画像はtransformerの呼び出しごとに4,096トークンを追加すると説明されています。
LoRAで自社向けに調整
FLUX.3はテキストからの生成と画像編集の両方に使えるため、独自LoRAの土台になるとされています。diffusersにはDreamBooth LoRAの学習スクリプトが両タスク向けに用意され、OstrisのAI Toolkitでも学習できると案内されています。
原文の例では、tarotカードのスタイルを学ばせるために、multimodalart/1920-raider-waite-tarot-public-domainデータセットを使い、instance_promptに「trtcrd」、解像度1024、rank 16、lora_alpha 16、学習率1e-4、max_train_steps 1500、bf16といった設定が示されています。メモリを抑えるにはgradient_checkpointing、cache_latents、use_8bit_adamを追加します。それぞれ、逆伝播での活性の再計算、画像の事前エンコード、オプティマイザ状態の8bit保持という役割です。
rankやオプティマイザを変えて同じスタイルを学習した結果のアダプタは、Hub上のdiffusers-modular/flux3-tarot-loraで公開されています。指示ベースの編集用には、(参照画像, 目標画像, 指示)の3つ組で学習する画像編集スクリプトが用意されています。
現時点で不明な点
原文のアーキテクチャ解説は、FLUX.3がlatent spaceのフローモデルであり、VAEが画像を各方向に8分の1へ圧縮するという説明の途中で終わっています。入力トークンは生成中の画像と、任意の参照画像という構成だと説明されています。VAEのアーキテクチャはFlux.2と同じだとされています。
ライセンスや商用利用の条件、量子化形式ごとの画質差、必要なVRAMの実測値は原文に記載がありません。ベースチェックポイントの生成時間も示されていません。導入を検討する場合は、これらの情報が公開されるかを待つ必要があります。
| 項目 | 蒸留版 | ベース版 |
|---|---|---|
| チェックポイント | black-forest-labs/flux-3-image-klein | black-forest-labs/flux-3-image-klein-base |
| 推論ステップ数 | デフォルト16 | 50 |
| ガイダンス | 記載なし | classifier-free guidance(例: guidance_scale=5.0) |
| 主な用途 | そのままの生成 | ファインチューニングの土台 |
| H100での1024×1024生成時間 | 約2秒 | 記載なし |
The distilled checkpoint makes a 1024 × 1024 image in about 2 seconds on an H100.
蒸留チェックポイントは、H100上で1024×1024の画像を約2秒で生成します。
今後の見通し
FLUX.3 Image Kleinは、テキスト生成・参照画像編集・レイアウト指定を1つにまとめ、量子化重みとLoRA学習スクリプトまでそろえた形で公開されました。今後は、コミュニティによるLoRAやアダプタの蓄積が進むとみられます。国内で導入を判断するには、量子化形式ごとの画質の差、VRAM要件の実測値、ライセンスと商用利用の条件が明らかになるかを確認したいところです。特に自動CPUオフロードはベンチマークが未実施とされているため、実際の速度は自環境での検証が必要です。ベース版の生成時間や学習コストが示されれば、内製化の判断材料がそろうと考えられます。
日本の開発者・IT企業にとっての意味
日本のIT企業や開発者にとっては、画像生成の機能を1つのモデルでまとめてまかなえる点が実務上の意味を持ちます。テキスト生成・参照画像を使った編集・矩形指定によるレイアウト制御を別々のパイプラインで組む必要がなくなり、実装と保守の負担を減らせる可能性があります。特に0〜1000に正規化されたbbox指定は、バナーやECの商品画像など定型レイアウトの自動生成と相性が良いと考えられます。fp8rやnvfp4の量子化重み、自動CPUオフロードは、VRAMが限られたGPUしか用意できない環境でも検証しやすい選択肢です。公式のLoRA学習スクリプトがあるため、自社の画風を追加学習して内製する道も開けています。一方でライセンスや商用利用の条件は原文から判別できず、本番導入の判断は条件が確認できるまで慎重にすべきです。
気になる点
- GPUメモリが足りない環境でも動かせますか
- 原文は必要なVRAMの具体的な数値を示していませんが、対策として3つを挙げています。量子化transformerを使う、テキストエンコーダを分離して実行後に解放する、ComponentsManagerで自動CPUオフロードを有効にする、の3点です。自動CPUオフロードについてはベンチマークを取っていないと明記されているため、速度への影響は自環境で確認する必要があります。
- 既存のDiffusersのワークフローはそのまま使えますか
- 読み込みはModularPipeline.from_pretrained、量子化版はfrom_single_fileという既存の作法を踏襲しています。ただしQwen3-VLベースのテキストエンコーダを使うため、diffusersとtransformersを最新版に更新する必要があります。パイプラインはModular Diffusers形式なので、ブロック単位の差し替えや追加が可能だとされています。
- LoRAで自社のスタイルを学習させるには何が必要ですか
- 記事では、tarotデータセットを使った例として解像度1024、rank 16、lora_alpha 16、学習率1e-4、max_train_steps 1500、bf16という設定が示されています。学習にはDreamBooth LoRAスクリプトを使い、編集用は(参照画像, 目標画像, 指示)の3つ組で学習します。データセットの規模や学習にかかる時間は原文に記載がありません。
用語解説
- Diffusers
- Hugging Faceが開発する拡散モデル向けのライブラリ。モデルの読み込みや推論、学習のスクリプトを共通の作法で扱える。
- 蒸留チェックポイント
- 大きなモデルの振る舞いを短いステップ数で再現できるよう軽量化したモデル。ここでは16ステップで生成する版を指す。
- LoRA
- 元の重みを変えずに小さな追加パラメータだけを学習させるファインチューニング手法。スタイルや被写体の追加学習に使う。
- バウンディングボックス
- 画像内の矩形領域を座標で指定する方法。ここでは[y_min, x_min, y_max, x_max]の0〜1000正規化スケールで書く。
- 量子化
- 重みをより小さいビット幅で表現してメモリ使用量を減らす手法。記事では行単位FP8のfp8rとnvfp4が用意されている。
- VAE
- 画像を潜在表現に圧縮し、また画像に戻すためのエンコーダ・デコーダ。FLUX.3はFlux.2と同じVAE構成を使うとされる。
出典
Welcome FLUX.3 Image Klein in Diffusers
AI導入も顧問も、お任せください
何から手をつけるか、どこまでAIに任せるか。自社の業務に合わせて整理し、導入から運用まで伴走します。相談だけでも構いません。
AI導入について相談する