Kohya's GUI版LoRA学習①:環境構築
※この記事は2023/09/08に内容を確認し、修正作業を行いました。
LoRA の説明と導入は 以前の記事 の通りです。
どうせ長くなるので前置きは無しでいきましょう。
枝葉もつけるとわけがわからなくなるので、極力シンプルな説明で参りますね。
・はじめに
今回は Windows版 での LoRA学習の王道環境の構築 の手順を説明していきます。
今回の方法は、A1111-sd-webui とは別に環境作る方法 となります。
拡張機能としてインストールするものもあるのですが、もろもろ考えるとやはり環境を分けておいた方が融通が利くという結論に達しました。
その分、うちの記事で手トリ足トリ説明を残しておこうと思う次第です。
さて、現状の LoRA学習 の王道と言えば 日本人のKohya S.さんが提供してくださっている Kohya版LoRA が主流と言えるかと思います。
Kohyaさんの公式のリポジトリ
ただ、こちらは導入も運用もコマンドプロンプトで行っていく仕組みとなっているため、素人の我々には少々敷居の高いものとなっています。
正直、この日本語 Readme も、日本語で書かれているにもかかわらず全く内容が頭に入ってきません。 目が滑る滑る!!!
ですので、今回はこちらの Kohya版LoRA学習を、素人でも扱いやすい WebUIバージョン にしてくれる
bmaltais式 WebUI 『Kohya's GUI』で導入します。
bmaltaisさんの公式のリポジトリ
・必要環境を用意する
最低限必要な環境は以下の3つです。
Python 3.10 と Git は、sd-webuiを入れていたら問題無いと思いますが、一応リンクだけ貼っておきます。
1⃣ : Python 3.10.6
2⃣ : Git
3⃣ : Visual Studio 2015、2017、2019、2022 の再頒布可能パッケージ
https://aka.ms/vs/17/release/vc_redist.x64.exe
インストールしようとしてこのウィンドウが出る場合は、既にインストールできていることになります。
そっ閉じして大丈夫です。
一応、WebUIを使っている方であれば、どれも他の要件で既にインストールを済ませている人が多いと思います。
問題ないようでしたら次に進みましょう。
・Windows Powershellの設定
まず先に、[powershell]への無制限のスクリプトアクセスを許可をする必要があります。
Windows11の場合、画像のように、ウィンドウズボタンを押して、上部の検索窓に「powershell」とを打ち込み、「管理者として実行」をクリックしましょう。
ユーザーアカウント制御の画面を経て、無事に PowerShell を 管理者として実行 で開けましたら、
Set-ExecutionPolicy Unrestricted
をコピペしてエンター。
すると、「実行ポリシーを変更するんだな!?今…!ここで!」と聞かれますので
y
と答えてください。
以上で完了です。
・bmaltais式 WebUI 『Kohya's GUI』をDL
では本題のbmaltais式 WebUI 『Kohya's GUI』をダウンロードしていきます。
ダウンロードしたいフォルダを決めてください。
デスクトップや、日本語の使われているフォルダなどは避けてください、エラーの原因になりかねません。
今回は Dドライブ内にKohyaSS_GUIというフォルダを作り、さらにその中に20230908という日付フォルダを作成しました。
今回はここに環境を作成していきます。
インストールしたいフォルダを開いたら、shift + 右クリック してください。
開いたウインドウの中に、「 PowerShell ウィンドウをここで開く(s) 」 がありますので、これをクリックして PowerShell を開きます。
今回はD:\KohyaSS_GUI\20230908下なので、このような画面で開きます。
ここで
git clone https://github.com/bmaltais/kohya_ss.git
をコピペしてエンター。
なーんやかんやありまして、kohya_ss をダウンロード(クローン)することができました。
まだ画面は閉じないでください。
先ほど指定したフォルダを見てみると、ちゃんと kohya_ss フォルダができていますね。やったぜ。
では、PowerShell のウィンドウに戻りまして。 続けて
cd kohya_ss
と打ち込みます。
すると、PowerShell の実行場所が kohya_ss の中に移動します。
では、セットアップのコマンドを入れましょう。
.\setup.bat
すると、Windows Powershellの画面が一瞬真っ黒になったあと、以下のような設問が出てきます。
この順番にやっていきますので、目次ジャンプのために区切りを入れさせてください。
1. Install kohya_ss gui
まず、1を入力してEnter。
仮想環境(venv)内にPytorchを導入します。
次に、2を入力してEnter。
Torch 2 を選択します。
暫くこのまま固まっているように見えますが、実はここのインストールはかなり長いです。
次の画像のようになるまで気長に待ってください。
次の設問が出ています。
私の場合は2が最初から入力されていましたが、皆さんの環境だとどうなんでしょう?
2.(Optional) Install cudann files (avoid unless you really need it)
2に関しては、NVIDIA 30X0/40X0のGPUを使用している方向けの高速化オプションです。
それ以外の方はスキップして3に向かってもらって構いません。
こちらの CUDANN をインストールするには、別途ファイルをダウンロードして設置しておく必要があります。
設置していない場合は「見つからないです~」みたいなエラーコードが出ます。
必要なファイルはこちらでダウンロードできます。
ダウンロードしたzipファイルを解凍し、cudnn_windowsフォルダをまるごと\kohya_ss内にドラッグ&ドロップしましょう
では、Windows Powershell の先ほどの設問で2を選択します。
正しい場所に配置ができていれば、Copied CUDNN 8.6 files to destination のような文言が出て成功します。
3.(Optional) Install specific bitsandbytes versions
これを選択すると、これは bitsandbytes というビット操作やバイト操作を簡素化するモジュールの Ver を選択するように言われます。
1の0.35.0は以前までのVerですが、SDXL用のオプション「--full_bf16」に対応していないそうです。
SDXLでのLoRAを作成するかもしれない方は、2か3あたりを選びましょう。
私は3にしました。
4.(Optional) Manually configure accelerate
いつもの、です。
この項目に関しては記事リニューアル前からあった内容ですね。
4でEnterを押してからしばらく時間がかかりましたが、いくつか設問が出てくるので、以下のように回答します。
This machine
No distributed training
NO
NO
NO
all
fp16
6番目までは、Enterをそのまま押したり、no とか all とか打ち込んでEnterすれば良いのですが、7番目だけちょっと特殊です。
ここでは fp16 を選択したいのですが、矢印キーを使えません。
キーボード左上の方にある「1」キーを押すことで選択できます。
これで設定が終わり、最後にブラウザで Kohya_ss GUI を起動することができるようになります。
5.(Optional) Start Kohya_ss GUI in browser
これでようやく、Kohya_ss GUI が使えるようになりました。
その使い勝手は A1111-StableDifusion-WebUI にとてもよく似ています。
そのため、まずA1111-StableDifusion-WebUI の batは終了しておいてください。
ブラウザで同じURLを使って開くことになるためです。
Windows Powershell の画面で5を選んでEnterすると、今度はコマンドプロンプトが開いて以下のような感じになります。
その後、ブラウザで Kohya_ss GUI が開けば成功です。
もう、Windows Powershell は閉じて構いません。
kohya_ss フォルダ内にある gui.bat が起動ファイルです。
今後はこちらを使えばいきなり Kohya_ss GUI の起動から使えるようになりますので、わかりやすいところにショートカットを作っておくと良いでしょう。
お疲れさまでした、今回の記事は ①環境構築編 ですので、ここで終わりとなります。
次回は ②学習準備編 として、学習素材の準備の仕方や、フォルダ構成の構築などを中心にお届けしたいと思います。
また、LoRA学習に関する記事はメイキングも含む可能性が高いため、メンバーシップ向けのままになるかと思いますので、ご了承お願いします。
それでは、はかな鳥でした。
また次回お会いしましょう。