見出し画像

【Stable Diffusion webuiの教科書】Google Colaboratoryで環境構築


はじめに

今回より画像生成AIの「Stable Diffusion」の webuiを使用した画像生成についてのシリーズを投稿していこうと思います🔥
導入方法から基本的な使い方、様々な拡張機能の使い方、
AI美女の作り方、もっと実務的な使い方までは網羅的な教科書シリーズに仕上げていきます!!

他の画像生成AIサービスと比較して、環境の構築が少しややこしく感じ、
足踏みしている方も多いかと思います。
しかし、最初の導入だけクリアすれば、他の画像生成AIにはない拡張性で
より細かい指示による画像生成が体験できるかと思います!

今回は、その導入方法について紹介します。
「Stable Diffusion / webui」の導入方法は主に2つのパターンに分かれます。
一つは自身のPCにローカル環境を準備することです。
これは無料で画像生成できますが、高性能なグラボが必要など一定以上のマシンスペックが求められます。
もう一つが、サーバー上のGPUをレンタルして環境を準備する方法です。
こちらはレンタル料が必要ですが、使用するマシンスペックは求められません。今回はこの方法を利用します。
今回利用するのは「Google Colaboratory」というGoogleのサービスです。
データサイエンス、機械学習、人工知能の開発や研究を支援するために設計されていて、Pythonの実行が可能です。またサーバーのCPUやGPUを使用することができます。基本的には無料で利用できるサービスですが
「Stable Diffusion / webui」を利用する場合には、有料版を契約する必要があります。

この環境準備だけが少し面倒ですが、
この章をクリアすると楽しいStabe Diffusion ライフがあたなを待っています!頑張りましょう!!

Google Colaboratory の有料プラン契約

有料プランの契約については下記リンクから可能です。

有料プランの種類は3つあります。(2023年8月現在)
基本的に有料プランは高性能なGPUが割り当てられます。
基本的にこれからやっていこうという方であれば、
「Colab Pro」プランで十分です。
試しにやってみようという方であれば
「Pay As You Go」プランが良いと思います。

  1. Colab Pro:月額 ¥1,179

  2. Colab Pro+:月額 ¥5,767

  3. Pay As You Go:使った分だけ支払い

有料プラン契約画面

有料プランの契約は下記の作業が完了して、セルの実行を行う前でも大丈夫です。

Google Colaboratory の基本的な使い方

まずは下記URLを開いて、
「ファイル」→「ノートブックを新規作成」を選択します。

ノートブックを新規作成

すると下記のような画面になります。
こちらがあなたがいまか編集していく「ノートブック」です。

ノートブックの初期画面

ノートブックの名前は画面上部から編集可能です。
分かりやすい名前にしておきましょう!

ノートブックの名前編集

ノートブックの画面は大きく二つの要素を追加していくことで編集していきます。「コードセルの追加」と「テキストの追加」です。

まずは「コードセル」についてですが、
コードセルとは下記画像の「実行ボタン+コード入力欄」の塊です。
初期状態から一つのコードセルが準備されています。
入力欄には、Pythonコードを記述します。
左の実行ボタンを押すことで、そのコードセルのコードを実行することが可能です。
また、コードセルを追加したい場合は「+ コード」で追加可能です。

コードセルの説明

次は「テキスト」の追加です。
テキストはノートブック自体やコードのセルの説明の際に使います。
「+ テキスト」を押して、テキストの追加をしてみましょう。

テキストの説明


Stable Diffusion webuiの導入

まずは、ノートブックのランタイムの種類を「GPU」にします。
この場合のランタイムとは、簡単に言うとプログラムを動かす部品のことです。
「ランタイム」→「ランタイムのタイプを変更」→「ハードウェア アクセレータ」→「GPU」→「保存」で変更しましょう。

ランタイムをGPUに変更
ランタイムをGPUに変更


