AI Toolkit LoRAトレーニングガイド

Ostris AI ToolkitによるFLUX.2 [dev] LoRA学習ガイド

このガイドでは、Ostris AI ToolkitでFLUX.2 [dev]をLoRAで微調整する手順を紹介します。FLUX.2の特徴、デュアルトランスフォーマーとテキストエンコーダがrankやVRAMに与える影響、24GBクラスからH100/H200まで動くデータセット設計とトレーニング設定、量子化の選び方をまとめています。

Ostris AI Toolkitで拡散モデルをトレーニング

横にスクロールしてフォーム全体を表示

Ostris AI ToolkitOstrisAI-Toolkit

New Training Job

Job

Model

Quantization

Target

Save

Training

Datasets

Dataset 1

Sample

FLUX.2 [dev] LoRA学習は、従来のSDモデルのトレーニングとは大きく異なります。FLUX.2 [dev]は、32Bパラメータの巨大な整流フロートランスフォーマー、24BのMistralテキストエンコーダー、高品質なオートエンコーダーを組み合わせ、テキストから画像生成と画像編集を単一のチェックポイントで処理します。このガイドでは以下を解説します:

  • FLUX.2 [dev]の特徴
  • これらの設計がLoRAトレーニングにどう影響するか
  • 異なるハードウェア構成でのAI Toolkitの設定方法
  • 目的のスタイル/キャラクター/編集動作を得るためのデータセット、トリガー、パラメータの設定方法

この記事はAI Toolkit LoRAトレーニングシリーズの一部です。Ostris AI Toolkitが初めての方は、Flux2-dev LoRA学習に入る前にAI Toolkit LoRAトレーニング概要から始めてください。

目次


1. FLUX.2 [dev]のLoRA学習を理解する

スライダーを動かす前に、何をファインチューニングしているかを理解することが役立ちます。

1.1 ハイレベルアーキテクチャ

公式FLUX.2-devモデルカードBlack Forest Labsの発表より:

  • ベースモデル

    FLUX.2 [dev]32BパラメータのRectified Flowトランスフォーマー(DiTスタイルの潜在フローモデル)で、ゼロからトレーニングされました。テキストから画像生成と画像編集(単一画像とマルチリファレンス)を単一のチェックポイントで組み合わせています。

  • テキストエンコーダー

    FLUX.2 [dev]はMistral Small 3.1 / 3.2 – 24Bビジョン言語テキストエンコーダーとして使用。これは32B DiTに加えてさらに24Bパラメータです。

  • オートエンコーダー (VAE)

    32潜在チャンネルを持つ新しいAutoencoderKLFlux2を使用(FLUX.1は16)。高解像度編集と細かいテクスチャ保存用に設計されています。

  • 統合された生成 + 編集

    同じアーキテクチャが純粋なテキストから画像単一画像編集マルチリファレンス編集を処理します。

  • ガイダンス蒸留

    FLUX.2 [dev]はガイダンス蒸留モデルです:従来のCFG(条件付きと非条件付きの別々のパス)はありません。

LoRAへの影響:

  1. コアトランスフォーマーは巨大。 LoRAランクは慎重に選ぶ必要があります。
  2. テキストエンコーダーは重く、動作の中心。
  3. 同じ重みがT2Iと編集を処理。
  4. ガイダンスは特別。 通常guidance_scale = 1でトレーニングします。

2. どのタイプのFLUX.2 LoRAをトレーニングするか?

FLUX.2 [dev]では、まずアダプターに何をさせたいかを決めるべきです。ベースモデルはすでにマルチリファレンス編集複雑なプロンプト追従に強いです。

FLUX.2 dev LoRAトレーニングの一般的な目標:

  1. スタイルLoRA(T2I + 編集) – 特定の絵画スタイル、カラーグレード、レンダールックを教える。
  2. キャラクター/アイデンティティLoRA – 一貫した顔/特徴を持つ特定の人物、アバター、マスコットをモデル化。
  3. オブジェクト/プロップ/ブランドLoRA – 厳密なジオメトリやブランド制約を持つ特定の製品、ロゴ、形状を捕捉。
  4. インストラクション/編集LoRA – スタイルではなく動作を変更。

3. FLUX.2固有の詳細とLoRA設定への影響

3.1 融合トランスフォーマーでのLoRA(ランクスケーリング)

FLUX.2 [dev]はアテンションとMLP投影を非常に広い行列に融合します。これは:

  • 非常に低いランク(4–8)は弱すぎることが多い。
  • スタイルキャラクターLoRAにはランク32が良いデフォルト。
  • VRAMが厳しい場合はランク8–16を使用。
  • 複雑なブランドやアイデンティティにはランク32–64が役立つ。

FLUX.2 LoRA 学習 AI Toolkitでは、古いモデルより高めのランクが有効ですが、VRAMと過学習リスクのコストがかかります。


3.2 ガイダンス蒸留モデル:guidance_scale = 1でのトレーニング

FLUX.2 [dev]はガイダンス蒸留なので、通常のStable Diffusionの「CFG 7–8」は適用されません。

  • トレーニングguidance_scale = 1を設定。
  • 推論2–4の範囲のguidance_scaleが効果的。

3.3 テキストエンコーダーは巨大(エンベディングキャッシュが重要な理由)

FLUX.2のテキストエンコーダーとして使用されるMistral 24B VLMは約24GBのパラメータです。

