DCAI
Loading Light/Dark Toggl

【ComfyUI】高性能最新モデルFlux.1 [schell]の詳しい使い方

⏱️9min read
📅 2024年8月8日
🔄 2024年9月10日
カテゴリー:📂 生成AI中級
【ComfyUI】高性能最新モデルFlux.1 [schell]の詳しい使い方のメイン画像
Supported by

今回は「Flux.1」を紹介したいと思います。🔗Black Forlest Labsが開発したFlux.1は、Stability AIが発表した🔗Stabule Diffusion 3やFal AIの🔗Auraflowの対抗馬として発表されました。モデルはクローズドウェイトでAPIのみで使用できる[pro]バージョンとオープンウェイトで非商用利用が可能(Black Forlest Labsへの問い合わせで切り替え可能)な[dev]バージョン、そして今回紹介するオープンウェイトのApache2.0ライセンスで使用可能な高速版の[schnell]バージョンと3つのモデルがあります。SDXLモデルの約2倍の12Billionパラメータベースで開発されていて、現在開発されているローカル環境で使用できる画像生成AIモデルの中でも最高峰のモデルと言えるでしょう。

PR
mouse 【RTX 4090 搭載 / 3年保証】 ゲーミングPC デスクトップ G-Tune FZ (Core i9-14900KF RTX4090 128GBメモリ 2TB SSD Windows 11 ゲーム 動画編集) FZI9G90B12SKW1AZの商品画像
mouse 【RTX 4090 搭載 / 3年保証】 ゲーミングPC デスクトップ G-Tune FZ (Core i9-14900KF RTX4090 128GBメモリ 2TB SSD Windows 11 ゲーム 動画編集) FZI9G90B12SKW1AZ
🔗Amazonリンク
GALLERIA ガレリア ゲーミングPC ZA9C-R49 Core i9-14900KF/RTX4090/32GBメモリ/1TB SSD/Windows 11 Home デスクトップPC パソコン 13091-4341の商品画像
GALLERIA ガレリア ゲーミングPC ZA9C-R49 Core i9-14900KF/RTX4090/32GBメモリ/1TB SSD/Windows 11 Home デスクトップPC パソコン 13091-4341
🔗Amazonリンク

FLUX.1 [schnell]の特徴

FLUX.1 [schnell]は現在運用されているAI画像生成モデルのなかではMidjournery-V6.0に近い性能と言われています。下の表は🔗Artificial Analysisが公表している100,000人以上のユーザーより集めたスコアの品質を示す🔗ELOスコアを元に作られています。グラフを見るとBlack Forlest LabsのフラッグシップモデルのFlux.1 [pro]やFlux.1 [dev]はStability AIのフラッグシップモデルのStable Image Ultraを超えています。(表はSD3-Ultraと表示されているが、恐らくStable Image Ultraの事だと思います。)

ELO scoreのグラフ
Black Forlest Labsより画像引用
画像を開く

下記のスパイダーチャートは、プロンプトの再現性、サイズ/アスペクトの多様性、タイポグラフィ、アウトプットの多様性、そしてビジュアル・クオリティベンチマーク表です。今回紹介するFLUX.1 [schnell]のスコアもアウトプットの多様性が少し劣るが全体のスコアが高めなのが解ります。

ベンチマークのスパイダーチャート
Black Forlest Labsより画像引用
画像を開く
  • パラメーターベース:12 Billionのパラメータベース
  • テキストエンコーダー:Open AI CLIP ViT-L/14 & Google T5 XXL
  • 高速な1~4ステップで高品質ないAIイラストを生成(schnell版のみ)
  • SDXLと比べさらにプロンプトの理解力が向上

FLUX.1 [schnell]の推奨スペック

FLUX.1 [schnell]の推奨スペックはかなり高くモデルの容量が23.8GあるのですべてのデータをGPUメモリに読み込むには24GのGPUメモリが理想となってきます。(溢れた分は共有メモリも使うので全てが収まらなくても使えます。)しかし、🔗FP8モデル🔗プルーンドモデルを使用したり、メモリを解放しながら使えば16GのGPUメモリでも動作可能です。