次にテキストとコードセルを編集します。
このコードセルでは「AUTOMATIC1111」さんのGitHubリポジトリからStable Diffusion WebUIをダウンロードしています。
Stable Diffusion WebUIは「AUTOMATIC1111」さんが作ったツールです。
GitHubとはソフトウェア開発でよく利用されるサービスで、
簡単に言えばソースコードの保存 / 公開 ができるサービスです。
開発者自身は多くの場合、バージョン管理の目的で使います。
気になる方は調べてみてください。

1つ目のコードセル:WebUIのダウンロード

「# ~」と記述することで、セル内にコメントを記述できます。
コメントは実際のプログラムの処理には反映されず、何の処理を記述しているのかを説明するのに使います。
「!git clone GitHubのファイルURL」で指定のGitHubのファイルをダンロードします。
「%cd フォルダパス」で作業するフォルダを指定します。

!git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui


次にコードセルを追加して、モデルのダウンロードを行います。
モデルとは、簡単に言えば、AIがどのような画像を生成するかを学習した関数です。他のものに例えると、油汚れを落とす際にアルカリ電解水を使って掃除する時の「アルカリ電解水」の部分です(いい例えが思い浮かばなかった笑)。落とした汚れに対して最適な洗剤を選ぶように、作りた画像に対して最適なモデルを選びましょう。
今回は「Chill_remix」と「BRAV5」というモデルをダウンロードしました。
両方アジア系の美女を生成するのに適したモデルです。
モデルは「huggingface」というサイトからダウンロードしています。
他にも「civitai」のサイトも様々なモデルが公開されています。

2つ目のコードセル:モデルのダウンロード

「%cd フォルダパス」でファイルをダウンロードする先のフォルダを指定しています。
「!curl -LO ファイルのURL」で指定のURLのファイルをダウンロードしています。

%cd /content/stable-diffusion-webui/models/Stable-diffusion/
!curl -LO https://huggingface.co/sazyou-roukaku/chilled_remix/resolve/main/chilled_remix_v2.safetensors

%cd /content/stable-diffusion-webui/models/Stable-diffusion/
!curl -LO https://huggingface.co/BanKaiPls/AsianModel/resolve/main/BRAV5finalfp16.safetensors


次にVAEのダウンロードを行います。
VAEとは、簡単に言うと画像を生成するために数値データを実際の画像データに変換する時に使われる仕組みです。
これをダウンロードしておかないと、生成される画像がぼんやりした印象になり、仕上がりのクオリティーが変わってきます。
今回は、Stable Diffusion公式の代表的なVAEをダウンロードしました。

3つ目のコードセル:VAEのダウンロード
%cd /content/stable-diffusion-webui/models/VAE/
!curl -LO https://huggingface.co/stabilityai/sd-vae-ft-mse-original/resolve/main/vae-ft-mse-840000-ema-pruned.ckpt


最後にStable Diffusion WebUIを起動させます。
これを実行すれば、WebUIのURLが発行されます。

4つ目のコードセル:WebUIの起動
%cd /content/stable-diffusion-webui
!python launch.py --share --xformers --enable-insecure-extension-access


最終的には下記のような状態になっていればOKです!

最終的なノートブックス


それでは、編集したセルを実行してみましょう!
「ランタイム」→「すべてのセルを実行」を選択します。

セルの実行

セルを実行すると各セルの実行ボタンがクルクルと回って、
実行中のセルの下にログが表示されます。
最後のセルであるWeb UI の起動セルの下に
「Running on public URL : WebUIのURL」が表示されたら、
そのURLをクリックすれば、WebUIのページが開きます!

Running on public URL を選択

下記のようなページが表示されればWebUIの起動はOKです!

Web UI 


ここまで読んでいただきありがとうございました!
今回はここまで!
次は基本的なStable Diffusion WebUIの使い方を記事にします。
そこから、LoRAや様々な拡張機能なども紹介していこうと思います。
Stable Diffusion 以外にも画像生成AIの情報を網羅的に発信しております。
ご興味のある方はフォローのほどよろしくお願いします!


この記事が気に入ったらサポートをしてみませんか?