「Stable Diffusionを使用したいが、どのように始めれば良いのだろう…」「低スペックPCでもStable Diffusionを使用できるの?…」 そう思う方もいるのではないでしょうか。
実は、高性能なPCを持っていなくても、Google Colaboratoryを利用することでStable Diffusionで簡単に画像を生成することができます。
今回PROMPTYでは、Stable DiffusionをGoogle Colabで使用する方法を詳しく解説します!
Google Colabとは?
Google Colaboratory、通称「Colab」はPythonを簡単にコーディング・実行でき、ブラウザから直接操作することが可能なGoogle提供のサービスです。
画像生成AIの運用も可能であり、特にStable DiffusionといったPythonベースのツールはColab上での動作が可能です。AIの動作には高スペックのPCが求められますが、全ての人が高スペックのPCを所有することは難しいため、その代わりとしてColabの活用が考えられます。
Colabは無料プランでも一定範囲内で高性能なGPUを利用できますが、2023年6月現在はStable Diffusionのコードを無料のColabで試すと警告が表示される可能性があります。Colab Proではそのような警告も表示されずに問題なく使用可能であるため、これからStable Diffusioを使う方は月額¥1,179のColab Proへのアップグレードが求められます。
Google Colabの無料版と有料版の主な違いは次の通りです。
- GPUの利用
無料のGoogle Colabでは、自由にGPUの種類を選ぶことはできず、自動的に割り当てられます。一方、有料のGoogle Colabでは、P100等の高性能なGPUが割り当てられます。これにより計算処理が高速化し、ビッグデータの取り扱いや長時間必要なディープラーニングの学習にも使えます。 - メモリ使用量の違い
Google Colabの無料版で機械学習やディープラーニングのモデルを作る際に、メモリ不足に陥ることがあります。対して有料版では、より多くのメモリを持つ仮想マシン(VM)が優先的に割り当てられます。メモリ使用量が大幅に増加するため、メモリを気にすることなく計算処理が可能です。 - 使用時間の制限
無料版のGoogle Colabでは、使用可能時間が12時間に制限され、その時間を過ぎると自動的に初期化されます。一方、有料版では最大使用時間が24時間まで延長され、使用の利便性が大幅に向上します。 - バックグラウンド実行の有無(Colab Pro+の場合)
Colab Pro+では、ブラウザを閉じた状態でも裏で処理を継続できるバックグラウンド実行ができます。これにより、PCをシャットダウンして長時間の学習を回すことができます。
Stable Diffusion WebUIを使うメリット
Stable Diffusion WebUIはブラウザを通じてアクセス可能で、GUIによる直感的な操作によりStable Diffusionを活用することが可能です。ローカルで高品質の画像を生成するとなると時間がかかる問題がありますが、Colabを活用すればその問題は緩和します。Colabで高性能なGPUを用いてStable Diffusion WebUIを稼働させることで、迅速に高品質の画像生成が可能になります。
また、Stable Diffusion WebUIのツール自体は無料で利用でき、Stable Diffusionは自動で環境構築を行ってくれます。さらに、日本語の対応も可能です。そして、拡張機能をインストールすることで機能を増やすことができます。
これらの特徴から、初心者から上級者まで、誰もが簡単に画像生成を行えると共に上級者にも継続的に利用する価値があります。
Google ColabでStable Diffusion WebUIを使う方法
Goodle ColabでStable Diffusion WebUIを使用する手順を解説します。今回は「AUTOMATIC1111/stable-diffusion-webui」を使ってWebUIを動かす方法を紹介します。
① Google Colabを起動する
はじめにColabのページに移動してログインしましょう。
次のようなページに移動します。
② ノートブックをコピーする
GithubのAUTOMATIC1111/stable-diffusion-webuiのサイトにアクセスし、Google Colabの”maintained by TheLastBen”を開きます。
AUTOMATIC1111のノートブックが開かれるので、このノートブックを自分のGoogle Driveにコピーします。
別のタブで「fast_stable_diffusion_AUTOMATIC1111.ipynbのコピー」という名前でノートブックが開きます。
③ Stable Diffusionで使用するモデルを準備する
「CIVITAI」や「Hugging face」からStable Diffusionで使用するモデルをダウンロードします。
今回はCIVITAIから、Beautiful Realistic Asiansというモデルを設定します。
上部のボックスからモデルの名前を検索します。
右側の「Download」からモデルをダウンロードします。
モデルをダウンロードしたら、自身のGoogle Driveにアップロードしましょう。ドライブ上にモデルを保存しておくためのフォルダ(Stable Diffuison > modelsなど)を作成することをおすすめします。
ドライブへのアップロードが完了したらモデルの準備は完了です。
④ ノートブックを実行する
使用するモデルの準備が完了したら、②で開いたAUTOMATIC1111のノートブックを実行します。
左の三角のボタンをクリックして実行していきます。
はじめに「Connect Google Drive」クリックしてGoogle Driveへのアクセスを許可します。
実行が完了すると「Done」と表示されます。
「Install/Update AUTOMATIC1111 repo」「Requirements」も同様に実行します。
「Model Download/Load」では「Path_to_MODEL」にモデルのアクセスパスを入力してモデルを設定します。
モデルのアクセスパスは次の通りです。
/content/gdrive/MyDrive/{ファイル名}/{モデルのファイル名}
次の「ControlNet」は必要に応じて実行します。「ControlNet」を導入することで、生成する画像の構図や人物のポーズを自由に設定できます。
最後に「Start Stable-Diffusion」を実行します。実行すると下段に「Connected」と表示されます。表示されたURLをからStable Diffusion WebUIを起動できます。
Stable Diffusion WebUIの画面
⑤ Stable Diffuison WebUIで画像を生成する
Stable Diffuison WebUIを起動したら、赤で囲んだボックスに「プロンプト」を、青で囲んだボックスに「ネガティブプロンプト」を入力します。
また、緑枠内のSampling methodやSampling stepsのようなパラメータを設定します。
次のようにプロンプトとネガティブプロンプト、パラメータを設定します。
プロンプト(赤枠):
masterpiece,high quality,1 girl,Japannese,black long hair,laugh,frontal face,wallpaper
ネガティブプロンプト(青枠)
(worst quality, low quality:1.4), (zombie, sketch, interlocked fingers, comic), nsfw
その他のパラメータ(緑枠)
Sampling method:DPM++ SDE Karras
Sampling steps:20
Width:512
Height:512
Batch count:1
Batch size:1
CFG Scale:7
Seed:-1
Script:None
最後に「Generate」をクリックすると画像が出力されます。
30秒ほどで次のようなリアルで日本人っぽい女性の画像が生成されました。
初心者におすすめのモデルを紹介
Stable Diffusion WebUIを動かせるようになったら、様々なモデルを使って画像を生成してみましょう。今回はおすすめのモデルを3つ紹介いたします。どのモデルも、次のプロンプトで生成した画像を載せています。
プロンプト:
masterpiece,high quality,1 girl,Japannese,black long hair,laugh,frontal face,wallpaper
ネガティブプロンプト:
(worst quality, low quality:1.4), (zombie, sketch, interlocked fingers, comic), nsfw
Sampling method:DPM++ SDE Karras
Sampling steps:20
Width:512
Height:512
Batch count:1
Batch size:1
CFG Scale:7
Seed:-1
Script:None
① 写真のようなリアルなイラストを生成できるモデル「Chilloutmix」
現行の高性能モデルの一つ「Chilloutmix」は入力するプロンプトによって、リアルなイラストを生成することができます。
生成した画像:
3DCGのようなイラストが生成されました。プロンプト通り黒髪ロングで笑顔の女性となっています。
② リアルな日本人を生成できるモデル「BRA(Beautiful Realistic Asians)」
Stable Diffusionでアジア系美女を生成したい場合「BRAV5」がおすすめです。
生成した画像:
Chilloutmixで生成した画像よりも、写真に近いリアルな画像が生成されます。
③ アニメ風の画像を生成できるモデル「Anything」
モデル「Anything」では短いプロンプトでアニメ風の美少女イラストを生成できます。
生成した画像:
前の2つとは打って変わってアニメ風の画像が生成されました。プロンプト通り黒髪ロングで笑顔の女性となっています。プロンプトに入力した”frontal face”まで適用されています。
このように、モデルによって生成される画像の特長が大きく異なります。Stable Diffusionで画像を生成する際は、皆様の用途にあったモデルを探してみてはいかがでしょうか。尚、AIで生成した画像を商用利用を場合には注意が必要です。商用利用に関してはこちらの記事をご覧ください。
「Stable Diffusionの商用利用できるの?」「画像生成AIを商用利用する上で注意することは?」そう思う方もいるのではないでしょうか。 今回PROMPTYでは、Stable Diffusionの商用利用についてのライセンス[…]
まとめ
今回PROMPTYでは、Stable Diffusion WebUIをGoogle Colabで使用する方法を紹介しました。
例として、「AUTOMATIC1111/stable-diffusion-webui」でweb UIを起動する手順を、使用するモデルの準備と併せて解説しました。Colabで高性能なGPUを用いてStable Diffusionを起動することで、迅速に高品質の画像生成が可能になります。
今回の記事を参考に、皆さまもColabでStable Diffusion WebUIを使ってAI画像生成を試してみてはいかがでしょうか。
~Stable Diffusionで素早く画像生成するには~
Stable Diffusionの画像生成スピードや画像サイズは、グラフィックボード(GPU)の性能によって大きく変わります。
このため、より効率的かつ快適な画像生成を望むユーザーにとって、最適なグラフィックボードの選択が重要となります。
推論処理やLoRAなどの追加学習処理といった大量の計算を効率よく行うためには、12GB以上のVRAMを持つグラフィックボードを選ぶことを強くおすすめします。
2GBや4GBのVRAMを持つグラフィックボードでは、学習プロセスや高解像度の画像生成に支障が出る可能性が高いです。
コスパを重視する方は、RTX 3060を選ぶと良いでしょう。
このグラフィックボードを使えば、Stable Diffusionの画像生成機能を最大限に活用することが可能となります。