AI Toolkitでの一般的なパターン:

  • 固定キャプションでDOPなし:Cache Text Embeddingsをオン。
  • Differential Output Preservation (DOP)使用時:エンベディングのキャッシュはできません

3.4 オートエンコーダーと解像度

FLUX.2は32潜在チャンネルAutoencoderKLFlux2を使用。実際には768–1024解像度でのFLUX.2 LoRA 微調整で大部分の利点を得られます。


4. FLUX.2 LoRAトレーニングのハードウェアとVRAM要件

4.1 VRAMティア別の推奨設定

ティアA — 16–24 GB GPU(例:4070 Ti、4080、4090)

  • 現実的な範囲:FLUX 2 dev LoRA 学習は可能だが厳しい。Batch Size = 1896–1024 px
  • 主要設定Low VRAM オンLayer Offloading オンTransformerText Encoderfloat8 (default)

ティアB — 32–48 GB GPU(例:RTX 6000 Ada、A6000)

  • 現実的な範囲:FLUX.2 LoRA 学習 AI Toolkitが快適1024×1024でスタイルとキャラクターLoRA、20–60+画像1000–3000ステップ
  • 主要設定Batch Size = 1–2Steps ≈ 1000–3000Learning Rate = 0.0001Linear Rank = 32

ティアC — 64–96+ GB GPU(例:RunComfyのH100、H200)

  • 現実的な範囲1024×1024Batch Size = 2–4、DOPデフォルトでオン
  • 主要設定Low VRAM オフLinear Rank = 32–64

4.2 ローカルAI Toolkit vs クラウドAI Toolkit(RunComfy)


5. FLUX.2 LoRA用データセットの設計

5.1 画像枚数

  • シンプルなスタイルLoRA:約15–30枚のキュレーションされた画像。
  • キャラクター/アイデンティティLoRA:約20–60枚。
  • 編集/インストラクションLoRA50–200のトリプル(ソース、ターゲット、インストラクション)。

5.2 キャプション戦略

キャプションで書かないことは、LoRAがトリガーに紐づけるために「フリー」です。

スタイルLoRA:画像の内容を説明し、筆遣いや色、メディウムを説明しない

キャラクターLoRA:短くユニークなトリガー(例:midnight_tarot)とクラスワードpersonwomanなど)を使用。

5.3 Differential Output Preservation (DOP)

トリガーがない時にLoRAが変更を加えることをペナルティする正則化戦略です。


6. ステップバイステップ:AI ToolkitでのFLUX.2 [dev] LoRAトレーニング設定

6.1 初期セットアップ

6.2 データセットの準備

  • 画像を収集し、/ai-toolkit/datasets/flux2_midnight_tarot/に配置。
  • .txtキャプションファイルを追加。キャプションで[trigger]を使用。

6.3 新しいトレーニングジョブの作成

6.3.1 JOBパネル

  • Training Name:例flux2_midnight_tarot_v1
  • Trigger Word:例midnight_tarot

6.3.2 MODEL & QUANTIZATIONパネル

  • Model ArchitectureFLUX.2
  • Name or Pathblack-forest-labs/FLUX.2-dev
  • Low VRAM:ティアA/Bでオン、ティアCでオフ
  • TransformerText Encoderfloat8 (default)

6.3.3 TARGETパネル

  • Target TypeLoRA
  • Linear Rank32が良いデフォルト。

6.3.4 TRAINING & SAVEパネル

  • Batch Size:24–48GBで1、64GB+で2
  • Steps:スタイル800–2000、キャラクター1000–2500、インストラクション1500–3000。
  • Learning Rate0.0001
  • OptimizerAdamW8Bit
  • Cache Text Embeddings:DOPなしでオン、DOPありでオフ
  • Data TypeBF16
  • Save Every250ステップ。

6.3.5 Regularization & Advanced

  • Differential Output Preservation:ベースモデル動作を保持したい場合オン
  • Do Differential GuidanceオンScale 3

6.3.6 DATASETSパネル

  • Cache Latentsオン
  • Resolutions:VRAMに応じて[768, 896, 1024]

6.4 プレビューサンプリング設定

  • Sample Every250ステップ。
  • Guidance Scale1
  • Prompts:代表的なプロンプトを2–4個。

7. FLUX.2 LoRA結果のデバッグと品質向上

7.1 「GatedRepoError / 401」エラー

Hugging Faceでライセンスに同意し、Readトークンを作成してトレーナー設定に追加。

7.2 「1000+ステップ後も変化なし」

  • LoRAがサンプリングに適用されているか確認。
  • Linear Rank = 16–32を試す。
  • Learning Rate = 0.0001
  • キャプションからスタイル記述子を削除。

7.3 「LoRAがベースモデルを上書きした」

  • Differential Output Preservationをオン。
  • 800–1500ステップに削減。
  • Linear Rank = 16Learning Rate = 0.000075

7.4 「CUDA out of memory」

  • 解像度を1024 → 896または768に下げる。
  • Gradient checkpointingとaccumulationを有効化。
  • FP8/4-bit量子化。
  • Cache Latentsをオン。
  • RunComfyのH100/H200に移行。

8. FLUX.2 LoRAの推論での使用


その他のAI Toolkit LoRAトレーニングガイド

トレーニングを開始する準備はできましたか?