こんにちは、しおだです。今日も推しが尊いです。
「Stable Diffusion」が公開されてから(まだ)2ヶ月弱です。その間にもStable Diffusionのモデルを利用した様々なサービスが開発、公開されていますね。正直さっぱり追えていません。
初心者は何からやればええんや〜と順番に試していく中で、まずマストで利用すべき!と感じた「Stable Diffusion web UI(AUTOMATIC1111版)」をご紹介します。
これを使うと一度の実行で複数画像を生成できたり、細かいパラメータ調整の結果を1枚の画像内で並べて確認できたりします。
生成した画像はプロンプト付きで自動保存されるので、とりあえず一気にまとめて作ってからじっくり厳選、調整が可能。しかもGoogle Colab上に環境が作れて、Webブラウザから直感的に利用可!といたれりつくせりです。
このような方におすすめ!
- Stable Diffusion関連ありすぎて何から使えばいい?
- Stable Diffusionで一度にまとめて画像生成する方法は?
- Stable Diffusionをオンライン上で簡単に使う方法は?
Stable Diffusionとは
「Stable Diffusion」とは、オープンソースで無料・商用利用可能な画像生成AIです。 当ブログ内の画像も一部Stable Diffusionで試行錯誤して作っています。
詳細は前回の記事にまとめていますのでご参照ください。
Stable Diffusion web UI(AUTOMATIC1111版)とは
今回は「Stable Diffusion web UI(AUTOMATIC1111版)」という実行環境を、Google Colab(以下、Colab)上に構築していきます。
「Stable Diffusion web UI」とはStable DiffusionをWebブラウザから簡単に使えるようにした非公式の実行環境の1つで、Windows/Linux上にインストールして利用できます。 また「AUTOMATIC1111」氏によって公開されているバージョンは、一度に複数画像を生成したりパラメータ調整が簡単にできたりと更に機能が盛り込まれている上、ユーザーが作成したスクリプトまでもインストールして使うことができたりと拡張性の高い環境です。
Colabのノートブックが公開されているため、GPU搭載のマシンを持っていなくてもオンライン上に実行環境を構築できます。こちらを使って環境を作っていきます。
実行環境をつくってみよう
事前準備
以下のものが必要です。前回の記事を参考に事前に作成しておきましょう。
- Googleアカウント
- Hugging Faceアカウント
Stable Diffusion web UI(AUTOMATIC1111版)の実行
公式ページにて、Colabノートブックが公開されています。
AUTOMATIC1111氏のオリジナルとAkaibu氏によるメンテナンス版の2種があります。ここではAkaibu氏版(StableDiffusionUI-Voldemort V1.2.ipynb)を使わせていただきます。
Googleアカウントにログインした状態で以下にアクセスし、「ドライブにコピー」を押してノートブックを自分のGoogleドライブにコピーします。
コピーができたらコードセルを上から実行していきます。 1行目でいきなりエラーが出ますがこれは敢えてクラッシュさせ、ランタイム再起動のために入れているコードのようです。 途中でHugging Faceのトークン入力欄があるため、事前に取得していたトークンを入れて実行します。
「Launch web ui.」のセクションを実行すると、gradio.appへの専用リンクが作成されます。 そのまま実行で問題ないですが、ID/PWDの認証が不要な場合は「—gradio-auth」のパラメータは削っておきましょう。
クリックで実行環境が起動、完成です。
なお実行を止めてしまうとURLは無効になり502エラーを返します。処理が終わらないのが気にはなりますが実行中のままにしておく必要があるようです。
余談)この記事を書き始めた頃から少し日が経っているのですが、その間にUIがどんどん進化して使いやすくなっていました。
モデルのダウンロードに失敗する場合は
Hugging Faceのアカウント作成から実施している場合、トークンを入力して実行するコード(Normal 1.4 modelと書いてある行の直後)がエラーになることがあります。
これはStable DiffusionのオリジナルURLでの認証が済んでいないためなので、エラーになった場合は以下のオリジナルに対して「Access repository」を実施してください。
出力画像を保存する
画像の保存方法が2つ用意されています。
gradio.appのアプリが起動中だとコードを実行できないので一度停止させ、ランタイムのみ接続している状態で以下を実行します。
方法1:圧縮ZIPをダウンロードする
「Stable Diffusion web UI」の出力フォルダごとZIPに圧縮し、ダウンロードして保存する方法です。
「Commands for after~」のセクションを開き、非表示になっているコードの1つ目を実行します。
実行後、サイドバーの「ファイル」からZIPがダウンロードできるようになります。
方法2:Googleドライブに出力する
ColabからGoogleドライブを直接参照できるようにした後、「Stable Diffusion web UI」の出力フォルダごと「MyDrive」にコピーする方法です。
「Commands for after~」のセクションを開き、非表示になっているコードの2つ目を実行します。
実行後、サイドバーの「ファイル」からGoogleドライブが参照できるようになり、出力されていることを確認できます。ドライブを見に行くと作成された画像が保存されています。
実際に使ってみた結果
1つのプロンプトで複数画像を生成するときは「Batch count」で調整が可能です。
個人的にお気に入りの機能が「Script」で選べる「X/Yプロット」で、これは任意のパラメータの値を少しずつ変化させて一度に出力できる機能です。2種類のパラメータまで指定でき、組み合わせて実行した結果も表形式で確認できます。
また前回記事でも書きましたが、起動してしばらく触っていないとランタイムが切断されます。再接続でつなぎ直しが可能ですが、GPUの使用量が上限を超えると一定期間(直近の利用を見て判断されており、具体的にどのくらいかは不明)利用不可になります。使用していないときはこまめに接続を切る等をしておきましょう。
まとめ:複数作成&パラメータ調整を駆使してガシガシ使っていこう
「Stable Diffusion web UI(AUTOMATIC1111版)」は一度の処理で複数パターンの画像を作成できたりパラメータの調整結果をまとめて確認できたりと、初心者が最初に触ってみる実行環境としておすすめです。慣れてきたら公開されているスクリプトを使いこなす、自分で使いやすいように拡張してみるような使い方も可能です。
ガシガシ使って画像生成AIの世界に触れていきましょう!