PaperspaceでのAUTOMATIC1111を使う方法を解説 | 定額制サーバーでStableDiffusionを動かす

  • URLをコピーしました!

今回はPaperspaceでStable DiffusionのWebUIであるAUTOMATIC1111を使用する手順を解説します。

PaperspaceはGoogle Colabのようなクラウドコンピューティングサービスで、機械学習などの用途でよく利用されますが、毎月の定額制で高性能GPU使い放題のプランが用意されており、Stable Diffusionなどを使ったAIイラストレーターにも人気のサービスです。

Paperspaceの登録方法から、実際に仮想マシン上でAUTOMATIC1111を動かすための手順、Jupyter Notebookについて解説します。無料でも使用できるプランもありますので、是非イラスト生成に活用してみてください。

また当ブログのStable Diffusionに関する記事を以下のページでまとめていますので、あわせてご覧ください。

目次

Paperspaceの登録方法

クラウドコンピューティングサービスPaperspaceの登録方法については、以下のページで解説しています。
本ページのPaperspaceの使い方を試すのは無料プランで問題ありませんので、登録を済ませておいてください。

また、高性能なGPUが使える有料プランに移行する手順についても以下のページで解説していますので、あわせてご覧ください。

Stable Diffusionとは

Stable Diffusion(ステーブル・ディフュージョン)は2022年8月に無償公開された描画AIです。ユーザーがテキストでキーワードを指定することで、それに応じた画像が自動生成される仕組みとなっています。
NVIDIAのGPUを搭載していれば、ユーザ自身でStable Diffusionをインストールし、ローカル環境で実行することも可能です。
(出典:wikipedia)

WebUI AUTOMATIC1111

AUTOMATIC1111はStable Diffusionをブラウザから利用するためのWebアプリケーションです。AUTOMATIC1111を使用することで、プログラミングを一切必要とせずにStable Diffusionで画像生成を行うことが可能になります。

AUTOMATIC1111の公式リポジトリは以下となります。

Jupyter Notebookを実行する準備(仮想マシンを起動する)

AUTOMATIC1111をインストール、起動するためのJupiter Notebookを動作させる仮想マシンを準備します。

まず、先ほど紹介した「Paperspaceの登録方法の解説」のページに沿って登録を行うと、以下の画面が表示されます。「CREATE」をクリックします。

ランタイムを選択する画面に移りますので、右下の点線の四角が表示されている「Start from Scratch」を選択します。

続いて使用するマシンを選択します。AUTOMATIC1111を使って画像生成する際にはGPUを使用しますので、今回はFree-GPUを選択します。(鍵マークがついているユニットは有償プランの場合に使用できます)
プランは後からアップデートできますので、まずは無料で利用できるGPUを試しましょう。

続いてマシンを連続使用する時間を設定します。無料プランの場合は最大6時間まで設定できます。今回はとりあえず4時間を選択しました。
選択したら左下の「START NOTEBOOK」をクリックします。

マシンの起動に成功すると、以下の画面が表示されます。
AUTOMATIC1111のJupyter Notebookを実行するため、画面左端のメニューのJupyter Labのアイコンをクリックします。

Jupyter Labが起動し以下の画面が出たら準備完了です。

以下のメッセージが出て起動できない場合

仮想マシン起動時に以下のようなエラーメッセージが表示され、起動できない場合があります。この場合は、サーバーが混みあっていてマシンが空いてない状態ですので、少し時間をおいてから再度試してみてください。

PaperspaceでAUTOMATIC1111を実行するJupyter Notebook

ここからは、実際にPaperspaceのサーバー上でAUTOMATIC1111をインストール、実行するためJupyter Notebook(Pythonファイル)について解説します。

PaperspaceでAUTOMATIC1111の環境構築をするにあたり、既存のJupyter Notebookで良いものが見当たらなかなったため、私が作成しました。
初心者の方にもわかりやすいように、最小限のコードで実行できるように作成しました。

ノートブックのダウンロード

Jupyter Notebookは以下のGitHubリポジトリからダウンロードできます。

GitHubのリポジトリにアクセスしたら右上の「<> Code」というボタンをクリックします。

メニューから「Download ZIP」をクリックし、ファイルをダウンロードします。

ダウンロードしたZIPファイルを展開すると、「murasanlab-paperspace-automatic1111v1.ipynb」というJupyter Notebookのファイルがあります。このファイルをPaperspaceの仮想マシンで実行するだけで、AUTOMATIC1111のWebUIを起動することができます。

コード解説

ここからは、先ほどダウンロードした「murasanlab-paperspace-automatic1111v1.ipynb」の内容について解説します。とりあえず使うだけであれば、内容がわからなくても実行するだけでWebUIが動作しますので、流し読みでOKです。

AUTOMATIC1111本体のGitHubリポジトリをPaperspaceの仮想マシンにダウンロードします。Google Colabと異なり、ダウンロードしたAUTOMATIC1111のディレクトリは仮想マシン内に残りますので、初回だけ実行すればOKです。

