![見出し画像](https://assets.st-note.com/production/uploads/images/134587958/rectangle_large_type_2_f785f9cd4302a9760cac149efd58f313.png?width=1200)
Paperspaceでsdwebui-forgeをインストール:一時ディレクトリ編
<注:2024/6/8現在>
上記のサイトにある通り、Forgeがこれまでと違う方向に開発が進むとの様です。A1111の拡張機能との互換性が無くなるとのことで、サイトに記載されているコミットに指定したものに修正しました。
paperspaceでは、一時ディレクトリにインストールして動かすことで、容量を使用しなくて済むので、15GBを超える容量になりそうな場合はこちらも選択肢になります。
通常に入れる場合との比較としては、インストールしたファイルを見れないことです。移動も手動で出来ません。
やる人は少ないと思いますが、インストールしているスクリプトを書き換えるのも出来ません。
また、立ち上げ毎に全て1からやり直すので、設定などやり直しになるデメリットもあります。
色々と並べましたが、モデルとかコントロールネットなど容量を気にしなくても良い所は便利ですね。
という事で、備忘録的なところではありますが、コマンドをまとめた記事を作成してみることにしました。
基本構造は過去のものと同様です。
/tmpディレクトリに保存すると、再度マシンを立ち上げたときに/tmpに保存したデータが削除されてしまいます。
Paperspace Gradientは/tmpディレクトリ以外の場所にデータを保存すると課金対象になりますが、tmpディレクトリだと課金対象外ということになります。
<手順>
①Forgeのインストール 「29be1da」のコミットに指定
#(1) webui forgeのダウンロード
# /tmpディレクトリで作業する
%cd /tmp
!git clone https://github.com/lllyasviel/stable-diffusion-webui-forge.git
!git checkout 29be1da
②モデル、VAEのダウンロードコマンド(好きなものを)
# ChromaXL
!cd /tmp/stable-diffusion-webui-forge/models/Stable-diffusion && \
wget -nc https://huggingface.co/zzzAI19/ChromaXL/resolve/main/ChromaXL_v1b.safetensors?download=true -O ChromaXL_v1b.safetensors
# VAE
!cd /tmp/stable-diffusion-webui-forge/models/VAE && \
wget -nc https://huggingface.co/stabilityai/sdxl-vae/resolve/main/sdxl_vae.safetensors?download=true -O sdxl_vae.safetensors
③WebUI起動コマンド
#(2) WebUI起動
from IPython import get_ipython
get_ipython().run_line_magic('matplotlib', 'inline')
!apt update
!apt -y install python3.10 libpython3.10-dev build-essential
!curl -sS https://bootstrap.pypa.io/get-pip.py | python3.10
!python3.10 -m pip show pydantic fastapi
!python3.10 -m pip install --upgrade pydantic fastapi
!python3.10 -m pip install torch==2.1.2+cu121 torchvision==0.16.2+cu121 torchaudio==2.1.2+cu121 torchtext==0.16.2 torchdata==0.7.1 --extra-index-url https://download.pytorch.org/whl/cu121 -U
!python3.10 -m pip install matplotlib ipython insightface -U
!python3.10 -m pip install setuptools==69.5.1 -U
!pip install timm==0.6.7
%cd /tmp/stable-diffusion-webui-forge
!python3.10 launch.py --enable-insecure-extension-access --share --gradio-queue --xformers
④コントロールネットのモデル:一度webuiを立ち上げた後に実行する
# コントロールネットIPADAPTER
!cd /tmp/stable-diffusion-webui-forge/models/ControlNet && \
wget -nc https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/ip-adapter_xl.pth?download=true -O ip-adapter_xl.pth
# コントロールネットDENSEPOSE
!cd /tmp/stable-diffusion-webui-forge/models/ControlNet && \
wget -nc https://huggingface.co/jschoormans/controlnet-densepose-sdxl/resolve/main/diffusion_pytorch_model.safetensors?download=true -O diffusion_pytorch_model.safetensors
# コントロールネットDEPTH
!cd /tmp/stable-diffusion-webui-forge/models/ControlNet && \
wget -nc https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/diffusers_xl_depth_mid.safetensors?download=true -O diffusers_xl_depth_mid.safetensors
#コントロールネットQRコードモンスター
!cd /tmp/stable-diffusion-webui-forge/models/ControlNet && \
wget -nc https://civitai.com/api/download/models/221829 -O QRcodemonster.safetensors
#コントロールネットinstantID(ip-adapter.bin)
!cd /tmp/stable-diffusion-webui-forge/models/ControlNet && \
wget -nc https://huggingface.co/InstantX/InstantID/resolve/main/ip-adapter.bin?download=true -O ip-adapter_instant_id_sdxl.bin
#コントロールネットinstantID
!cd /tmp/stable-diffusion-webui-forge/models/ControlNet && \
wget -nc https://huggingface.co/InstantX/InstantID/resolve/main/ControlNetModel/diffusion_pytorch_model.safetensors?download=true -O control_instant_id_sdxl.safetensors
⑤ 生成物をzipファイルにするコマンド
# outputsディレクトリの保存
!zip -r /notebooks/outputs.zip /tmp/stable-diffusion-webui-forge/output
# deforumのframeinterpolationを行ったファイルの保存
!zip -r /notebooks/outputs.zip /tmp/stable-diffusion-webui-forge/outputs
拡張機能は、コマンドで入れた際に、WebUIを立ち上げても認識してくれなかったので、起動後手動でインストールすることを推奨します。
おすすめ(?)拡張機能URL先
①Modeldownloader
https://github.com/Iyashinouta/sd-model-downloader
②Deforum
https://github.com/deforum-art/sd-forge-deforum
③sd-danbooru-tags-upsampler
https://github.com/p1atdev/sd-danbooru-tags-upsampler
④SDXLの出力エラーを修正する
https://github.com/hako-mikan/sd-webui-prevent-artifact
⑤Neutral prompt
https://github.com/ljleb/sd-webui-neutral-prompt
⑥Depthzeoのダウンロード(Deforum)
#zeodepthのダウンロード
!mkdir -p /tmp/stable-diffusion-webui-forge/models/Deforum && \
wget https://github.com/isl-org/ZoeDepth/releases/download/v1.0/ZoeD_M12_NK.pt -P /tmp/stable-diffusion-webui-forge/models/Deforum
ストレージの反映の変化について
上記手順を行った際のストレージの変化について共有しておきます。
①最初:何もインストールしていない状態
![](https://assets.st-note.com/img/1708923345359-5fcVsL2tgr.png?width=1200)
②モデルを入れて画像生成が出来る様になった状態
![](https://assets.st-note.com/img/1708924888739-4nP5rwkrem.png?width=1200)
IDEというのが少し増えているのが分かりますが、ストレージは増加していないことが分かります。
作成したプロジェクトを消すとIDEのストレージは0になります。
この記事が気に入ったらサポートをしてみませんか?