【LoRa学習】Kohya’s GUI の インストール

2024年2月16日

広告

Kohya’s GUIとは

Kohya’s GUIは、PythonでGUIアプリケーションを作るために、プログラマーのKohyaさんが開発したライブラリです。既存のGUIツールキット(TkinterやPyQtなど)と比べて、Kohya’s GUIは、簡単に、美しく、高機能なGUIを作成できるというメリットがあります。Kohya’s GUIは、使いにくかったLORA学習プログラムを使いやすくまとめられています。
このブログでは、Kohya’s GUIのインストール方法や基本的な使い方、応用例などを紹介していきます。Kohya’s GUIに興味がある方は、ぜひご覧ください。

インストールの前準備

Windowsシステムに必要な依存関係をインストールするためには、以下の手順に従います。
不要な方は飛ばしてください。

  1. Python 3.10をインストールします。インストールプロセス中に、Pythonを「PATH」環境変数に追加するオプションを選択してください。
  2. Gitをインストールします。

セットアップ手順


プロジェクトを設定するには、以下の手順を実行します。

  1. 新しいフォルダを作成します、フォルダー名は半角英数字で入力
  2. 作つたフォルダ内に入り、アドレスバーにcmbと入力し、ターミナルを開く
  3. 次のコマンドを使用して、リポジトリを複製します。

git clone https://github.com/bmaltais/kohya_ss.git
  1. ディレクトリに移動します。
cd kohya_ss
  1. セットアップスクリプトを実行するには、次のコマンドを入力します。
.\setup.bat

設定の高速化手順では、通常はデフォルト値が提案されます。GPUのVRAMの量は影響しません(除非ハードウェアの要件が既知の場合)

インストールのオプション選択画面が標示されます。1番のinstall kohya_ss guiを選択します。
ここから 数分間止まった様になりますがダウロード中ですので気長に待ってください。

ダウンロードが終わり、installが始まります。 ここで PC環境を聞かれますので、答えて行きます。

問 1

どのコンピューティング環境で実行していますか?
矢印キーまたは数字キーを使用して選択肢を選択し、Enterキーで選択してください

このマシン
AWS (Amazon SageMaker)

This machine選択されていますので、enterキーを押して次の画面に進んでください。

※Amazon SageMakerは有料サービスです。

問 2

どのタイプのマシンを使用していますか?
矢印キーまたは数字キーを使用して選択肢を選択し、Enterキーで選択してください

  • No distributed training
    multi-CPU
    multi-XPU
    multi-GPU
    multi-NPU
    TPU

PCの構成でCPUが2個搭載されている、又は GPUが2個搭載している場合は multi‐××を選択します。 一般的にはNo distributed trainingを選択してください。

問 3

どんなマシンを使っていますか?
分散トレーニングなし
GPU/Apple Silicon/であっても、CPU のみでトレーニングを実行しますか / アセンド NPU デバイスが利用可能)?[はい/いいえ]:

GPUを使って実行するので、NOを選択。 そうすると、別の質問が表示されます。
”Do you wish to optimize your script with torch dynamo?[yes/NO]:”
”トーチダイナモでスクリプトを最適化したいですか?[はい/いいえ]?” これも NOを選択

Do you want to use DeepSpeed? [yes/NO]:
”DeepSpeed を使用しますか?[はい/いいえ]:” これも NOを選択

”What GPU(s) (by id) should be used for training on this machine as a comma-seperated list? [all]:
”このマシンでトレーニングに使用するGPU(IDで)は、コンマ区切りのリストとして指定する必要があります。すべてのGPUを使用する場合は、「all」と入力してください。”
GPUが2個表示されているPCの場合はもちろん allを選択、そうでない人もallで良いみたいです。たまにエラーが起きるとか説明されていますので、エラーの時は「0」を入力します。

問 4

FP16 と BF16 のどちらを使用しますか (混合精度)?
矢印キーまたは数字キーを使用して選択肢を選択し、Enterキーで選択してください

  • no
    fp16
    bf16
    fp8

bf16形式はGoogle人工知能研究グループであるGoogle Brainによって開発された、より機械学習での利用に適した比較的新しいフォーマットです。


RTX3000番以上をご使用の方は bf16を選んでください。

オプションのinstall

次に3番を選択して終了してください。

オプションの3番 バージョン0.41.1を選択する。

とりあえず、一旦終了 6番のQuitを押す。

RTX3000番以上のグラボ専用・設定

CUDNN 8.6をインストールします。
このオプションはNVIDIA 30X0/40X0 GPUを使っている方にとって、学習速度の向上に役立ちます。この手順に従えば、トレーニングのバッチサイズを増やして、トレーニングの速度を上げることができます。(4090 GPUでは約50%高速になります)


下の URLでサイトに飛び、here をクリック、ダウンロードファイルを解凍まで行ってください。

https://github.com/bmaltais/kohya_ss?tab=readme-ov-file#optional-cudnn-86

  • 解凍したファイルの名前が cudnn_windows である事を確認してkohya_ssフォルダ内に入れてください。
  • kohya_ssフォルダ内にsetup.bat が有りますので、実行してください。
  • (Optional) Install cudann files (avoid unless you really need it)を選択
  • Copied CUDNN 8.6 files to destination と表示されれば成功です。

エラー対応

エラー1

(ImportError: No bitsandbytes / bitsandbytesがインストールされていないようです.)
と、表示が出たら。オプションの(Optional) Force installation of bitsandbytes 0.41.1 for new optimizer options support)が対応していません。

バージョンUPが行われて、未対応の可能性があります。
下の小さな文字をコピーして、cmd で最新バージョンをクローンしてください。

python -m pip install bitsandbytes --prefer-binary --extra-index-url=https://jllllll.github.io/bitsandbytes-windows-webui

それでもだめなら下のサイトから動くバージョンを入手してください。

Release Wheels · jllllll/bitsandbytes-windows-webui · GitHub

コードの前にgit_clone_を追加して cmd コマンドプロントで実行してください。
入力例:git clone https://github.com/jllllll/bitsandbytes.git

エラー2

Error caught was: No module named 'triton’
「triton」という名前のモジュールがありません。

モジュールが見つからないことを示すエラーが発生した場合は、システムに Python 3.10 を再インストールしてみてください。
これはWindowsの問題であり、無視しても問題有りません。

アップグレード

新しいリリースが利用可能になった場合は、プロジェクトのルートディレクトリから次のコマンドを実行して、リポジトリをアップグレードできます。

kohya_ssのフォルダの中から cmd を立ち上げ、git pullと入力します。

git pull

セットアップ スクリプトを実行します。

.\setup.bat

起動方法

フォルダ内にkohya_ssフォルダがつくられています。
kohya_ssフォルダ→gui(Windowsバッチ ファイル)をダブルクリック→キーボードのCTRLを押しながらhttp://127.0.0.1:XXXXをクリックすると起動します。