#AUTOMATIC1111のダウンロード
%cd /notebooks
!git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui
%cd /notebooks/stable-diffusion-webui

続いてAUTOMATIC1111のアップデートを行います。こちらはAUTOMATIC1111の新しいバージョンがリリースされ、アップデートした時だけ実行すればOKです。

#AUTOMATIC1111アップデート(アップデートが必要な時のみ実行)
%cd /notebooks/stable-diffusion-webui
!git checkout master
!git pull

Stable Diffusionで使用したいモデルとVAEをダウンロードします。今回のノートブックでは、Vすき焼きさんのSukiyakiMixV1をダウンロードするコードが記述してあります。

他のモデルを使いたい場合は、下にwgetコマンドでモデルパスを追加してください。(Paperspaceはストレージが少ないのでご注意ください)
モデル、VAEについても一度ダウンロードすると、仮想マシン内のディレクトリに残りますので1度だけでOKです。

#モデルのダウンロード(ここにダウンロードしたいモデルを追加)
%cd /notebooks/stable-diffusion-webui/models/Stable-diffusion
!wget https://huggingface.co/Vsukiyaki/SukiyakiMix-v1.0/resolve/main/SukiyakiMix-v1.0-fp16.safetensors

#VAEのダウンロード(ここにダウンロードしたいVAEを追加)
%cd /notebooks/stable-diffusion-webui/models/VAE/
!wget https://huggingface.co/WarriorMama777/OrangeMixs/resolve/main/VAEs/orangemix.vae.pt

%cd /notebooks/stable-diffusion-webui

最後にAUTOMATIC1111のWebUIを起動します。初期パスワードはユーザー名:me, パスワード:qwertyとなっています。変更したい場合は最後の行の「me:qwerty」の個所を変更してください。

#WebUI起動(ユーザー名:me, パスワード:qwerty)
%cd /notebooks/stable-diffusion-webui
!python launch.py --share  --gradio-auth me:qwerty

AUTOMATIC1111 WebUIを起動

ここからたJupyter Notebook「murasanlab-paperspace-automatic1111v1.ipynb」を使って、実際にPaperspaceの仮想マシンにAUTOMATIC1111をインストールし、起動する手順を解説します。

ブラウザのJupyter Lab画面の左の赤枠部分が仮想マシンのディレクトリになります。
まずは先ほど「murasanlab-paperspace-automatic1111v1.ipynb」のファイルを赤枠の中にドラッグ&ドロップして、仮想マシンにアップロードします。

アップロードが完了すると、「murasanlab-paperspace-automatic1111v1.ipynb」のファイル名が表示されますのでダブルクリックして開きます。
(私の場合は一度実行してしまっているのでwebuiのフォルダがありますが、初回の場合は表示されません)

ファイルを開くと右側のエディタエリアにコードが表示されます。

このコードのセルを上から順番に実行していきます。
セルをマウスで選択すると青い枠で囲まれますので、この状態で画面上部のメニューの実行ボタン(▶)をクリックすると、そのセルの処理が実行されます。

初回は全てのセルを上から順番に実行してください。

4番目のセルまで実行したらWebUIが起動しますのでしばらく待ってください。
起動が完了すると、以下の画面のようにリンクが表示されますので、「Running on public URL:」の方のリンクをクリックしてください。

リンクをクリックすると以下のログイン画面が表示されます。
ユーザー名とパスワードを入力して「Login」をクリックします。(初期はUser:me、Pass:qwerty)

ログインできれば画像生成の準備が完了しました。

画像を生成する

ログインに成功すると、以下の画面が表示されます。

赤枠の入力欄にプロンプトを入力します。(今回はテストで「a girl」とだけ入力しました)
「Generate」ボタンをクリックすると画像生成が始まりますので、完了するまで待ってください。

画像生成が完了すると、赤枠の部分に生成された画像が表示されます、

AUTOMATIC1111のWebUIの使い方は以下のページで詳しく解説していますので、参考にしてください。(ローカル環境、Google Colabと使い方は同じです)

また、自然言語処理モデルGPT-3を使って呪文を生成する方法についても以下のページで解説していますので、あわせてご覧ください。

仮想マシンを停止する

画像生成を終えたら、Paperspaceの仮想マシンを停止させましょう。

仮想マシンを停止させるには、Jupyter Labの左上のメニューで「File」→「Shut Down」をクリックします。

確認のダイアログが表示されますので、「Shut Down」をクリックします。

以下のメッセージが表示されたら、仮想マシンのシャットダウン処理が完了しましたので、ブラウザを閉じて終了です。

AUTOMATIC1111実行時に発生するエラー対策

Extensions(機能拡張)使用時のエラー

Extensionsタブで拡張機能をインストールする際、以下のようなエラーが発生する場合があります。

発生するエラー

「Install」をクリックすると以下のようなエラーが発生します。

AssertionError: extension access disabled because of command line flags

対策方法

先ほど紹介したPaperspaceのJupyter Notebookの最後のセルの起動コマンドを以下のように修正してください。

