🤖
AI・機械学習

2026年最新版!Stable Diffusion LoRAの作り方と手順を徹底解説【FLUX/SD3.5対応】

#Stable Diffusion LoRA #LoRA 作り方 #FLUX #Stable Diffusion 3.5 #kohya_ss

2026年6月現在、Stable DiffusionのLoRA作成は、次世代基盤モデルであるFLUXStable Diffusion 3.5への対応が中心となっています。これらの新しい基盤モデルは、従来のSD1.5やSDXLと比較して、より高度な概念理解と画像生成能力を持つため、LoRAのトレーニングにおいてもデータセットの質とトレーニング設定の最適化がこれまで以上に重要になります。本記事では、最新の環境に合わせたLoRA作成の具体的な手順を解説します。

1. LoRA作成環境の準備

まず、LoRAトレーニングを実行するための環境を整えます。特に、FLUXやStable Diffusion 3.5のような大規模モデルのトレーニングには、高性能なハードウェアが不可欠です。

ハードウェア要件

コンポーネント 推奨スペック (2026年6月現在) 備考
GPU (VRAM) NVIDIA RTX 4090 (24GB) 高速トレーニング、大バッチサイズ、FLUX/SD3.5対応
GPU (最低) NVIDIA RTX 3060 (12GB) トレーニング時間増加、バッチサイズ制約あり
CPU Intel Core i7 / AMD Ryzen 7以上 データ前処理、キャプション処理に影響
RAM 32GB以上 快適な動作、大規模データセット対応
ストレージ 500GB NVMe SSD以上 高速なデータ読み書き、モデルファイルやデータセットの保存

⚠️ 注意: VRAMが不足すると、トレーニングが実行できなかったり、バッチサイズを極端に小さくする必要があり、学習効率が著しく低下します。特にFLUXやSD3.5では、より多くのVRAMを消費する傾向があります。

ソフトウェア環境

LoRAトレーニングツールとしては、引き続きkohya_sssd-scriptsが主流です。FLUXやStable Diffusion 3.5への対応も積極的に進められています。

  1. Python環境の構築: Python 3.10.xまたは3.11.xの環境を推奨します。venv(仮想環境)での構築が望ましいです。

  2. sd-scriptsのインストール: 最新版をGitHubからクローンし、必要なライブラリをインストールします。

    git clone https://github.com/kohya-ss/sd-scripts.git
    cd sd-scripts
    pip install --upgrade pip
    pip install -r requirements.txt
    # FLUX/SD3.5対応の追加ライブラリが必要な場合は、公式ドキュメントを参照しインストール
    

2. データセットの準備とキャプション付け

高品質なLoRAを作成するためには、質の高いデータセットが最も重要です。

画像の収集と前処理

  1. 画像枚数: 対象とする概念によって異なりますが、一般的には50枚〜100枚の画像が推奨されます。少ない枚数でも可能ですが、多様性が損なわれる可能性があります。
  2. 画像品質:
    • 被写体がはっきりと写っている、高解像度(例: 768x768ピクセル以上)の画像を選びましょう。
    • 様々な角度、背景、照明条件の画像を含めることで、LoRAの汎用性が高まります。
    • 不要な要素が写り込んでいる画像や、低品質な画像は除外してください。
  3. アスペクト比の調整: トレーニングで使用するベースモデル(FLUX/SD3.5)のネイティブ解像度(例: 1024x10241280x768など)に近いアスペクト比に画像を調整します。トリミングではなく、余白を追加する(パディング)方法が、画像の情報を損なわずに済みます。

キャプション付け (Tagging)

キャプションは、画像の内容をテキストで表現するもので、LoRAが何を学習すべきかをAIに伝える重要な役割を果たします。

  1. 自動キャプションツール: BLIPLLaVAなどの画像認識AIを利用して初期のキャプションを生成できます。
  2. 手動での調整: 自動生成されたキャプションをベースに、以下の点に注意して手動で調整します。
    • 具体性: 「a girl」ではなく「a young woman with long brown hair wearing a blue dress」のように具体的に記述します。
    • キーワードの選定: LoRAで強調したい特徴(例: my-style, my-character)を前方に配置します。
    • 不要な情報の削除: 画像生成時に妨げとなる可能性のある、過剰な情報や誤った情報は削除します。
    • 繰り返しトークンの回避: 同じ意味の単語を繰り返さないようにします。

💡 ポイント: キャプションの質はLoRAの汎用性と表現力を大きく左右します。時間をかけて丁寧に行うことで、生成される画像の精度が格段に向上します。

3. トレーニング設定と実行

kohya_ssのGUIまたはCLIを使用して、トレーニングパラメータを設定します。

ベースモデルの選択

FLUXまたはStable Diffusion 3.5の対応モデル(例: sd3_medium.safetensorsなど、2026年6月時点での最新版)を選択します。これらのモデルはファイルサイズが大きいため、十分なストレージとVRAMが必要です。

主要なトレーニングパラメータ

パラメータ 推奨値 (FLUX/SD3.5向け) 備考
resolution 1024 または 1280x768 ベースモデルのネイティブ解像度に合わせる
train_batch_size 1〜4 VRAMに応じて調整。24GB VRAMで2〜4が目安
num_epochs 10〜20 画像枚数や内容により調整。過学習に注意
unet_lr (U-Net学習率) 1e-5 画像生成の中核を担う部分の学習率
text_encoder_lr (Text Encoder学習率) 5e-6 プロンプト解釈を担う部分の学習率。SD3.5で重要
optimizer AdamW8bit または Lion VRAM効率の良いオプティマイザを選択
mixed_precision fp16 または bf16 計算精度を下げてVRAM使用量を削減
gradient_checkpointing ✅ (有効) VRAM使用量を削減するが、トレーニング時間は増加

⚠️ 注意: 学習率が高すぎると過学習を招き、低すぎると学習が進みません。上記はあくまで一般的な推奨値であり、データセットや目的によって微調整が必要です。特にtext_encoder_lrはSD3.5でプロンプト理解の精度に大きく影響するため、適切な値を見つけることが重要です。

トレーニングの実行

設定が完了したら、train_lora.pyスクリプトを実行します。トレーニング中は、コンソールに表示されるloss値や生成されるプレビュー画像(設定した場合)を監視し、過学習や学習不足の兆候がないか確認しましょう。トレーニングはGPUの性能にもよりますが、1時間〜数時間かかることが一般的です。

4. LoRAの評価と調整

トレーニングが完了したら、作成したLoRAを実際に使用して評価し、必要に応じて調整を行います。

  1. テスト生成: トレーニング中に保存された各エポックのLoRA(例: my_lora_ep005.safetensors)を使って、複数のプロンプトで画像を生成します。
    • 目的のスタイルやキャラクターが再現されているか。
    • 過学習(特定のポーズや背景に固定される)が発生していないか。
    • 汎用性があるか(様々なプロンプトで破綻なく生成できるか)。 これらを確認し、最もバランスの取れたエポックのLoRAを選択します。
  2. マージと調整:
    • 複数のLoRAを組み合わせることで、さらに複雑な表現を試すことができます。supermergerなどのツールを利用して、LoRA同士をマージすることも可能です。
    • LoRAの適用強度(Weight)を調整することで、生成される画像への影響度を微調整できます。一般的に0.60.9程度の値がよく使用されます。

この手順を通じて、2026年6月現在の最新技術とベストプラクティスに基づいた、高品質なLoRAの作成を目指してください。

AI音声でナレーションを作ってみませんか?

ヨミアゲAIを試す(無料)