FLUX.1 [schnell]のインストール方法

FLUX.1 [schnell]を使用する前にComfyUIが古いと使えない標準ノードがありますので最新版にアップデートしましょう。(v0.0.4以上推奨)

インストール方法は🔗ComfyUIの公式ドキュメントを参考に執筆しています。

モデルのダウンロード

FLUX.1 [schnell]をインストールするにはベースモデル、テキストエンコーダーなどをインストールする必要があります。順を追ってみていきましょう。

ベーシックワークフローのダウンロード

公式のワークフローもしくは少し手を入れたDCAIのワークフローをダウンロードして読み込みます。

公式版は🔗ComfyUIの公式ドキュメントのFlux Schnellにあるボトルの画像を読み込む事で見ることが出来ます。

DCAI版はPatreonで公開していますので参考にしてください。

FLUX.1 [schnell]のベーシックワークフローの解説

DCAIのベーシックワークフローを元に解説していきます。公式のワークフローに1点だけ新たにノードを追加しているだけなので、公式のワークフローにも対応しています。

Load Diffusion Model

モデルを読み込むノード。通常のLoadCheckpointModelでは読み込めないので注意しましょう。

  • unet_name:モデルを選択します。今回はflux-schelell.safetensorsを選択します。
  • weight_dtype:デフォルト(FP16)でも問題ありませんが、生成時間がかかるのでfp8_e4m3fn又はfp8_e5msを使用します。
ModelSamplingFlux

公式のワークフローには使われていないノードです。Stable Diffusion 3で使われているタイムステップスケジューリングシフトのFlux版になります。(ComfyUI v0.0.4よりさらに細かく設定出来る様になりました。)

FLUX.1 [schnell]で使う場合はmax_shiftは0.0~2.0辺りで設定しましょう。また、base_shiftは反映されないので0または、デフォルトの0.5で使いましょう。場合によってはこのノードをバイパスした方が良い結果が得られる場合も在ります。

width / heightはシフト範囲を設定します。

DualCLIPLoader

テキストエンコーダーモデルを読み込みます。clip_nameにt5xxl_fp16clip_lを選択しましょう。(PCメモリ不足の場合はfp16の代わりにt5xxl_fp8_e4m3fnを使います。)

BasicGuider

FluxはSD3と同様SamplerCustomAdvancedに対応する為にBasicGuiderを使います。

SamplerCustomAdvanced

次世代モデル向けサンプラーノード。パラメーターが外部化したことによりより細かな調整が可能となっています。

FLUX.1 [schnell]の設定について

ComfyUIでの使用時に注意していただきたいのがModelSamplingFluxのbase_shiftとFluxGuidanceのguidanceの値です。これらの値はFLUX.1 [dev]では反映しますが、FLUX.1 [schnell]では反映されません。

深堀はしていませんが、FLUX.1 [schnell]はTimestep-distilledで、FLUX.1 [dev]はGuidance-distilledなので、この違いの影響だと思われます。

サンプリングの設定

  • sampler:euler
  • scheduler:simple
  • steps:4

解像度の設定

解像度は0.1~2.0メガピクセルまで対応しています。今回は1メガピクセルで19: 13の1216 x 832で生成しています。

FLUX.1 [schnell]ベーシックワークフローをカスタムしてみる

ベーシックワークフローを使ってみると生成イラストの品質が十分ではないと感じませんでしたか?ココからは品質を向上させるためにアップスケールを導入、そしてLow-GPUの為にメモリ開放の導入方法を紹介します。ワークフローはPatreonで公開しています。

必須カスタムノード

Webで調べていくとワークフロー例が幾つか見つかりますが、DCAIでは難しくならない様に必要最低限のカスタムノードでサンプルを作っています。今回はGPUメモリを解放しながら生成していくプロセスにしたいので下記のカスタムノードを使います。

  • ComfyUI Layer Style:LayerUtility:Purge VRAMノードを使います。LayerColor: ColorAdapter:アップスケール後の色味の誤差を補正します。
  • ntdviet/comfyui-ext:LatentGarbageCollectorノードを使います。

