🙄

paperspace LoRAモデル作成で詰まった部分

2023/09/22に公開

前提

https://note.com/aioe/n/n8479fe1b4bbd

今回はこの記事を参考に環境構築を行いました。
モデルを入れて、普通にjupyterファイルの実行を進めていきました。

エラーが出た部分

1-2.Install and Setting

エラー文

ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
gradient-utils 0.5.0 requires wheel<0.36.0,>=0.35.1, but you have wheel 0.41.2 which is incompatible.
scipy 1.9.2 requires numpy<1.26.0,>=1.18.5, but you have numpy 1.26.0 which is incompatible.
Successfully installed MarkupSafe-2.1.3 cmake-3.27.5 filelock-3.12.4 jinja2-3.1.2 lit-16.0.6 m

解決したコード

%store -r repo_dir activate_xformers

appDir = f'{repo_dir}/sd-scripts'
%cd {appDir}

!pip install --upgrade pip
!pip install --upgrade -r requirements.txt
!pip uninstall -y torch  torchvision torchaudio # Remove existing pytorch install.
!pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu113 # Install pytorch for cuda 11.3
!pip install wheel==0.35.1 #この部分を追加しました。

import os
if activate_xformers:
    print('Installing xformers...')
    import subprocess
    def download_release(url):
        binary = 'xformers-0.0.14.dev0-cp39-cp39-linux_x86_64.whl' # have to save the binary as a specific name that pip likes
        tmp_dir = subprocess.check_output(['mktemp', '-d']).decode('ascii').strip('\n')
        !wget "{url}" -O "{tmp_dir}/{binary}"
        return os.path.join(tmp_dir, binary)

    # Set up pip packages
    s = subprocess.getoutput('nvidia-smi')
    if 'A4000' in s:
        xformers_whl = download_release('https://github.com/Cyberes/xformers-compiled/releases/download/A4000-Oct-28-2022/a4000-xformers-0.0.14.dev0-cp39-cp39-linux_x86_64.whl')
    elif 'A5000' in s:
        xformers_whl = download_release('https://github.com/Cyberes/xformers-compiled/releases/download/A5000-Nov-1-2022/a5000-xformers-0.0.14.dev0-cp39-cp39-linux_x86_64.whl')
    elif 'A6000' in s:
        xformers_whl = download_release('https://github.com/Cyberes/xformers-compiled/releases/download/A6000-Nov-1-2022/a6000-xformers-0.0.14.dev0-cp39-cp39-linux_x86_64.whl')
    elif 'P5000' in s:
        xformers_whl = download_release('https://github.com/Cyberes/xformers-compiled/releases/download/P5000-Nov-1-2022/p5000-xformers-0.0.14.dev0-cp39-cp39-linux_x86_64.whl')
    elif 'RTX 4000' in s:
        xformers_whl = download_release('https://github.com/Cyberes/xformers-compiled/releases/download/RTX-4000-Nov-1-2022/rtx4000-xformers-0.0.14.dev0-cp39-cp39-linux_x86_64.whl')
    elif 'RTX 5000' in s:
        xformers_whl = download_release('https://github.com/Cyberes/xformers-compiled/releases/download/RTX-5000-Nov-1-2022/rtx5000-xformers-0.0.14.dev0-cp39-cp39-linux_x86_64.whl')
    elif 'A100' in s:
        xformers_whl = download_release('https://github.com/Cyberes/xformers-compiled/releases/download/A100-Nov-1-2022/a100-xformers-0.0.14.dev0-cp39-cp39-linux_x86_64.whl')
    elif 'M4000' in s:
        print('xformers for M4000 hasn\'t been built yet.')
        # xformers_whl = download_release('https://github.com/Cyberes/xformers-compiled/releases/download/A100-Nov-1-2022/a100-xformers-0.0.14.dev0-cp39-cp39-linux_x86_64.whl')
    else:
        print('GPU not matched to xformers binary so a one-size-fits-all binary was installed. If you have any issues, please build xformers using the Tools block below.')
        xformers_whl = download_release('https://raw.githubusercontent.com/Cyberes/xformers-compiled/main/various/xformers-0.0.14.dev0-cp37-cp37m-linux_x86_64.whl')
    !pip install --upgrade --no-deps --force-reinstall "{xformers_whl}"
    # この部分に--no-depsを追加しました。

!pip install --force-reinstall "{xformers_whl}"をすると、依存関係にあるファイルも上書きされてしまうためエラーが起こります。

念のために!pip install wheel==0.35.1 を行い、--no-depsを入れることで解決できました。

このように、上の方でバージョンを指定してpip installをしてあげると解決できました。
他にもいくつかあったので、同じようにバージョンチェックをして同じように手動でpip installしました。

$pip check

>pygobject 3.36.0 requires pycairo, which is not installed.
pytest 7.2.1 has requirement attrs>=19.2.0, but you have attrs 18.2.0.
scipy 1.9.2 has requirement numpy<1.26.0,>=1.18.5, but you have numpy 1.26.0.
Note: you may need to restart the kernel to use updated packages.

Paperspaceにまだ登録していない方へ

https://console.paperspace.com/signup?R=ZS1N2LM
このリンクからPaperspaceを登録したら、10ドルのクレジットが貰えます。

画像生成のおすすめ本

【2023最新】1000種類以上のプロンプト収録! NovelAIでもローカルでも使える呪文集: 小ネタ・テクニック・おすすめツールも紹介 (AI絵師の入門書) Kindle版

https://amzn.to/3YVp90y

AIとコラボして神絵師になる 論文から読み解くStable Diffusion
https://amzn.to/41aLQ30

さきがけ技術 AUTOMATIC1111 / Stable Diffusion web UI の使い方
https://amzn.to/3Kcjboe

Discussion