生成AIのStable Diffusionとアジア人向けの学習データのBRAV6(Beautiful Realistic Asians)を利用することで誰でも簡単に、なるべくお金をかけずに、AIグラビアを生成できる方法をご紹介します。
以下の写真は、私が利用開始して30分程度で生成した画像です。想像以上に高いクオリティの画像を簡単に生成できます。
1. 準備
高価なGPUをお持ちの方はご自身のPC上で動作させることができますが、AIグラビアだけのために数十万もするようなGPUの初期投資はハードルが高いですよね?
そのため今回はGoogle Colab というクラウドサービスを利用することで1,500円程度で始める方法をご紹介します。
Google Colab のアップグレード
Google Colabを利用することでクラウドでPythonのコードを動かすことができます。今回の生成AIにはGPUが必要なため、有料プランを契約する必要があります。無料プランのままだとうまく動作しない。
プラン選択画面から「Colab Pro」を選択し、クレジットカードで支払いをします。月間100コンピューティングユニットが付与され、利用する設備や時間によってこれらを消費していきます。
価格は1,179円で、おそらくドル円レートで若干価格が前後するかもしれません。
(必要であれば)Google Driveの容量を増やす
こちらも必要であればGoogleDriveの容量を増やしておきましょう。
通常のGoogleアカウントであればデータ容量は15GBですが100GBまで容量を増やせて月額250円で利用できます。
Colabの設定
メニューバーの「ランタイム」から「ラインタイムのタイプを変更」を選択。
この設定で処理のパフォーマンスを設定できます。ハイパフォーマンスになればなるほど処理は早くなりますが、その分消費するコンピューティングユニットの消費が大きくなります。
数枚画像をお試しで生成するような方であれば「ハイメモリ+T4GPU」の組み合わせで十分です。
ちなみに、それぞれの設定での1時間あたりの消費量は下記の通りです。
CPU + ノーマルメモリ:0.08/hour
A100 GPU + ハイメモリ:13.08/hour
V100 GPU + ハイメモリ:5.45/hour
T4GPU + ハイメモリ:2.05/hour
TPU + ハイメモリ:2.05/hour
2. 実行
Google Colabでスクリプトを実行
下記のスクリプトをGoogle Colabに貼り付けて実行(Ctrl + Enter)
!pip install --upgrade Pillow
!echo "Y" | pip uninstall torchvision
!echo "Y" | pip install torchvision==1.9.0
!git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui
%cd /content/stable-diffusion-webui
#BRAV6
!wget https://civitai.com/api/download/models/113479 -O /content/stable-diffusion-webui/models/Stable-diffusion/brav6.safetensors
!python launch.py --share --xformers --enable-insecure-extension-access
各種インストールなど行われ、3~4分程度で準備完了します。
Launching Web UI with arguments: --share --xformers --enable-insecure-extension-access
2023-08-11 01:19:52.546057: I tensorflow/core/platform/cpu_feature_guard.cc:182] This TensorFlow binary is optimized to use available CPU instructions in performance-critical operations.
To enable the following instructions: AVX2 FMA, in other operations, rebuild TensorFlow with the appropriate compiler flags.
2023-08-11 01:19:53.466086: W tensorflow/compiler/tf2tensorrt/utils/py_utils.cc:38] TF-TRT Warning: Could not find TensorRT
Calculating sha256 for /content/stable-diffusion-webui/models/Stable-diffusion/brav6.safetensors: Running on local URL: http://12**********
Running on public URL: https://3b8f************.gradio.live
処理が表示され「Running on public URL: https://**********.gradio.live」と表示されているのでこれをクリックすると、下記の画面が開きます。
Stable Diffusionの設定
左下にある生成に関する各種パラメータの設定をしましょう。
Sampling methodを「DPM++ 2M SDE Karras」
「Hires.fix」にチェック
Upscalerを「R-ESRGAN 4x+」
Heightを「768~1024」 (生成する画像サイズ)
3. 生成
生成したい画像要素を指定する「プロンプト」と、逆に生成したくない要素を設定する「ネガティブプロンプト」それぞれを指定します。本記事では緑囲いをプロンプト、赤囲いをネガティブプロンプトとして表示します。
プロンプトの書き方やbrav6でのおすすめプロンプトは以下の記事でご紹介しています。
作成例:1
8k, RAW photo, best quality, masterpiece, realistic, photo-realistic,
night, cityscape, city lights, Tokyo city,
1girl, upper body,
cute woman, embarrassed smile,
blouse , skirt
EasyNegativeV2,negative_hand-neg, (worst quality:2), (low quality:2), (normal quality:2), lowres, bad anatomy, bad hands, normal quality, ((monochrome)), ((grayscale))
作成例:2
8k, RAW photo, best quality, masterpiece, realistic, photo-realistic,
beach,
1girl, full body, Kneeling, tilting head, armpits
cute woman, embarrassed smile, short hair,
Brazilian bikini
EasyNegativeV2,negative_hand-neg, (worst quality:2), (low quality:2), (normal quality:2), lowres, bad anatomy, bad hands, normal quality, ((monochrome)), ((grayscale))