AI Toolkit LoRA Training Guides

使用Ostris AI Toolkit進行FLUX.2 [dev] LoRA訓練指南

本文分步說明如何用Ostris AI Toolkit對FLUX.2 [dev]進行LoRA微調:FLUX.2的關鍵特點、雙Transformer與文字編碼器對LoRA rank與顯存占用的影響、從24GB到H100/H200可用的訓練設定與量化方案,以及如何設計資料集以獲得穩定可控的訓練效果。

Train Diffusion Models with Ostris AI Toolkit

水平滾動查看完整表單

Ostris AI ToolkitOstrisAI-Toolkit

New Training Job

Job

Model

Use a Hugging Face repo ID (e.g. owner/model-name).
⚠️ full URLs, .safetensors files, and local files are not supported.

Quantization

Target

Save

Training

Datasets

Dataset 1

Sample

FLUX.2 dev LoRA 訓練與訓練舊版SD模型有很大不同。FLUX.2 [dev]結合了一個320億參數的巨型整流流Transformer、240億參數的Mistral文字編碼器和高品質自動編碼器,在單一checkpoint中處理文字轉圖片和圖片編輯。本指南涵蓋:

  • FLUX.2 [dev]的特別之處
  • 這些設計如何影響LoRA訓練
  • 如何為不同硬體配置AI Toolkit
  • 如何配置資料集、觸發詞和參數以獲得所需的風格/角色/編輯效果

本文是AI Toolkit LoRA訓練系列的一部分。如果您是Ostris AI Toolkit新手,請在深入FLUX.2 [dev] LoRA 訓練之前先閱讀AI Toolkit LoRA訓練概述

目錄


1. 理解FLUX.2 [dev]的LoRA訓練

在調整參數之前,了解您正在微調的內容會很有幫助。

1.1 高層架構

來自官方FLUX.2-dev模型卡Black Forest Labs公告

  • 基礎模型

    FLUX.2 [dev]是一個320億參數的整流流Transformer(DiT風格的潛在流模型),從頭訓練而成,不是FLUX.1的延續。它在單一checkpoint中結合了文字轉圖片圖片編輯(單圖和多參考)。

  • 文字編碼器

    FLUX.2 [dev]使用Mistral Small 3.1 / 3.2 – 24B作為視覺語言文字編碼器。這是在32B DiT之上額外的24B參數。

  • 自動編碼器(VAE)

    模型使用新的AutoencoderKLFlux2,具有32個潛在通道(FLUX.1使用16個)。它專為高解析度編輯和精細紋理保留而設計。

  • 統一生成+編輯

    同一架構處理純文字轉圖片單圖編輯多參考編輯

  • Guidance蒸餾

    FLUX.2 [dev]是guidance蒸餾模型:沒有經典的帶有單獨「條件」和「無條件」通道的CFG。

這對LoRA意味著:

  1. 核心Transformer巨大。 LoRA秩需要謹慎選擇。
  2. 文字編碼器很重,對行為至關重要。
  3. 相同的權重處理T2I和編輯。
  4. Guidance很特殊。 通常使用guidance_scale = 1訓練。

2. 您要訓練哪種類型的FLUX.2 LoRA?

使用FLUX.2 [dev]時,您應該首先決定適配器要做什麼。基礎模型在多參考編輯複雜提示詞跟隨方面已經很強。

Flux 2 dev LoRA 訓練的常見目標:

  1. 風格LoRA(T2I + 編輯) – 教FLUX.2使用特定的繪畫風格、色彩分級或渲染外觀。
  2. 角色/身份LoRA – 建模具有一致面部/特徵的特定人物、頭像、吉祥物。
  3. 物件/道具/品牌LoRA – 捕獲具有嚴格幾何或品牌約束的特定產品、標誌、形狀。
  4. 指令/編輯LoRA – 改變行為而不是風格。

3. 影響LoRA設定的FLUX.2特定細節

3.1 融合Transformer上的LoRA(秩縮放)

FLUX.2 [dev]將注意力和MLP投影融合到非常寬的矩陣中。這意味著:

  • 非常低的秩(4–8)通常感覺太弱。
  • 對於FLUX.2 [dev]上的風格角色LoRA,秩32是VRAM允許時的良好預設值。
  • 如果VRAM緊張,可以使用秩8–16
  • 對於複雜的品牌或身份,秩32–64可能有幫助。

在FLUX.2 dev LoRA 微調中,模型通常受益於比舊模型稍高的秩,但您需要付出VRAM和過擬合風險的代價。


3.2 Guidance蒸餾模型:在guidance_scale = 1下訓練

由於FLUX.2 [dev]是guidance蒸餾的,通常的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解析度下進行AI Toolkit FLUX.2 dev LoRA 訓練可以獲得大部分優勢。


4. FLUX.2 LoRA訓練的硬體和顯存要求

4.1 按顯存級別的建議設定

級別A — 16–24 GB GPU(如4070 Ti、4080、4090)

  • 現實範圍:FLUX.2 dev LoRA訓練可行但緊張。Batch Size = 1896–1024 px
  • 關鍵設定Low VRAM 開啟Layer Offloading 開啟TransformerText Encoder設為float8 (default)

級別B — 32–48 GB GPU(如RTX 6000 Ada、A6000)

  • 現實範圍:訓練變得舒適。在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 RunComfy雲端AI Toolkit


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:根據顯存選擇[768, 896, 1024]

6.4 預覽取樣配置

  • Sample Every250步。
  • Guidance Scale1
  • Prompts:2–4個代表性提示詞。

7. 除錯FLUX.2 LoRA結果並提高品質

7.1 「GatedRepoError / 401」下載FLUX.2-dev時出錯

在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顯存不足」

  • 解析度從1024降到896或768。
  • 開啟Gradient checkpointing和accumulation。
  • FP8/4-bit量化。
  • Cache Latents開啟。
  • 遷移到RunComfy的H100/H200。

8. 在推論中使用您的FLUX.2 LoRA

  • Run LoRA – 開啟 FLUX.2 Run LoRA 頁面。在這個基礎模型的推論頁面裡,你可以直接選擇你在 RunComfy 上訓練出來的 LoRA 資產,也可以 import 你用 AI Toolkit 訓練好的 LoRA 檔案,接著透過 playground 或 API 進行推論。RunComfy 會使用與你訓練設定一致的 base model,並復用訓練設定裡完整的 AI Toolkit pipeline 定義,所以訓練時看到什麼,推論就得到什麼;這種 training/inference 的強對齊能特別保證推論效果與訓練採樣的一致。
  • ComfyUI工作流 – 載入如Flux 2 Dev的工作流。

更多AI Toolkit LoRA訓練指南

Ready to start training?