【初心者向け】自作LoRAの作り方|Kohya_ssで学習する方法|Anaconda + CUDA【Windows】

LoRA学習環境構築 Anaconda+CUDA Kohya_ssをローカル導入する方法

ローカル環境構築から学習までを解説

この記事では、LoRAをKohya_ssで学習する為の環境構築から、学習までの手順を解説しています。

LoRAの使用方法や設定に関しては、以下のリンク記事で書いています。

クラウドGPUで”LoRAをKohya_ssで学習する方法”についてはこちらの記事をご覧ください

近年、イラストや写真などのスタイルをAIに学習させる「LoRA(Low-Rank Adaptation)」が注目を集めています。
中でも、人気の学習ツール「Kohya_ss」は、最低限のコマンド操作と、細かな設定が可能なWebUI(ブラウザ型GUI)で、多くの生成AIユーザーに支持されています。

この記事では、初心者の方でも安心してLoRA学習を始められるように、Kohya_ssをWindowsローカル環境(自身のPC)に導入する手順を1つずつ丁寧に解説しています。Anacondaのセットアップから、CUDA・PyTorchの対応バージョン確認方法まで網羅しているので、この記事を参考にすれば自分のPCでもLoRA学習ができるようになります!

目次

Anaconda+CUDAでKohya_ssをローカル導入する方法

前提条件

*使用するPyTorchバージョンに対応するCUDAバージョンを調べる方法
PyTorchは、バージョンごとに対応するCUDAのバージョンが決まっています。
PyTorch公式ページにアクセスしますhttps://pytorch.org/get-started/locally/

CUDAバージョン

使用する条件の選択
PyTorchビルド(例:2.1.0)➡通常は安定版を選びます。
あなたのOS ➡(例:Windows)
パッケージ ➡(通常は「Pip」または「Conda」)
言語➡(Python)
CUDAバージョン(ここに対応するCUDAが表示されます)
選択に応じて、下にインストール用コマンドと一緒に、推奨されるCUDAのバージョンが表示されます。

ポイント
PyTorchとCUDAのバージョンが合っていないと、エラーになることがあります。
CUDA 11.8 を使いたい場合は、PyTorch 2.1 までが対応しています。
最新のPyTorch(2.2以降)では、CUDA 12.x系が主流になっています。

*NVIDIA AppでStudioドライバの確認
NVIDIA App(旧:GeForce Experience)を開く
左メニューまたは上部の「Drivers」タブを選択
「Studio Driver」になっているか確認(必要に応じて切り替え可能)
無い場合は、ダウンロードしておきますNVIDIA公式サイト内/ドライバ:ダウンロードページ

Kohya_ssは依存関係が多いツール

Kohya_ss(LoRA学習GUI)は以下のような依存ライブラリが複雑に絡んでいます

  • PyTorch(バージョンやCUDAとの整合性がシビア)
  • xformers(PyTorchのバージョンに敏感)
  • bitsandbytes(GPU構成によって挙動が変わる)
  • Hugging Face Transformers / diffusers
  • TensorBoard、WandB などのオプションツール

これらをpip + venvだけで揃えるのは、かなり経験者向けの作業です。
一方、Anacondaならこうした依存関係のバージョン調整が比較的簡単になります。

Kohya_ssのように「PyTorch + CUDA + 特殊ライブラリ」が絡む環境では、Anacondaで仮想環境を切っておくのが一番安全です。

比較項目venv(Python標準)Anaconda(またはMiniconda)
環境構築の簡単さ自分でPython・CUDA・PyTorchのバージョン整合をとる必要ありcondaが自動で依存関係を解決
パッケージの管理基本はpip頼り。複雑な依存関係で詰まりやすいconda + pip両方使えて柔軟&強力
CUDAの扱いCUDA Toolkitを手動インストールしてパス設定が必要PyTorch+CUDAをconda install pytorchだけで完結できることが多い
初心者への安心感エラー時の自己解決力が必要失敗しにくい構成。エラーも少ない
仮想環境の切り替えsource venv/bin/activate などconda activate 環境名 で統一

この項のまとめです。(以下の項目をチェックしてOKでしたら、次の項目へ進んで下さい。)

GPUのCompute Capabilityを確認NVIDIA公式サイトで自身のGPUのCCを調べる。
CUDAバージョンの選定:使用するPyTorchバージョンが対応するCUDAバージョンを選ぶ。
ドライバの更新:CUDAバージョンに対応するNVIDIAドライバをインストールする。
目的:仮想環境の活用:Anacondaやvenvを使用して、異なる環境を簡単に切り替えられるようにする。

