Windowsのローカル上にStable Diffusionの環境を構築する方法について紹介します。
なお、Stable Diffusionをローカル環境に構築するにはGPU(しかも結構性能が良いやつ)必須となります。
GPUの種類はNVIDIA製/AMD製問わないようです。
参考までに、私が環境構築したPCのGPUは「AMD Ryzen 5 5600H」になります。
Stable Diffusion とは
画像生成AIです。
ChatGPTさんの回答はコチラ。
Stable Diffusion は、人工知能を活用した画像生成モデルの一つで、テキストで指示を入力するだけで高品質な画像を生成することができる技術です。
例えば「青空の下で本を読む女性」や「未来的な都市の風景」といったテキストを入力すると、それに基づいた画像を作り出します。このモデルは「拡散モデル(Diffusion Model)」と呼ばれる技術を応用しており、ランダムなノイズから徐々に画像を生成する仕組みを採用しています。
特に、オープンソースとして公開されており、開発者や研究者が自由に利用・カスタマイズできる点が特徴です。Stable Diffusionはアート、デザイン、広告など多様な分野で活用されており、画像生成AIの中でも特に人気があります。
環境構築
Python(3.10.6)のインストール
バージョン指定がありますので、ご注意ください。
インストールは下記サイトから可能です。
また、インストール中に「PythonをPATHに追加」するようにしてください。
PATHに追加しないとどうなるかというと、Stable Diffusionが動かなくなります。
Git for Windowsのインストール
インストールは下記サイトから。
コンテキストメニューに項目を追加しておくと、コマンド実行時に楽な気がします。
Stable Diffusion Web UIのリポジトリクローン
Gitのインストール時にコンテキストメニューを追加した方は、Stable Diffusionのソースコードを配置したいフォルダをエクスプローラーで開き、右クリックのメニューから「Open Git bash here」を選択し、以下のコマンドを実行してください。
※Windows11の場合は、右クリックのメニューから「その他のオプションを確認」を選択したのち、出てくる旧メニューから「Open Git bash here」を選択してください。
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
バッチ起動
先ほどクローンしたリポジトリのフォルダに移動します。
「webui-user.bat」というファイルがあるのでそれを右クリックします。
コマンドプロンプトが開き、自動で環境構築が始まります。(結構かかります)
無事に構築が完了すると、標準ブラウザでStable Diffusion Web UIが開きます。
終了方法
Stable Diffusion Web UIを終了するには、バッチ起動時に開いたコマンドプロンプト(Stable Diffusion Web UIでの操作ログが流れている窓)でCtrl+C⇒Yを入力⇒Enterを押します。
公式チュートリアル
上記手順は公式サイトの以下の部分に記載されています。
余談
Stream Deckの「開く」に「webui-user.bat」を割り当てると、コマンドプロンプトが開かずに起動しました。
使い方
画像生成については割愛します。
Stable Diffusion用のプロンプトを紹介しているサイトもいくつかありますが、ファーストステップとしてはChatGPTなどにプロンプトを作成してもらうと、とっつきやすいかと思います。
モデルとVAE
構築したばかりのStable Diffusion Web UIだけでも画像生成は可能ですが、モデルやVAEといったモノを使うことで、より幅広い画像生成が可能になります。
モデルの種類や適用方法などについては以下のサイトをご参考ください。
便利ツール紹介
私が使ってみて便利だと思ったツールを軽く紹介しておきます。
CloneCleaner
Stable Diffusionを使って人物の画像を複数枚・一括生成しようとすると、同じ顔ばかりが出てきてしまいます。
かといって1枚を複数回に分けて出力するというのは現実的ではありませんよね。
そんな時に役立つのが「CloneCleaner」です。
ツール導入後はチェックボックスにチェックを入れるだけで、一括生成の際に異なる顔の画像を生成することができるようになります。
Config Presets
Stable Diffusion Web UIは、生成パラメータの一部が起動のたびに初期化されてしまいます。
起動するたび手動でパラメータを修正して…、なんてやってられません。
「Config Presets」を使うと、起動時には簡単な操作で設定を復元することができます。
Easy Negative
Stable Diffusionで画像を生成すると、意図しないモノが映り込んでしまう場合があります。
そこで使われるのが「ネガティブプロンプト」です。
これを指定してあげることで、不要なものを生成しないようにしたり、成形がうまくいくようになったりします。
このネガティブプロンプト、指定は色々できるのですが、最終的にはある程度収束します。
なのでテキストファイルなどに退避しておいて、Stable Diffusion Web UIを起動するたびにそこからコピーしてきてツールに張り付けて…、みたいな感じになるのですが、正直めんどうですよね。
そこで活躍するのが「Easy Negative」というツール。
ネガティブプロンプト欄には「Easy Negative」と入力するだけで、一般的な(?)ネガティブプロンプトを網羅すすことができます。