Fooocus: 超軽量でシンプルイズベスト、なSDXLクライアント
Fooocusとはなに?
2023年時点、画像生成はStable DiffusionとMidjourneyという2大勢力が主流となっている。が、利用にあたってはそれぞれに一長一短あり。
FooocusはStable Diffusionのデファクト環境とMidjourneyから良いところどりを狙っている新生Stable Diffusionクライアント。実績ある開発者の手によるものだったこともあり、公開直後からすぐに多数の利用者が飛びついた。
誰におすすめ?
SD1.5版などすでに画像生成環境を持っていて最新モデルのSDXLを試したいが、PCスペックが足りない、現環境を壊すのが怖い、新しい環境を学ぶのがめんどくさい、というひと
画像生成に興味があるが、PCスペックが足りない、やり方が難しくてわからない、といった理由で敬遠していたひと
MidjourneyやAI生成可能な各種ウェブサービスで画像生成には親しんでいたが、オフライン環境で利用したいと思っていたひと
など!
余談(読み飛ばし推奨)
Stable Diffusion
オープンソース。広大なエコシステムとコミュニティの貢献による爆速な進化、なにより無料。一方で、利用には通常パワフルなGPU性能を持つPCと高度なITスキルが必要。事実上の標準となっているアプリケーション(Automatic1111版WebUI)は高性能なものの直感による利用が困難で習熟を要するUI。
Midjourney
クローズドソース。利用にはDiscordを経由するというやや特殊なインターフェスだが相対的には使いやすく、シンプルな使い方で高品質な出力が得られる。一方で、Stable Diffusion系のツールで実現できる各種の高度な操作や最新の技術は活用できない。何より有料。
Fooocus
陣営としてはStable Diffusionに属する新たなフロントエンドクライアント。Stable Diffusionの最新版、SDXLと呼ばれる最新のモデルを扱う。SDXLは世界的に大流行し1年の実績があるSD 1.5バージョンに比べできないことや十分な品質に至っていない表現などあるものの、基礎能力が高くコミュニティの支持もついてきていることから、今後数か月から半年程度で同等以上の出力が可能になると見込まれている。
半面、要求されるVRAMなどのスペックが高いことから、SD 1.5を愛用していた層でも移行には一定以上のハードルがあるのも事実。
そんな折にあらわれたFooocusは、SDXLを扱う新たな選択肢として定着する?かもしれない。
Fooocusの特長
軽量!: 起動も画像生成も爆速。低スペックPCでも利用が可能とされている
最小要件: 4GB Nvidia GPU memory (4GB VRAM) および 8GB system memory (8GB RAM)
わかりやすい!: 手動での微調整や複雑な設定が不要。直感的に理解しやすい見た目をしている
オフライン対応!: 一度環境を整えてしまえば、インターネット接続不要。完全オフラインでも利用が可能
オープンソース!: Fooocusはオープンソースプロジェクトとして提供され、コミュニティに開かれている。ソースコードはGitHubに公開されている
わりと高品質!: SDXLネイティブ。複雑な設定やパラメーターの調整不要で比較的高品質な画像の生成が可能
拡張性には乏しい: シンプルさ、利用のしやすさを優先しているため、先行するAutomatic1111版WebUIやSD.NEXT、ComfyUIといったクライアントに比較してできることは限られている(設計思想の違い)
インストールと初回起動
Fooocusのインストールは非常にシンプル。run.batファイルの実行を含め3クリック以内に画像生成を開始できることを保証しているそう。
ダウンロード: 公式のGitHubリンクから直接ダウンロード
解凍: 7-Zipなどのソフトウェアを使用してダウンロードしたファイルを解凍する
初回起動: 解凍したフォルダ内のrun.batを実行すると、必要な環境をすべて自動で準備したうえで起動する。初回起動時には以下の2つのモデルデータが自動でダウンロードされる。けっこう時間がかかるはずなので気楽に待とう
sd_xl_base_1.0_0.9vae.safetensors: 画像生成の基本モデル。6.8GB程度
sd_xl_refiner_1.0_0.9vae.safetensors: 基本モデルにより生成された画像の品質を向上させるモデル。6GB程度
注記
ローカル環境の画像生成が完全に初めて、の場合はおそらくPythonのインストールが先に必要になるぞ。2023年8月時点ではとりあえず3.10.6を入れておけば安全だ
(インストーラーのWindows 10/11 用直リンク Windows installer (64-bit))
つまづきやすいポイントなので、解説を読みながら進めることを推奨。PATHを通すことを忘れちゃだめ絶対
Googleで "python 3.10.6 path stable diffusion" を検索
使い方
入力場所にプロンプトを入力すると即座に生成される
run.bat を実行すると自動的にウェブブラウザが開いて表示された画面の入力フォームに(英語で)命令文を打ち込むだけ
Adbancedから少し高度な設定をあやつることもできる
詳細の紹介は割愛。雰囲気的にはアプデされまくってさらに充実していきそう
速度優先 / 品質優先切り替え
生成画像サイズの変更
一度に生成する画像枚数の変更
シード値の変更
ネガティブプロンプトの指定
プリセットスタイルの指定
ベースモデル・リファイナーモデルの変更
LoRAの利用
スマホからもいい感じにアクセスでできる
起動オプションとして以下のコマンドが対応しているので
--listen --share --port
`Fooocus\run.bat` の内容を例えば以下のように書き換えると
..\python_embeded\python.exe -s Fooocus\entry_with_update.py --listen --share --port 7850
pause
--listen
同一Lan内の別デバイスからアクセスできるようになる
--share
グローバルなURLが付与されてインターネット越しにアクセスできるようになる
URLは起動後にコンソール画面に表示される(https://xxxxxxxxxxxxxxxxxx.gradio.live みたいな感じ)
インターネット越しにアクセスする必要がない場合は、使わないようにしよう
--port xxxx
標準のポート番号7860から別の番号に変更できる
7860はAutomatic1111 WebUIやkohya_ssなどと競合するので、自分の場合は7850にして他のローカルサーバーと重ならないようにしている
以下、スマホ画面のスクショ
生成した画像一覧
今回の紹介記事で生成した画像をまとめて添付しておくぞ
シンプルすぎてできることが限られている反面、挙動が安定していて不具合に悩まされることはほとんどなさそう。SDXLを扱う新しい選択肢として有望だね!
おまけ
SDXLは楽しいぞの記事を以前書きました。もしよかったらのぞいてみてください。