Diffusers FLUX.2 統合

Hugging Face は Diffusers ライブラリに FLUX.2 を統合し、Flux2Pipeline を使用して高品質なテキスト・トゥ・イメージ生成を実行できるようにしました。この統合は、4 ビット量子化バージョンを含む最適化されたモデル バリアントをサポートし、メモリ オーバーヘッドを削減します。

技術的実装とパイプライン

Diffusers における FLUX.2 の実装は、画像生成プロセスを処理するために専用のパイプラインとトランスフォーマー モデルを利用します。パイプラインの主要コンポーネントは次のとおりです:

  • Flux2Pipeline: テキスト・トゥ・イメージ プロセスを調整するために使用される主要なクラスです。
  • Flux2Transformer2DModel: 画像合成を担当するモデル アーキテクチャです。
  • Mistral3ForConditionalGeneration: プロンプトをトランスフォーマーが理解できる埋め込みに変換するテキスト エンコーダーとして使用されます。

リソース使用量を最適化するために、この統合は torch.bfloat16enable_model_cpu_offload() をサポートし、使用されていないときはモデル コンポーネントを CPU に移動して GPU VRAM を節約します。

モデルの設定と使用方法

diffusers/FLUX.2-dev-bnb-4bit リポジトリは、モデルの 4 ビット量子化バージョンを提供し、モデルの実行に必要なハードウェア要件を大幅に低減します。

推論パラメータの例

Diffusers での FLUX.2 の典型的な推論セットアップは、次のパラメータを使用します:

  • Inference Steps: 50 ステップ(ただし、速度と品質の良いトレードオフとして 28 ステップが挙げられています)。
  • Guidance Scale: 4。
  • Precision: torch.bfloat16

ライブラリの非推奨

Hugging Face は、Flax クラスが現在非推奨であり、Diffusers v1.0.0 で削除されることを発表しました。ユーザーには、PyTorch クラスに移行するか、現在の Diffusers バージョンを固定して互換性を維持することをお勧めします。

メモリに関する考慮事項

4 ビット量子化と CPU オフロードを使用しているにもかかわらず、モデルは依然としてリソースを多く消費します。技術ログによると、GPU の容量がテキスト エンコーダーとトランスフォーマーの結合負荷をフォワード パス中に処理するのに不十分な場合、CUDA OutOfMemory エラーが発生する可能性があります。

Sources