StableDiffusionをGoogleColabで構築して画像生成を楽しんでいる人は大勢居ると思います。
しかし最近になって無料プランで使用しているとGoogleから警告文が表示されるようになりました。
Google Colabの無料版でStable Diffusionが制限された理由は、Google Colabの中の人、Chris Perry氏によると、
「GPUがパンク寸前、無料プランはインタラクティブなノートブックコンピューティングが優先です。 Stable Diffusion Web UIの使用量が大きくなり、チームの予算では使用量の増加に対応できません。」ということです。
Google Colabは機械学習の教育や研究向けサービスなので、Stable Diffusion Web UIで本来の目的とは異なるAIイラスト生成を無料プランでガンガンやられると困るという話です。
GoogleColabでStableDiffusionを使用する側の注意点と、使用する際の料金を解説します。
GoogleColabとは?
そもそもGoogleColabとは正式名称は「Google Colaboratory」と言います。
Googleが無料で提供する機械学習プログラミングのための統合開発環境です。
オンライン上で提供されておりブラウザから操作可能なため、PCへのインストールも不要です。Googleアカウントさえあれば誰でもすぐに利用ができます。
Google Colabで利用できる開発言語はPythonです。
Pythonは、WEBアプリ開発でも使われている言語であり、最近では機械学習に利用されることから人気が高まっています。
少ないコードで効率的な開発ができるため、初学者にも習得しやすいという特徴もプラスポイントです。また充実したライブラリがあることも開発者には利点となっています。
*GoogleColabでStableDiffusion Web UIを構築する方法は、YouTubeやネットなどを検索すれば必ずヒットします。モデルの追加方法もわかりやすく説明されているので、もし利用するなら自分の使用目的に合うものを選んで下さい。
GoogleColab 有料プラン
Google ColaboratoryでStable Diffusion Web UIを構築し、無料プランで利用していると「警告文」が表示され、この警告を無視するとアカウントを停止される可能性があります。
もしGoogleColabを利用する場合は有料プランに加入することをオススメします。
- Pay As You Go(直訳すると、使った分だけという意味)・・・100コンピューティング単位につき1,179円/500コンピューティング単位につき5,767円
- Colab Pro・・・1ヶ月あたり1,179円(100コンピューティングユニット)、より速いGPU、より多くのメモリ、ターミナル。
- Colab Pro+・・・1ヶ月あたり5,767円(500コンピューティングユニット)、より速いGPU、より多くのメモリ、ターミナル、バックグラウンド実行。
コンピューティングユニットとは
「コンピューティングユニット」という言葉が出てきますが、どういう意味か説明します。
Google Colabではコンピューティングユニットという単位を使って、GPUの使用量を測定しています。
コンピューティングユニットはGPUの性能と時間によって決まり、高性能なGPUを使用するほど多くのコンピューティングユニットを使用します。
GoogleColabで使用出来るGPUは3種類あり(A100、V100、T4)それぞれ性能が違います。
- A100:NVIDIAの最新のGPUで、Tensor Coreを搭載することで、従来のGPUよりも高速な演算処理を実現しています。また、メモリ容量も大きく、大規模なデータセットの処理にも適しています。
- V100:A100の前モデルで、A100に比べると性能は劣りますが、それでも十分に高速な演算処理を実現しています。また、メモリ容量も大きく、A100に比べると価格も安価です。
- T4:V100の下位モデルで、V100に比べると性能もメモリ容量も小さいですが、それでも十分に使いやすいGPUです。また、価格も安価なので、予算が限られている場合におすすめです。
このようにGoogle Colabで使用されているGPUは、すべて高速な演算処理を実現できるGPUです。どのGPUを選択するかは用途や予算によって異なります。
※最近のGoogleColaboratoryでは、ハードウェアアクセラレータ(GPU)が少し変更されてます。現在私が使用しているGPUは「L4」を使っています。
Google Colab でGPUを使用すると、コンピューティング ユニットが消費されます。
- A100:1時間・・・15.04
- V100:1時間・・・7.32
- T4:1時間・・・1.96
単純計算すると、有料プランの ColabPro/100コンピューティングユニットの場合は、A100で約6.6時間、V100で約13.7時間、T4で約52.6時間使用できます。
ただしこれはあくまでも目安なので、実際の使用時間は利用状況によって変動する可能性があります。
画像生成を速くしたいならGPUの性能を上げればいいですが、その分コンピューティングユニット数を使う事になります。もし時間が掛かっても構わないならT4を使うほうが良いです。
画像生成中にコンピューティングユニット数が減ってくると、colab画面に黄色で(⚠警告)と通知されます。必要であれば追加でコンピューティングユニットを購入するよう案内が出てきます。
引き続き画像生成するなら追加で購入することになります(Pay As You Go)
*それと、GoogleColabでStableDiffusionを長い時間連続で利用しているとGPUとの接続が途切れることがあります。
明確な制限の上限は非公開ですが、どうやらGoogle ColabではGPUの使用時間に制限があるようです。
特にSTABLE DIFFUSIONの画像生成ではGPUを大量に使用するという理由もありますし、他のユーザーも利用することも考慮しているためだと思われます。
私の場合(Colab Pro加入、GPUはV100、ハイメモリで使用)で、約4時間ほど経過するとGPUの接続が途切れます。滅多に長時間使用することはありませんが時間管理には注意が必要です。
しかしこれはあくまで自分の使用条件下での状況なので、他の条件では違う可能性があります。
接続の時間(リソース)も関係してくるので、作業が終わったら接続を切っておきましょう。リソースの消費を抑えられます。
*ちなみに接続中はチェックマークが入り、RAMとディスクの表示になります。接続を切ると「接続」もしくは「再接続」という表示に変わります。2023年8月現在は、今使用しているGPUとメモリの種類も表示されます。
Stable Diffusion Web UI 必要なストレージ
Google ColaboratoryでStable Diffusion Web UIを構築して必要なControlNetとモデル1つをストレージに追加すると、あくまで目安ですが約10GBのストレージが必要になります。
無料プランでは15GBのストレージが提供されているため無料プランの範囲内に収まります。
Googleアカウントさえ持っていれば無料で15GBのストレージが使えるということになります。(個人で使用する場合)
ただしControlNetとモデルのサイズは使用するデータセットやモデルの複雑さによって異なるため、実際に必要なストレージ容量は異なる場合があります。
Google ドライブの無料プランでは15GBまでの容量しか利用できませんから、モデルの追加や、その他のメール、画像、写真、グラフなどが合わさると無料プランでは収まらない可能性があります。
Google Oneの有料プランに登録するとGoogle ドライブの容量を追加することができます。また、Google フォトや Google Drive でバックアップされた写真や動画の保存容量も追加されます。
さらにGoogle Oneでは、Google ドライブのファイルにアクセスできる端末数を増やすこともできます。
Google ドライブの容量が不足している、もしくは不足しそうな場合はGoogle Oneの有料プランに登録することを検討してみてください。
モデルの追加、コントロールネット、StableDiffusionの拡張機能、LoRAなどをインストールしていくと無料の範囲は軽く超えます。
しかし、ベーシックプランでも100GBで月額250円ですから、それほど負担にはなりません。
まとめ
高価なPCを購入しなくてもGoogleColabでStable Diffusion Web UIが使えることはとても便利なんですが、それなりに費用が発生するということと同時に注意が必要です。
ちょっとGoogleBard(現Gemini)で問い合わせてみました。
GoogleはGoogle ColabでSTABLE DIFFUSIONを使用して生成された画像を監視しています。ただしGoogleはすべての画像を監視できるわけではないため、一部のセンシティブな画像が生成される可能性があります。Googleはセンシティブな画像の生成を防ぐためにさまざまな対策を講じていますが、完全に排除することはできません。
GoogleはユーザーがGoogle Colabを使用してセンシティブな画像を生成することを禁止しています。またGoogleは、センシティブな画像を生成したユーザーに対してアカウントの停止などの措置を講じています。
Googleは、ユーザーがGoogle Colabを安全に使用できるようにするためにさまざまな対策を講じていますが、ユーザー自身もGoogle Colabを安全に使用するための注意が必要です。
どんな画像を生成していようが個人の勝手かもしれませんが、センシティブな画像やエロ画像などは注意しないといけません。Googleからアカウント停止を食らわないように気をつけましょう。
もし、制約を受けずに好きなだけ画像生成したいのであれば、ゲーミングPCを購入してローカル環境で構築する方法を検討してもいいかもしれません。
*尚、上記の料金は2023年6月時点での金額となります。今後GoogleColabなどの料金やGoogleの規定が変わる可能性があります。