「直観的に使えるStable Diffusionのツールはないの?」
「初心者向けのStable Diffusionアプリを探している」
このような場合には、ENFUGUEがオススメです。
この記事では、初心者でも直観的に使えるENFUGUEについて解説しています。
本記事の内容
- ENFUGUEとは?
- ENFUGUEのインストール
- ENFUGUEの動作確認
それでは、上記に沿って解説していきます。
ENFUGUEとは?
ENFUGUEとは、Stable Diffusionウェブアプリです。
どういうモノであるかは、次の動画をご覧ください。
簡単に言うと、AUTOMATIC1111版web UIみたいなモノです。
ただ、web UIはUI的にユーザーフレンドリーとは決して言えません。
Dall-EやMidjourneyなどと比較すると、初心者お断りの雰囲気があります。
その雰囲気を打破するために、ENFUGUEが開発されたということです。
ENFUGUEは、直観的に使えることを目的に開発されています。
開発者の想いは、以下のスレッドに記載されています。
https://www.reddit.com/r/StableDiffusion/comments/14kx6zu/im_thrilled_to_release_enfugue_a_new_kind_of/
もちろん、ENFUGUEはweb UI同様オープンソースで無料です。
機能としては、以下に標準で対応していると説明されています。
- LoRA
- Textual Inversions
- Region Prompt
- ControlNet
これらが利用できれば、とりあえずは使えそうですね。
ただ、まだドキュメントは整備中とのこと。
また、動画を見る限りでは自動Outpaintingにも対応しているように見えます。
自動Outpaintingとは、Adobe FireflyのGenerative Fillのような機能を意味しています。
上記記事の自動Outpaintingよりも、ENFUGUEの自動Outpaintingの方が便利そうです。
自動Outpainting一つの操作を見ても、直観的なUIがENFUGUEの特徴と言えるのでしょう。
あと、TensorRTにもENFUGUEは対応しているということです。
ただし、TensorRTはまだまだ実用的とは思えません。
そのため、この記事では対象外としています。
以上、ENFUGUEについて説明しました。
次は、ENFUGUEのインストールを説明します。
ENFUGUEのインストール
ENFUGUEは、現状ではWindowsとLinuxに対応しています。
そして、ENFUGUEのインストール方法は次の2種類が用意されています。
- 実行可能ファイルの設置(易しい)
- 独自の環境構築(難しい)
それぞれを以下で説明します。
実行可能ファイルの設置(易しい)
OS毎に必要なファイルをダウンロードします。
ダウンロードして、一つの実行可能ファイルとして保存することを目指します。
詳細は、上記のページをご覧ください。
Windowsの場合は、7Zipが必要になりますね。
複数のzipを結合して、それを解凍します。
とりあえず、OS毎に以下のように実行ファイルが作成できればOK。
OS | 実行ファイル |
Windows | enfugue-server.exe |
Linux | enfugue.sh |
独自の環境構築(難しい)
公式ページでは、次のように説明されています。
1. Download a copy of environment.yaml somewhere to your computer. 2. Run the command conda env create -f environment.yaml 3. Run the command conda activate enfugue 4. Run the comand pip install enfugue. If you are on Linux and want to install TensorRT support as well, use pip install enfugue[tensorrt]. If you are on Windows, this will not work, you will need to install the python packages from source as detailed below. 5. Run the command enfugue run to run the server. Issue a keyboard interrupt (Ctrl+C) to stop it.
Condaを利用する方は、上記の方法で試してください。
個人的には、Condaは利用していません。
condaとpipの併用は、トラブルの元です。
そのため、私はpipで統一しています。
ここでは、その方法を説明しましょう。
インストールは、Pythonの仮想環境を利用します。
最初に、PyTorch 1.13.1をインストールします。
environment.yamlで指定されています。
PyTorch 2系では、インストール途中にエラーが出ます。
PyTorchのインストールについては、次の記事を参考にしてください。
PyTorch 1.13.1だと、次のインストールコマンドが用意されています。
# ROCM 5.2 (Linux only) pip install torch==1.13.1+rocm5.2 torchvision==0.14.1+rocm5.2 torchaudio==0.13.1 --extra-index-url https://download.pytorch.org/whl/rocm5.2 # CUDA 11.6 pip install torch==1.13.1+cu116 torchvision==0.14.1+cu116 torchaudio==0.13.1 --extra-index-url https://download.pytorch.org/whl/cu116 # CUDA 11.7 pip install torch==1.13.1+cu117 torchvision==0.14.1+cu117 torchaudio==0.13.1 --extra-index-url https://download.pytorch.org/whl/cu117 # CPU only pip install torch==1.13.1+cpu torchvision==0.14.1+cpu torchaudio==0.13.1 --extra-index-url https://download.pytorch.org/whl/cpu
各自のCUDAバージョンに適したコマンドを選びましょう。
PyTorchのインストールが完了したら、必要なライブラリのインストールです。
今回は、environment.yamlからrequirements.txtを作成しています。
その方法は、以下の記事で説明しています。
上記記事の方法より、次のrequirements.txtが作成できます。
(※無駄なモノは除外済み)
requirements.txt
numpy nvidia-pyindex pibble[cherrypy] numpy colored diffusers albumentations opencv-python pudb invisible-watermark imageio imageio-ffmpeg pytorch-lightning omegaconf test-tube streamlit einops torch-fidelity transformers torchmetrics kornia polygraphy accelerate gputil safetensors git+https://github.com/CompVis/taming-transformers.git@master#egg=taming-transformers git+https://github.com/openai/CLIP.git@main#egg=clip git+https://github.com/CompVis/stable-diffusion.git@main#egg=latent-diffusion
このrequirements.txtをもとに、次のコマンドを実行します。
pip install -r requirements.txt
そこそこ長い時間を待たされます。
処理が終わったら、下準備は完了です。
次のコマンドでENFUGUE自体をインストールします。
pip install enfugue
このインストールは、先ほどよりは時間がかかりません。
以上、ENFUGUEのインストールを説明しました。
次は、ENFUGUEの動作確認を説明します。
ENFUGUEの動作確認
ENFUGUEの動作確認を行います。
まず、ENFUGUEのサーバーを起動しましょう。
「サーバー?」となるかもしれません。
要するに、処理を実行しましょうということです。
インストール方法により、起動方法は異なります。
- 実行可能ファイルの設置(易しい)
- 独自の環境構築(難しい)
実行可能ファイルの場合は、各OSの流儀で起動します。
独自の環境構築の場合は、次のコマンドを実行します。
enfugue run
起動すると、何も起こりません。
あくまで、サーバーが起動しただけです。
GUI画面を開くには、ブラウザで次のURLにアクセスする必要があります。
Chromeが推奨ブラウザとなっています。
my.enfugue.ai
上記URLにアクセスすると、次のURLに転送されます。
https://app.enfugue.ai:45554/
初回時には、次のような画面を確認できます。
利用規約への同意画面ですね。
「Welcome to Enfugue」を下にスクロールしていくと、次のような表示が現れます。
ちょっと大きいサイズですが、素直にダウンロードしましょう。
ダウンロードのアイコンを2つともクリックします。
そして、そのまま「I ACKNOWLEDGE」ボタンをクリック。
そうすると、利用規約のポップアップは閉じられます。
そして、画面のヘッダ部分で次のような表示を確認できます。
先ほどのダウンロードが継続中ということですね。
アイコンをクリックしたら、ダウンロード状況を確認できます。
Windowsの場合、モデルは次の場所に保存されます。
モデルのダウンロードが確認できたら、プロンプトを入力します。
「ENFUGE」ボタンをクリック。
処理が完了すると、画像が表示されます。
画像生成の設定は、以下で変更できます。
とりあえず、動作確認としてはここまでとします。
あとはいろいろと触ってみましょう。
サーバーを停止する場合は、Windowsなら「Ctrl + C」を押します。
なお、モデルはいつもで追加可能です。
ツールは、習うより慣れろです。
以上、ENFUGUEの動作確認を説明しました。