今回は画像生成AIの使い方に関する話題で
新手の画像生成AI「FLUX.1」のインストール方法と使い方
を丁寧にご紹介するという内容になっております。
2024年8月の話になりますが、Stable Diffusionの元開発者が設立したBlack Forest Labsという企業が「FLUX.1」という新手の画像生成AIを発表して話題になりました。このFLUX.1には
- パラメータ数が非常に多く従来の画像生成AI以上に高品質な画像を生成できる
- 一部のモデルが公開されており、ダウンロードしてローカル環境に導入することができる
といった特徴があることから「もしかしたら雲行きが怪しいStable Diffusionに取って代わるのでは?」とローカル画像生成愛好家の方たちから期待されているようです。
ここではそんなFLUX.1について概要から使い方まで一通りまとめて解説していきますね。
追記:
FLUX.1ベースのLoRAの作り方の記事を書きました。もしLoRA作成についてご興味がありましたらそちらも併せてご覧頂ければと思います。
はじめに:FLUX.1とは?
公式ページ
FLUX.1について
FLUX.1は、元Stable Diffusion開発者が設立した企業「Black Forest Labs」が開発した画像生成AIです。従来の画像生成AI以上に高品質な画像の生成が可能な点や、一部のモデルは無料でダウンロードできローカルで動かせる点が特徴でありローカル画像生成愛好家たちの間で注目されています。
FLUX.1の主な特徴
FLUX.1の主な特徴は次のとおりです。
- 用途に応じた3種類のモデルがある
- 3種類のうち2つのモデルは無料で公開されておりローカル環境に導入可能
- 膨大なパラメータによる高品質な画像生成
用途に応じた3種類のモデル(うち2つはローカルで使用可能)
FLUX.1には用途に応じた3種類のモデルがあります。
モデル名 | ローカルでの利用 | モデルの商用利用 | 生成した画像の商用利用 |
---|---|---|---|
FLUX.1 [pro] | × | × | ○ |
FLUX.1 [dev] | 〇 | 要問合せ | 〇 |
FLUX.1 [schnell] | 〇 | ○ | 〇 |
FLUX.1 [pro]
FLUX.1 [pro]はFLUX1の最上位モデルです。最高品質の画像を生成できるようですが、現状では提携WebサービスやAPIのみでの提供となっておりモデルが公開されていないためローカルで使うことはできません。
FLUX.1 [dev]
FLUX.1 [dev]は高品質な画像を生成できる非商用・研究向けのモデルです。こちらはモデルが公開されておりローカル環境で扱うことができます。
モデル自体は独自の非商用ライセンスの元で提供されていますが、そのライセンスによると生成した画像は商用利用できるとのこと(下記はライセンスの機械翻訳です)。
当社は出力に対する所有権を主張しません。お客様は、お客様が生成した出力と、本ライセンスに従ったその後の使用について単独で責任を負います。お客様は、本ライセンスで明示的に禁止されている場合を除き、出力をあらゆる目的(商業目的を含む)で使用できます。お客様は、FLUX.1 [dev] モデルと競合するモデルをトレーニング、微調整、または抽出するために出力を使用することはできません。
FLUX.1 [schnell]
FLUX.1 [schnell]は個人向けの軽量モデルです。上記2つのモデルと比べると生成される画像の品質はそこまで良くないようですがローカルでも扱いやすいのが特徴です。
また、このモデルは「Apache License 2.0」という比較的緩いライセンスのもとで提供されておりモデル自体も幅広く使えるのが大きなメリットとなっています。
膨大なパラメータによる高品質な画像生成を行える
FLUX.1は膨大なパラメータによる高品質な画像生成を行えるのが特徴です。実際にdevモデルを使っていくつか画像を生成してみたのでご覧ください。
非常にクオリティの高い画像やイラストが生成されました!リアルな人物画像は実写と見分けがつかないほどです。一方でアニメ風の美少女イラストはそれ専用でトレーニングされたモデルと比較すると少し見劣りするかもしれませんが、微調整なしでこれだけ高品質な画像が生成されたことを考えるととても有望だと思います。
FLUX.1とStable Diffusion XLとの比較
さてそんなFLUX.1ですが
- 現在主流のStable Diffusion XLと比較してそんなに高品質な画像を生成できるのかな
- もし導入方法が大変だったり生成速度が遅かったりしたら使いづらいよな
と思っている方もいらっしゃるでしょうからここで簡単な比較を行ってみようと思います。
生成される画像の比較
まずは生成される画像の比較です。FLUX.1のdevモデルとStable Diffusion XLにおいて、それぞれ同じプロンプト・なるべく同じ条件で画像を生成してみたのでその結果を見比べてみてください。
比較1:アニメ風の美少女イラスト
条件:
- サンプリング方法:Euler
- ステップ数:20
FLUX.1
SDXL base 1.0
個人的な評価
アニメ風の美少女イラストについては同一プロンプトだとFLUX.1のほうが明らかにクオリティが高いですし、「アニメ風のイラスト」という指示をきちんと理解しているようです。レベルとしては美少女専門にトレーニングされたSDXLの派生モデルと互角かやや劣るくらいでしょうか。でもベースモデルでこのクオリティなら大満足ですね。
また細部を見てみるとFLUX.1はかなりきれいに描写できており、SDXLやその派生モデルで目立っていた「細部の汚さ」があまり見られない点は大いに評価できるでしょう。
比較2:フォトリアルな人物画像
条件:
- サンプリング方法:Euler
- ステップ数:20
FLUX.1
SDXL base 1.0
個人的な評価
実写風の人物画像についてもFLUX.1のほうが優れているように思います。もちろんSDXLでも十分なクオリティが得られますが、FLUX.1の生成結果と比較するとなんとなく不自然な感じがしますね。その点FLUX.1のほうはかなり自然でリアルな画像を生成できているのがすごいところです。
生成速度や導入方法など利便性に関する比較
お次は画像の生成速度やローカル環境への導入方法など利便性に関する比較です。
生成速度
生成速度は私の環境(RTX3060 12GB)では、「1344*768px」の画像を先ほどのサンプルの条件で1枚生成するのにかかった時間はだいたい次のような感じでした。
- FLUX.1 [dev]:1分25秒くらい
- Stable Diffusion XL:20秒くらい
FLUX.1はSDXLと比較すると画像生成にかなり時間がかかることが分かりますね。この点はSDXLと比較すると明確なデメリットでしょう。
ローカル環境に導入する際の手軽さ
ローカル環境に導入する際の手軽さに関してはどちらもほぼ同じです。というのも、いずれのモデルも「Stable Diffusion WebUI Forge」等の人気ツールで動かすことができるからです。
ただFLUX.1はまだ出たばかりで情報が少ないのでやや導入が分かりづらいかなとは思います。あとはFLUX.1のほうはパラメータ数が多い分モデルのファイルサイズが巨大であり、その点はストレージの空き容量が少なくなっている方にとってはデメリットとなりうるでしょう。
FLUX.1の動作に必要な環境等について
次にFLUX.1の動作に必要な環境についてご説明しておきます。推奨されているハードウェア要件は次のとおりです。
VRAM12GB以上の、GeForce RTX30または40シリーズのグラフィックボードを積んだPCであること
やはり画像生成AIということでグラボの性能(特にVRAM容量)が最も重要です。一応VRAMが8GBでもギリギリ動くらしいですが12GB以上あるのが望ましいようです。
RTX40シリーズには「RTX4060Ti 16GB」という比較的安価でVRAM容量が大きいグラボがあるので、VRAM容量が足りなそうだなという方はこの機会に是非チェックしてみてください。
FLUX.1の導入・インストール方法
さて前置きがだいぶ長くなってしまいましたがここからが本題で、FLUX.1の導入方法や使い方について解説していきます。まずはFLUX.1をローカル環境にインストールする方法です。
やり方は何通りかありますが、ここでは既にStable Diffusionをお使いの方には馴染みのある「Stable Diffusion WebUI Forge」を使う方法をご紹介します。主な手順は次のとおり。
- 「Stable Diffusion WebUI Forge」をインストールする
- Hugging FaceからFLUX.1のモデルをダウンロードする
- モデルを所定のフォルダに入れる
手順1:Stable Diffusion WebUI Forgeをインストールする
まず、他の画像生成AIと同様にFLUX.1もモデル単体では動作しないので、ローカル環境で動作させるには画像生成を行うためのツールを導入する必要があります。この手のツールは何種類かありますがここでは「Stable Diffusion WebUI Forge」(※長いので以下Forgeと呼びます)を使うのでこれをインストールしましょう。
詳しいインストール方法は既に別の記事で丁寧に解説していますので、まだForgeをインストールしてないよという方はそちらも併せてご覧ください。
ちなみに執筆時点では本家WebUIはFLUX.1には対応していないようなので動作にはForgeのほうが必要です。「本家をインストールしてあるけどForgeは入ってないな」という方は改めてForgeをインストールするようにしてください。
手順2:Hugging FaceからFLUX.1のモデルをダウンロードする
次にHugging FaceというサイトからFLUX.1のモデルをダウンロードします。もちろん公式のモデルも使えますが、ここではForgeの開発者の方が作成した「軽量版devモデル」のほうをダウンロードして使うことにします(Forgeに導入する場合はこちらを使ったほうが簡単です)。
ファイルサイズは軽量版といえど12GBもあります。ダウンロード先のストレージの空き容量には十分注意してください。
手順3:モデルを所定のフォルダに入れる
モデルをダウンロードできたら、それをForgeの下記フォルダ内に移動します。
stable-diffusion-webui-forge\models\Stable-diffusion
お疲れさまでした。これでFLUX.1の導入は完了です。
FLUX.1の基本的な使い方
最後はFLUX.1の基本的な使い方についてです。基本的な使い方はSDXLとだいたい同じですが、ForgeでFLUX.1を使う場合には設定項目がSDXLとは少し違うのでここではその部分を詳しくご説明します。
Forge上部の設定項目について
まず、最新版のForgeの画面をご覧頂くと左上に下記のようなラジオボタンがあることが分かると思います。FLUX.1を使う場合はこのラジオボタンの「flux」を選択しましょう。
するとその右側のUIが少し変化します。それぞれどのように設定すればいいかを左から順番に解説しますね。
- Checkpoint:
画像生成に使用するモデルを選択します。ここでは先ほど導入したモデルを選択しましょう。 - VAE/Text Encoder:
使用するVAEを選択します。公式のFLUX.1モデルを使用する場合はVAEが別途必要ですが、先ほどご紹介した非公式モデルを使う場合は不要です。 - Diffusion in Low Bits:
モデルの精度を選択します。先ほどの非公式モデルの場合は「Automatic」または「bnb-nf4」を選択してください。
- Swap Method:
VRAM容量よりもモデルが大きい場合モデルをどのように分割するか。Asyncのほうが高速ですが不安定になる場合があるようです。 - Swap Location:
分割したモデルをどこに配置するか。Sharedのほうが高速ですが、環境によってはクラッシュする可能性もあるとのこと。 - GPU Weights:
VRAMをどのくらい活用するか。値が大きいとVRAMをフル活用するようになります。
その他、設定でSDXLと違う部分
上記の設定でとりあえずFLUX.1を使うことができるのですが、その他にもSDXLとは設定項目が異なる部分があります。
FLUX.1ではネガティブプロンプトの使用は非推奨
まず、FLUX.1ではネガティブプロンプトを使うのは非推奨なので通常のプロンプトをしっかりと練ることが重要です(※Forgeの画面を見てみると、後述するCFGスケールが1のときにネガティブプロンプト欄が入力不能になることが分かります)。この点はStable Diffusionに慣れていると面食らうかもしれませんがそういうものだと思ってください。
CFGスケールの代わりに「Distilled CFG Scale」を設定する
それからFLUX.1ではCFGスケールの代わりにDistilled CFG Scaleという項目を設定してください。CFGスケールは「1」のままにしてDistilled CFG Scaleを変更することが推奨されています。
おわりに
以上、最先端の画像生成AIであるFLUX.1の導入方法や使い方についてご説明しました。FLUX.1はまだ生成時間が長いなどの課題はありますが、生成される画像のクオリティには目を見張るものがあり今後の発展が楽しみです。既にStable Diffusionを使っている方であれば簡単に使い始めることができますのでぜひ皆さんも試してみてください。
この記事が画像生成のお役に立てば幸いです。