ComfyUIのカスタムノードのインストール方法が分からない方は下記の記事を参考にしてください。

カスタム手順

  • VAE Decodeの変更:まずはベーシックワークフローのSamplerCustomAdvanced後のVAE Decodeを「VAE Decode (Tiled)」に変更してメモリ不足対策をします。tile_sizeは768に上げていますが、メモリが少ない場合はデフォルトの512でも問題ありません。
  • Upscale Image (using Model)で拡大:Upscale Image (using Model)で拡大します。モデルはLoad Upscale Modelから読み込みます。
  • 拡大した画像を希望のサイズに縮小:今回は4倍に拡大するモデルをつかったので「Upscale Image By」30%に縮小します。
  • サイズ調整した画像を元にi2iを使い再生成:SamplerCustomAdvanced(2回目)はnoiseとsamplerは1回目の値を共有します。拡大プロンプトを使いたいので「BasicGuider」に新たなプロンプト(CONDITIONING)を繋ぎます。チュートリアルとして「CLIPTextEncodeFlux」を使います。clip_lとt5xxlに同じプロンプトを入力したいのでConvert Widget to Inputで外部化し、Primitiveノードで入力しています。guidanceはFLUX.1 [schnell]では使えないのでデフォルトのままで問題ありません。「BasicScheduler」はschedulerをsgm_uniformを使ってstepsは1回目と同じ4でdenoizeは0.20に設定します。
  • 生成されたデータをメモリから解放:「LatentGarbageCollector」と「LayerUtility: Purge VRAM」でデータを解放します。
  • カラーコレクション:拡大後の画像が色あせていたので「LayerColor: ColorAdapter」を使って補正をします。

以上のプロセスでアップスケールで品質が良くなったと思われますが、いかがでしょうか?

ワークフローの最終結果
最終生成イラスト
プロンプト: A girl knight standing at hill side. Under the blue sky. horizonin view, 50mm lens shot.The big word statues of \"DCAI\" is behind girl.beautiful girl, cute face, looking at viewer, medival, (latest japanese comic style:1.1),ultra detailed
画像を開く

FLUX.1 [schnell] FP8チェックポイント版について

FP8チェックポイント版はチェックポイントモデルとして使えるのでミドルスペックのGPUでも問題なく使えるでしょう。

FLUX.1 [schnell] FP8チェックポイント版の使い方

下記のリンクよりモデルComfyUI/models/checkpoints/にダウンロードします。ComfyUIのデフォルトワークフローにチェックポイントモデルを読み込みKSamplerを推奨設定のstapsが1~4でCFGの値を1.0を入れれば使うことが出来ます。※エラーが出る場合はComfyUIを最新版にアップデートしましょう。

また、A1111 WebUI (v1.10.1)で試してみましたがエラーでて使えませんでした。また、試してはいませんが🔗StableSwarmUI🔗Forgeなら動作するみたいです。

まとめ

今回はFLUX.1 [schnell]の紹介記事でした。まだまだ登場して間もないのでこれからが楽しみなモデルだと思いました。また開発のBlack Forlest Labsも次はTEXT TO VIDEO関係のモデルを開発しているようなのでコチラも注目していきたいです。またFLUX.1 [schnell]関係が充実してきた時に関係記事を書きたいを思っています。

PR
GIGABYTE NVIDIA GeForce RTX4090搭載 グラフィックボード GDDR6X 24GB【国内正規代理店】 GV-N4090AORUSX W-24GDの商品画像
GIGABYTE NVIDIA GeForce RTX4090搭載 グラフィックボード GDDR6X 24GB【国内正規代理店】 GV-N4090AORUSX W-24GD
🔗Amazonリンク
CORSAIR RM1000x PC電源ユニット 1000W 80PLUS Gold認証 フルモジュラー RTX4080シリーズ推奨電源 ATX 2021モデル CP-9020201-JP PS1123の商品画像
CORSAIR RM1000x PC電源ユニット 1000W 80PLUS Gold認証 フルモジュラー RTX4080シリーズ推奨電源 ATX 2021モデル CP-9020201-JP PS1123
🔗Amazonリンク
Supported by