sd-scripts のインストール

sd-scriptsをインストールする手順を紹介します。

概要

「LoRA」により、独自の追加学習モデルを作成できます。LoRAのモデルを作成するスクリプトに "sd-scripts" があります。 この記事では、sd-scriptsのインストール手順を紹介します。

メモ
ライブラリのインストールで実行するコマンドは古いバージョンでのコマンドが記載されている可能性があります。 最新のコマンドはGitHubのドキュメントを参照してください。

sd-scriptsのダウンロード(zipファイルでの入手)

メモ
長期的に運用する場合は、アップデートが容易なGitコマンドで取得する方法がおすすめです。

GitHubのsd-scriptsのリポジトリのページ(https://github.com/kohya-ss/sd-scripts)にアクセスします。
右側の[Releases]の枠から最新のリリースの項目をクリックします。
sd-scripts のインストール:画像1

リリースのページが表示されます。
sd-scripts のインストール:画像2

ページを下にスクロールします。[Source code(zip)]のリンクがありますのでクリックします。
sd-scripts のインストール:画像3

ソースコードのzipファイルがダウンロードできました。
sd-scripts のインストール:画像4

ZIPファイルを展開します。
sd-scripts のインストール:画像5

sd-scriptsのダウンロード(Gitコマンドで取得)

コマンドプロンプトを起動し、カレントディレクトリをsd-scriptsを配置するディレクトリに変更します。
カレントディレクトリの変更後、以下のコマンドを実行します。

git clone https://github.com/kohya-ss/sd-scripts.git

Python仮想環境の作成

sd-scriptsを動作させるためのPython仮想環境を作成します。仮想環境を作成し、その中でsd-scriptを動作させるためのライブラリや環境変数を設定し、 他のPythonプログラムに影響が出ないようにします。

ヒント
コマンドの実行は、PowerShelではなくDOSコマンドプロンプトで実行します。(PowerShellでは仮想環境への切り替わりが確認しづらいため)、 PowerShellのコマンドプロンプトを開いている場合は、cmdコマンドを実行して、コマンドプロンプトをPowerShellから起動します。


展開したsd-scriptsのディレクトリにカレントディレクトリを移動し、次のコマンドを実行し"venv"という名前の仮想環境を作成します。

python -m venv venv

または

(python.exeのフルパス) -m venv venv

sd-scripts のインストール:画像6

コマンドを実行しても特に変化はありません。
sd-scripts のインストール:画像7

仮想環境へ切り替える

先ほど作成した仮想環境に切り替えます。
カレントディレクトリが、展開したsd-scriptsのディレクトリであることを確認し、次のコマンドを実行します。

.\venv\Scripts\activate.bat

sd-scripts のインストール:画像8


コマンドを実行するとプロンプトの先頭に (venv) の文字列が表示され、仮想環境に切り替わったことが確認できます。
sd-scripts のインストール:画像9

ライブラリのインストール

sd-scriptsに必要なライブラリをインストールします。次のコマンドを実行します。

pip install torch==2.1.2 torchvision==0.16.2 --index-url https://download.pytorch.org/whl/cu118

下図の画面イメージは旧バージョンのため、torchのバージョンが紹介しているコマンドと異なります。
sd-scripts のインストール:画像10

コマンドを実行するとインストールが始まります。
sd-scripts のインストール:画像11

インストールが完了しました。
sd-scripts のインストール:画像12

以下のコマンドを実行して、必要なライブラリをアップデートします。

pip install --upgrade -r requirements.txt

sd-scripts のインストール:画像13

sd-scripts のインストール:画像14
アップデートが完了しました。
sd-scripts のインストール:画像15

以下のコマンドを実行して、xformersライブラリをインストールします。

pip install xformers==0.0.23.post1 --index-url https://download.pytorch.org/whl/cu118

sd-scripts のインストール:画像16

sd-scripts のインストール:画像17
xformers ライブラリがインストールできました。
sd-scripts のインストール:画像18

次のコマンドを実行してファイルをコピーします。
既にファイルが存在していますが、元のファイルはLinux用のファイルのため、上書きします。

copy .\bitsandbytes_windows\*.dll .\venv\Lib\site-packages\bitsandbytes\
copy .\bitsandbytes_windows\cextension.py .\venv\Lib\site-packages\bitsandbytes\cextension.py
copy .\bitsandbytes_windows\main.py .\venv\Lib\site-packages\bitsandbytes\cuda_setup\main.py

sd-scripts のインストール:画像19



sd-scripts の初期設定

次のコマンドを実行して、sd-scriptsの初期設定を実行します。

.\venv\Scripts\accelerate.exe config

sd-scripts のインストール:画像20

設定プログラムが起動します。動作させるマシンの確認です。デフォルトの[This machine]を選択します。[Enter]キーを押します。
sd-scripts のインストール:画像21

分散処理の有り無しの確認です。デフォルトの[No distributing training]を選択します。[Enter]キーを押します。
sd-scripts のインストール:画像22

CPUだけを利用して処理を実行するかの確認です。このマシンにはGPUがありますので、[NO]を入力します。入力後[Enter]キーを押します。
sd-scripts のインストール:画像23

TorchDynamoを利用するかの確認です。TorchDynamoはPythonの実行をフックして実行状況から処理を最適化する機能です。 今回は利用しませんので、[NO]を入力します。入力後[Enter]キーを押します。
sd-scripts のインストール:画像24

DeepSpeed(ディープラーニング最適化ライブラリ)の利用確認です。利用しませんので、[NO]を入力します。入力後[Enter]キーを押します。

sd-scripts のインストール:画像25

このマシンのどのGPUを利用するかの確認です。GPUは1つしかありませんので、[all]を入力します。入力後[Enter]キーを押します。
sd-scripts のインストール:画像26

FP16, BF16 の利用確認です。 FP16は新しいGPU(GTX 1080 以降、Tesla P100 以降)でサポートされています。BF16は精度が上がりますが、ハードウェアをより選びます。(nVidia A100 GPU, Ampere, Ada Lovelace)
新しめのnVidia GPUが搭載されていれば、[1]を入力して、FP16を選択します。古いGPUの場合は、[NO]を選択します。
Ampere以降の最新のGPUで精度を上げて学習をしたい場合は、[2]を入力してBF16を選択します。

メモ
  • FP16 : 指数部5ビット, 仮数部 10ビット
  • BF16 : 指数部8ビット, 仮数部 7ビット

sd-scripts のインストール:画像27
sd-scripts のインストール:画像28

以上で設定完了です。default_config.yaml に設定内容が保存されます。
sd-scripts のインストール:画像29


以上でsd-scripts のインストールは完了です。

アップデートの手順

アップデートはリポジトリからpullした後に、パッケージも更新する必要があります。

初めにgitコマンドで最新のコードをリポジトリからプルします。

cd (sd-scripts)のインストールディレクトリ
("git" または "git.exe のフルパス") pull

続いて仮想環境に切り替え、パッケージを更新します。

venv\Scripts\Activate.bat
pip install --upgrade -r requirements.txt
AuthorPortraitAlt
著者
iPentecのメインプログラマー
C#, ASP.NET の開発がメイン、少し前まではDelphiを愛用
作成日: 2023-05-14
Copyright © 1995–2025 iPentec all rights reserverd.