ModalでStable Diffusion を使う(1)

2024年9月7日

この記事の情報は2023年10月1日が最終更新日です。
現在Modalはあまり使っていないのですが、情報が少ないため一応公開状態で残してあります。

目次
  • Modalについて
  • Stable Diffusion WebUIをインストールする
  • その他
  • 1ヶ月で生成できた枚数
  • 次の記事

Modalについて

Modalは強いパソコンを借りられるサービスです。自分のパソコンではスペックが足りなくて画像生成AIを動かせない人も、Modalを使えばAIで遊ぶことができます。

Modalのいいところ

  • 無料で使い始められる
  • 混んでないからいつでも使える
  • 生成が速い

Modalのよくないところ

  • 操作がちょっと難しい
  • 情報が少ない
  • 処理落ちしやすい

類似のサービスにGoogle Colaboratory(以下、Colab)やPaperspaceがあります。ColabではStable Diffusion は有料でしか利用できません。Paperspceは無料枠が一応ありますが、有料でも混んでいてなかなか利用できない状況です。(6/23追記/Paperspace最近はけっこうGPU空いてる!ただし有料の場合)ただし、どちらも利用者が多いため情報も多く、操作もModalよりわかりやすくて、基本的にはおすすめです。

Modalは本当にちょっとよくわからないので「無料で試してみたい人はやってみたらいいかも…」くらいの感じです。

料金面の注意事項

Modalは従量課金制で使った分だけお金がかかる仕組みのようです。「無料で使い始められる」というのは$10分までは無料だからです。(今はベータ版だからか$30分が無料。)

その他、ストレージが「$2/GiB/month」と明記されています。が、1ヶ月使ってみたところ料金はかかりませんでした。ベータ版だから無料になっているのか、詳しいことはわかりません。

今のところはクレジットカードの情報を入力しなくても利用ができるので請求されることはないと思いますが、今後は変わる可能性がありますのでご注意ください。

↑料金等の表示があるページ。無料で使えるのはStarterプランです。

Stable Diffusion WebUIをインストールする

私は下記の記事を参考にして導入しました。ありがとうございます。

参考記事では、初心者ではわかりづらいこともありますので、引っかかりそうなところを順番に書いていきます。

1. ModalのアカウントをGETする(参考記事内の見出し)

Githubのアカウントが必要ですので先に作っておきます。

Modalにサインアップ後、使えるようになるまでしばらくかかります。23年4月下旬時点では2時間程度で使えるようになったというツイートを見かけましたが、私はほぼ同じタイミングで2日かかりました。5月中旬は数日かかっていたようです。

また、メールで用途を確認される場合があります。おそらくGithubの使用状況によるのだと思います。返信したら次の日には使えるようになっていました。

2. Modalを動かしてみる(参考記事内の見出し)

1) ModalのPythonクライアントをダウンロード(参考記事内の見出し)

参考記事に載ってるコマンドは、Windowsのコマンドプロンプトに入力します。デスクトップにある検索バーに「cmd」と入れたら出てきます。

modalなんてものはない!みたいなエラーについて参考記事に注意書きがありますが、私も出ました。コマンドプロンプトを再起動したら使えるようになりました。(右上の×で閉じて、また開いてやってみるだけ。)

2) コードを動かしてみる(参考記事内の見出し)

ここから先に出てくる「***.py」というファイルは、サクラエディタなどのテキストエディタで作成し、文字コードをUTF-8にして保存した方がいいかもしれません。保存する画面で設定できると思います。もしメモ帳で作っていて上手くいかなかったら試してください。

4. Modalを使ってStable Diffusion WebUIを動かす(参考記事内の見出し)

初回でも30分くらいで終わると思います。(ちなみにですがこれだけで$0.52分を消費していました)

10/1追記

modal側で修正が入ったらしく、上記参考サイトで公開されているコードは書き換える必要があります。コード内を検索して修正してください。

13行目 modal.SharedVolume().persist → modal.NetworkFileSystem.persisted
81行目に挿入("colorama",の次の行) "torchmetrics==0.11.4″,
85行目 shared_volumes → network_file_systems

画像にある①がwebUIにアクセスできるURLです。コピーしてブラウザで開いてください。

②のURLは使用状況などが見れるURLです。

Modalが不安定なとき、起動用のコードを実行してURLにアクセスしても「何のアプリも起動してないよ」みたいな表示が出ることがあります。そういう時は、Modal側(②のURL)でDeleteボタン(下の方にあるcancelでも多分同じ)を押して、もう一度起動すれば大丈夫です。

終了したい時もModal側でDeleteしてます。起動しっぱなしだとGPUを食うという情報が参考記事のコメント欄にあります。もったいないので終了させましょう。コマンドプロンプトは「exit」と入力するか、右上の×で消して大丈夫です。

②のURLをなくしても、起動しているWebUIがあるかどうかModalのAPPSというページで確認できます。

↑起動してるWebUIがない状態。

5. オマケ: 生成した画像を一括でダウンロードする(参考記事内の見出し)

このコードはそのままだと動かない場合があります。参考記事のコメント欄にいくつか対策が出ていますので、動かない場合は探してみてください。

その他

もしかしたら自分のパソコンにもPythonを入れておかないとダメかもしれないですが、わからないです。私のパソコンにはPythonのインストールと環境変数PATHの設定をしてあります。これらについては情報がたくさんあるのでググッてください。

1ヶ月で生成できた枚数

私が最初の1ヶ月に$30内で生成できたのは1555枚でした。
色んなサイズで出したり、ControlNetを使ったり、色々試したことでGPUを使ったのかもしれないですが、それより何より処理落ちがすごかったので再起動に使ったんじゃ…?という気がしています。先月より今月の方が処理落ちが少なく安定している感じがするので、今月はもっと生成できるかもしれないです。

でもまあ理論値の「51000枚」は絶対無理なのではと思います。

次の記事

  • 別のモデルの入れ方
  • 拡張機能の入れ方(日本語化など)
  • VAE、LoRA、TIの入れ方
  • ControlNetの入れ方
  • アップロードしたものを削除したいとき

Modal環境

Posted by 令五