AnacondaでLoRA学習環境を作る

Anacondaのインストール

anacondaのインストール①

任意のアカウントでログインします。

anacondaのインストール②

Anacondaの公式ダウンロードページから、お使いのOSに対応したインストーラーをダウンロードできます。

anacondaのインストール③

① Anacondaの準備

インストール手順(Windowsの場合)

  1. ダウンロードしたインストーラー(例: Anaconda3-2024.10-1-Windows-x86_64.exe)をダブルクリックして実行します。
anacondaのインストール④

2. インストーラーが起動したら、「Next」をクリックします。
3. ライセンス契約画面で「I Agree」を選択します。
4. インストールタイプの選択では、「Just Me(推奨)」を選び、「Next」をクリックします。
5. インストール先フォルダを確認し、必要に応じて変更後、「Next」をクリックします。
6. 追加タスクの選択では、特に変更がなければそのまま「Install」をクリックします。
7. インストールが完了したら、「Next」をクリックし、最後に「Finish」をクリックしてインストールを終了します。

インストール後、スタートメニューから「Anaconda Prompt」や「Anaconda Navigator」を起動できます。

※Anaconda Navigator(GUI)からアップデートを求められた場合は、基本的にはそのまま「更新」してOKです。ただし、すでに構築済みの仮想環境内でパッケージを更新する場合は、conda updatepipのバージョン管理に注意が必要です。

インストール確認

Anaconda Promptを開き、以下のコマンドを入力してPythonのバージョンを確認します。
Anaconda Promptは、WindowsでAnacondaをインストールした後、以下の手順で起動できます。

  1. スタートメニューを開く
  2. 「Anaconda Prompt」と検索
  3. アイコンをクリックして起動

※黒いウィンドウが開き、(base) と表示されていれば、Anacondaの「base」環境が有効になっています。
もしくは、Windowsターミナルを開き、
タブから””下矢印をクリックで、Anaconda Promptを選択(Anacondaインストール後に追加されます。)

Windows のターミナルの起動方法…

Windows Terminal起動方法

  1. スタートメニューで、左クリック➡ターミナル もしくは、「Windows Terminal」と検索して起動

※ デフォルトでは PowerShell または WindowsPowerShell)が開きます
画像生成用途の場合は、コマンドプロンプト(CMD)と相性が良いです。
pip install や conda などのモダン開発向けコマンドは、PowerShellと相性が良いです。