修正前
#WebUI起動(ユーザー名:me, パスワード:qwerty)
%cd /notebooks/stable-diffusion-webui
!python launch.py --share  --gradio-auth me:qwerty
修正後

「launch.py」実行時にオプションで「–enable-insecure-extension-access」を指定します。

#WebUI起動(ユーザー名:me, パスワード:qwerty)
%cd /notebooks/stable-diffusion-webui
!python launch.py --share  --gradio-auth me:qwerty --enable-insecure-extension-access

これでインストール時のエラーを回避できます。
GitHubのコードも後日修正します。

WebUI起動時のエラー

WebUI起動時に「RuntimeError: Cannot add middleware after an application has started」というエラーが発生する場合の対処法です。

発生するエラー

起動コマンド「!python launch.py –share –gradio-auth me:qwerty –enable-insecure-extension-access」を実行すると以下のようなエラーが発生します。

This share link expires in 72 hours. For free permanent hosting and GPU upgrades (NEW!), check out Spaces: https://huggingface.co/spaces
Traceback (most recent call last):
  File "/notebooks/stable-diffusion-webui/launch.py", line 295, in <module>
    start()
  File "/notebooks/stable-diffusion-webui/launch.py", line 290, in start
    webui.webui()
  File "/notebooks/stable-diffusion-webui/webui.py", line 163, in webui
    app.add_middleware(GZipMiddleware, minimum_size=1000)
  File "/usr/local/lib/python3.9/dist-packages/starlette/applications.py", line 139, in add_middleware
    raise RuntimeError("Cannot add middleware after an application has started")
RuntimeError: Cannot add middleware after an application has started

対策方法

以下のコマンドを実行するセルを追加してください。
WebUIを起動するセルを実行する前に、こちらのセルを実行します。

%cd /notebooks/stable-diffusion-webui
!pip install fastapi==0.90.1

構図やキャラクターのポーズを指定して生成する

これまで解説してきた手順で、プロンプトから画像を生成できるようになりました。しかし、プロンプトだけでは、どのようなポーズのキャラクターが出力されるかはガチャ的な要素であり、かなり試行回数を踏まなければ理想的なイラストは出力できません。

そこで、AUTOMATIC1111の拡張機能でControlNetというツールを使用することで、イラストの構図やキャラクターのポーズを指定して生成できるようになります。
ControlNetを使った生成方法は以下のページで解説しています。

AUTOMATIC1111の拡張機能として使用できるOpenPose Editorがリリースされ、AUTOMATIC1111のUI内でポーズデータの作成から画像生成までを一貫して実行できるようになりました。

画像生成AIについて学ぶ

動画学習プラットフォームUdemyでは、画像生成AIで高品質なイラストを生成する方法や、AIの内部で使われているアルゴリズムについて学べる講座が用意されています。
Udemyは講座単体で購入できるため安価で(セール時1500円くらいから購入できます)、PCが無くてもスマホでいつでもどこでも手軽に学習できます。

画像生成AIの使い方を学ぶ

Stable DiffusionやMidjourneyの使い方や活用方法を勉強したい方には、以下の講座がおすすめです。

icon icon 【文字からイラスト画像を生成】素人でもプロ並みの絵を作れる画像生成AIツール講座【ChatGPTも活用】 icon

画像生成AIの仕組みを学ぶ

画像生成AIの仕組みについて学びたい方には、以下の講座がおすすめです。
画像生成AIで使用される変分オートエンコーダやGANのアーキテクチャを理解することで、よりクオリティの高いイラストを生成することができます。

icon icon AIによる画像生成を学ぼう!【VAE / GAN】 -Google ColabとPyTorchで基礎から学ぶ生成モデル- icon

UdemyのStable Diffusionなど、AIアート関連の講座は海外のものも多いですが、ブラウザのリアルタイム翻訳機能を使うことで日本語字幕付きで視聴できます。

Udemyの海外講座の字幕を日本語化する方法

まとめ

今回はPaperspaceの使い方について解説しました。PaperspaceはStable Diffusionなどの生成AIを使っているAIイラストレータにも人気のクラウドコンピューティングサービスですので、ぜひ活用してみてください。

また、以下の記事で効率的にPythonのプログラミングスキルを学べるプログラミングスクールの選び方について解説しています。最近ではほとんどのスクールがオンラインで授業を受けられるようになり、仕事をしながらでも自宅で自分のペースで学習できるようになりました。

スキルアップや副業にぜひ活用してみてください。

スクールではなく、自分でPythonを習得したい方には、いつでもどこでも学べる動画学習プラットフォームのUdemyがおすすめです。

講座単位で購入できるため、スクールに比べ非常に安価(セール時1200円程度~)に学ぶことができます。私も受講しているおすすめの講座を以下の記事でまとめていますので、ぜひ参考にしてみてください。

それでは、また次の記事でお会いしましょう。

参考

よかったらシェアしてね!
  • URLをコピーしました!
目次