(※コマンドプロンプト(cmd)をWindows Terminal から開く為の設定方法はこちらの記事をご覧ください。

Windows Terminalは、タブを切り替えて複数のシェルを使う事が出来ます

  • 上部の ボタンから新しいタブを開けます

※Microsoft 公式も「Windows Terminal」を推奨

Mac のターミナルの起動方法…

ターミナル起動方法

  1. **「Command ⌘ + Space」を押して、「Spotlight検索」**を開く
  2. 検索バーに「ターミナル」と入力してEnter

または、以下の手順でも開けます:

アプリケーションユーティリティターミナル

Linux のターミナルの起動方法…

Linuxターミナル起動方法

  • 1,:Ctrl + Alt + T を同時に押す(多くのLinuxディストリビューションで共通)
  • 2,:アプリケーション一覧から「ターミナル」または「Terminal」で検索して開く

Ubuntu、Fedora、Debianなど、ほとんどのLinux環境に標準で搭載されています。

PowerShell の起動方法…(Windows)

PowerShell(パワーシェル)**は、Windowsに標準搭載されている、より高度な操作ができるコマンドラインツールです。見た目はコマンドプロンプトと似ていますが、より多機能で、プログラミング的な処理も得意です。

PowerShell起動方法

1,スタートメニューで「PowerShell」と検索してクリック

※ コマンドプロンプト(cmd)の起動方法…(Windows)

Windowsキー + Rを押す

cmd」と入力してEnterを押す
または、スタートメニューで「コマンドプロンプト」と検索してもOK!

コマンドプロンプト(cmd)は、Windowsのターミナルからも開く事が出来ます
(※コマンドプロンプト(cmd)をWindows Terminal から開く為の設定方法はこちらの記事をご覧ください。

アナコンダプロンプト
python --version

また、Anaconda Navigatorを起動して、GUI上で環境やパッケージの管理ができることを確認してください。

Anaconda Prompt を開いて以下を実行(仮想環境を有効化

conda create -n kohya python=3.10 -y
conda activate kohya

※このコマンドを実行する事で、kohya_ss 内で仮想環境を使った作業ができる状態になります。

② Git & GitHub からKohya_ssを取得

Gitがインストールされていることを確認
git --version でバージョンが表示されればOK
※インストールされていなければ、公式サイトから入手してください。

Anaconda Prompt または コマンドプロンプトを開く

以下のコマンドでクローンします

git clone https://github.com/bmaltais/kohya_ss.git

kohya_ss フォルダに移動

cd kohya_ss

cdkohya_ssフォルダのパス。
※たとえば、kohya_ssという名前のフォルダが C:\Users\あなたの名前\Documents\ にあるとします。
その場合、Anaconda Promptで以下のように入力して移動します。

cd C:\Users\あなたの名前\Documents\kohya_ss

※クローン先のディレクトリに注意(cdmkdir を使って管理)
仮想環境を使う場合は、先に Anaconda Prompt で仮想環境を有効化しておく

状況の確認

(base) C:\Users\あなたの名前>cd C:\Users\あなたの名前\kohya_ss

(base) C:\Users\あなたの名前\kohya_ss>

このように表示されていれば、今あなたは C:\Users\あなたの名前\kohya_ss フォルダの中にいます。

③ 依存ライブラリのインストール

pip install -r requirements.txt を実行

pip install -r requirements.txt

CUDA 11.8 に対応した PyTorch 2.1.0 と torchvision 0.16.0 のインストール
は、以下のコマンドを実行してください

pip install torch==2.1.0 torchvision==0.16.0 --extra-index-url https://download.pytorch.org/whl/cu118

CUDA 11.8 に対応した PyTorch 2.2.0 と torchvision 0.16.0 のインストール(バージョンは2.2.0の場合)
は、以下のコマンドを実行してください

pip install torch==2.2.0+cu118 torchvision==0.16.0+cu118 --extra-index-url https://download.pytorch.org/whl/cu118

CUDAPyTorch torchvisionのそれぞれのバージョンを指定してください。

④ CUDAとPyTorchの対応確認(重要)

インストールが完了したら、以下の Python コマンドで動作確認できます。

Pythonコードを実行する正しい方法

  1. Pythonインタプリタを起動する
python

と入力してEnterすると、Pythonの対話モード(>>>)になります。

  1. そこでPythonコードを入力してください
import torch
print("PyTorchバージョン:", torch.__version__)
print("CUDAが使えるか:", torch.cuda.is_available())
print("使用中のCUDAバージョン:", torch.version.cuda)
  1. 確認が終わったら、exit() または Ctrl+Z(Windows)でPythonを終了できます。

True が返ってきたらOK。

GUIの起動(ローカルブラウザで操作:Anaconda Prompt

※GUIで作業をする際には、以下のコマンドを実行してGUIを開きます。

KohyaGUI

仮想環境のアクティベート(必要に応じて)

conda activate kohya  # すでに実行済みならスキップ

Kohya_ssのフォルダへ移動

cd C:\Users\Owner\kohya_ss

Users Ownerこの箇所は、ご自身のフォルダ名に置き換えて下さい。

Web UI 起動スクリプトの実行

Kohya_ss は kohya_gui.py というスクリプトでGUIを起動できます。

python kohya_gui.py

※GUIが自動でブラウザに表示されない場合は、以下のようなURLが表示されることがあります

Kohya①
Running on local URL:  http://127.0.0.1:7860

※このURLをctrlを押しながら開くか、コピーしてブラウザに貼り付けてhttp://127.0.0.1:7860 を開きます。

よくあるエラー・確認ポイント

症状対処
ModuleNotFoundErrorrequirements.txt の再インストールが必要な場合があります。
起動後真っ白で何も表示されないブラウザのキャッシュをクリア、または別ブラウザで試す
エラーメッセージが大量に表示される一度ターミナルを閉じて、仮想環境を再アクティベートしてから再実行

kohya_gui.py が見当たらない場合
GitHubからの取得が完全でなかった可能性があります。その場合は以下のコマンドで再取得出来ます。

git clone https://github.com/bmaltais/kohya_ss.git

その後、もう一度、移動&仮想環境アクティベート&起動。
GUIの起動(ローカルブラウザで操作:Anaconda Prompt)

⑥ 画像とcaption(.txt)ファイルについて

LoRA学習をする為の、画像とcaption(.txt)ファイルの用意がまだの方は、下の記事をご覧ください。

  • dataset 又は、Trainingフォルダ内に、にトレーニング用画像フォルダを作成し、画像と同名の .txt ファイルを配置します。
    (※トレーニング用画像フォルダの名前は、半角英数字を使用します。)
dataset/トレーニング用画像フォルダ名
        ├── image_001.png
        ├── image_001.txt ←プロンプトなどを記述

※ここで大切な事は、dataset 又は、Trainingなどという、親フォルダの下にトレーニング用画像フォルダを作成し、画像と同名の .txt ファイルしておくという事です。

おすすめのフォルダ構成

C:\Users\Owner\kohya_ss\
        ├── kohya_data\      ← データ系(学習素材)
        │   ├── 10_train\
        │   │   ├── img\
        │   │   ├── txt\
        │   │   └── reg\
        │
        ├── outputs\       ← 出力ファイル(学習済LoRAなど)
        │   ├── 12_loracat\
        │   └── 10_train\
        │
        ├── configs\       ← 設定ファイルの保存場所(任意)
        │
        ├── venv\        ← 仮想環境(Anacondaなしで動かす場合)
        ├── GUI起動用のbatファイルやスクリプト
        └── READMEなど

※Kohya_ssでトレーニングに使用する画像とテキストは、まとめて一つのフォルダに入れておく必要があります。

この上の例においては、10_trainのフォルダに、画像とテキストタグを入れており、トレーニングの際には、そのフォルダの親フォルダを指定する必要がある為、kohya_dataというフォルダを、トレーニングフォルダに指定してトレーニングします。
ここでのポイントは、10_trainのフォルダ名についてです。これは、

トレーニング回数(エポック数)とアンダーバーと任意のフォルダ名で構成します。

上記のような構成で、すべてKohyaフォルダ以下に収めるのがベストです。

ステップ数・エポック数計算フォーム

ステップ数・エポック数 計算ツール

ステップ数を求める




エポック数を求める




LoRA学習

LoRAの使用方法、設定項目に関する詳細は、こちらの記事内にまとめました。

WebUI(ブラウザ画面)の閉じ方

Kohya_ssでWebUIを使用してローカル学習を行っている場合、作業をいったん終了する際には、ターミナル側とWebUI側の両方で適切に閉じることが重要です。以下にそれぞれの正しい閉じ方を説明します。

WebUIは、Kohya_ssのGUI(ブラウザ)であり、直接的には学習プロセスを制御していません。ただの表示窓のようなものです。

  • ブラウザのタブまたはウィンドウを閉じるだけでOKです。
    • ChromeやEdgeなどで開いているKohyaのWebUIタブを普通に閉じてください。
    • 学習ジョブが実行中でも、ターミナル側で動いていれば裏で進行します。

ターミナル(コマンドプロンプト / Anaconda Promptなど)の正しい閉じ方

ターミナルはKohya_ssのWebUI(gui.py)を起動している実行プロセスです。

閉じるタイミング

学習をまだ開始していない/完了済みの場合

  1. ターミナルにフォーカスして、
  2. Ctrl + C を押す(2回必要な場合あり)
    • Shutdown this Flask server (y/n)? と出る場合は、y を入力してEnter。
  3. コマンドプロンプトがプロンプト(例:(base) C:\Users\yourname>)に戻ったら、ターミナルを閉じてOK。

学習中に終了したい場合

  1. 学習ジョブが進行中に Ctrl + C を押すと、途中で学習が止まります。
    • ログ出力が止まり、「KeyboardInterrupt」と表示されます。
    • チェックポイント(途中保存)されていない場合は、データが失われる可能性があるので注意。

「定期保存(save_every_n_stepsなど)を有効にしておく」と、学習途中でもモデルが保存されます。

トラブル・エラー

エラー時の基本チェックポイント

  1. Training images
    images + .txt が同じフォルダに入っている → OK
    → フォルダ名 output/art_part1 → OK(英数字とスラッシュのみで問題なし)
  2. Dataset preparation
    • 「Dreambooth/LoRA Folder Preparation」または「Dataset Balancing」のどちらかのみを使用する。
    • 通常のLoRA学習では「Folder Preparation」で十分。「Dataset Balancing」はデータに偏りがあるとき用。
  3. 出力先指定(Save trained model as)
    → 設定済みであればOK。空白だと保存されないことがあります。
  4. ログ出力確認
    • /kohya_ss/outputs/.toml.json が出力される場合、「ボタンは動作しているが学習開始に失敗している」可能性が高い。
    • エラーが出ないのはPython側でエラーを握り潰している場合あり。
  5. 学習設定の最小限構成でテスト
    • epoch数を1、ステップ数を10程度にして動作確認用にしてみてください(負荷をかけず起動の可否だけチェック)
  • Startの前に、GUIの 「Trainタブ」→ 全項目の必須入力欄 は埋まっていますか?
  • 特に以下のような項目が必要です。
    • Base model path
    • Output name
    • Output directory
    • Image folder
    • Captionファイル形式(BLIP/DeepBooruなど) or .txt
    • Save trained model as(safetensors)
    • Epochbatch size など
トラブル例対処法
フォルダ指定でクラッシュする「📁マーク」からクリックで選択(ドラッグや手入力は避ける)
選択後に内容が更新されない一度タブを切り替えるか、ページをリロード(F5)
エラーでフォームが固まるGUIページを閉じて、再読み込み(または再起動)
GUIが応答しないAnacondaで一度Ctrl+Cしてサーバーを再起動(重要)

GUIが壊れてしまった場合

  1. kohya_ss フォルダにある ui-config.json を削除
  2. Anaconda Prompt で再起動
cd C:\Users\Owner\kohya_ss
python kohya_gui.py

.toml」「.json」「.txt のみが出力される!

.toml」「.json」「.txt のみが出力された」という場合
KohyaのLoRA学習を実行したあと、モデルファイル(例:.safetensors)が出力されなかったという意味です。
これはいくつかの原因が考えられます。以下を順番にチェックしてみてください。

学習エポック数(epoch)が 0 や 1 になっていないか?

  • Epoch の数が極端に少ないと、学習がほぼ行われず、モデル出力がスキップされることがあります。
  • 2〜4以上にして再試行してみてください。

output_name の指定がない or 無効な名前になっていないか?

  • 出力ファイル名が output_name.safetensors として作成されるため、ここが空欄だと出力されない場合があります。
  • 例:lora_dog などの名前を必ず入れておく。

出力フォルダが output_dir で指定されている場所に .safetensors が出ているか?

  • .toml.json は設定保存ファイルです。学習結果(モデル)は .safetensors で出力されます。
  • 例: /workspace/outputs/lora_dog.safetensors などに出力されているか確認。

Save every N steps などの中間保存が有効かどうか?

  • 学習途中で保存する設定(save_every_n_stepsなど)がないと、学習途中で停止した場合に何も出力されないことも。

コマンド実行時にエラーが出ていたかも?

  • 実行ログ(WebUI上部 or Terminal)を確認し、途中で CUDA out of memory などのエラーが出ていなかったかチェック。

Start training を押しても無反応な場合

Kohya GUIでは、以下のような必須項目が空白だと、裏側でコマンドが生成されず、Start training を押しても無反応になります。

確認すべき項目(特にLoRAの場合)
Image folder(学習用画像のフォルダ)
Output namePretrained model(ベースのモデルファイル)
Output directoryEpoch(エポック数)や Batch size(バッチサイズ)
どこか赤く縁取りされている項目がないかチェックしてください。

ファイルパスの指定ミス
Pretrained model や Image folder のパスが 存在しないか間違っている と動作しません。
Browse ボタンでGUI経由で選択するのがおすすめ。
ターミナルや htop コマンドで裏側のプロセスが動いているかも確認できます。

CLI Preview(またはログ)にエラーが出ていないか?
Start training 実行後に下部にエラー表示がある場合、それが原因です。
「CLI Preview」ボタンがある場合は、出力されるコマンドを先にチェック。

CLI(コマンドライン)での実行も可

GUIでのトラブルがあまりに多い場合、以下のようにCLI(コマンドライン)でLoRA学習を実行する方法もあります

python train_network.py --config_file="your_config.json"

GUIは設定の確認用、CLIは確実に回す用、と使い分けている人も多い。


AUTOMATIC1111との連携

Kohya_ssで作成したLoRAファイルは、AUTOMATIC1111で、使用できます。

  • LoRAファイルは stable-diffusion-webui/models/Lora/ に配置
  • WebUIで LoRA名を "<lora:modelname:weight>" として使えます。

このフォルダに入っている .safetensors.pt ファイルが、A1111のWebUIで自動的に読み込まれ、モデル選択UIやプロンプト補完で使用可能になるためです。
作成した、.safetensors.ptファイルの使用方法の詳細は、下のリンク記事をご覧下さい。

Stable Diffusio(AUTOMATIC1111)のインストール方法については、こちらの記事をご覧ください。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次