Kohya's GUI提供了一个Gradio GUI,能让使用者操作简单好懂的Web 介面去训练适用于Stable Diffusion 的AI 绘图模型。不管您是要做DreamBooth 还是LoRA 都可以用它来进行训练!特别是LoRA 近期特别热门,主要是它可以在低VRAM(大概7G 以上)的显卡上进行训练,且只要约十几张的训练影像就能产生效果很好的LoRA 模型,LoRA 还有模型档案小的特点,不像DreamBooth 动不动就数GB。这篇图文仅教学Kohya's GUI 的安装。依照开发者叙述,您需要先安装好Python 3.10.6+和Git,另外还要安装Visual Studio 2015, 2017, 2019, 2022 redistributable。
⚠️注意,稍后选择安装位置请留意剩余空间,至少需要约10 GB 可用空间,站长实测全新安装此应用软件后约消耗6.7 GB 的硬盘空间。
▲ Kohya's GUI 在GitHub 上的储存库,一切资源跟安装方式都在这边写得清清楚楚,不过跟着站长做就能节省很多您的时间啦!
▲ 首先先搜寻「powershell」并用系统管理员身分执行它,接着输入 Set-ExecutionPolicy Unrestricted 指令并回答A。
▲ 接着打开终端(CMD),将路径先指定好(要安装的地方,如:D 盘),接着下 指令下载整个软件,再用 进入软件包目录中,再来直接复制以下完整指令并全部执行:
- git clone https://github.com/bmaltais/kohya_ss.gitcd kohya_ss
复制代码 请下载整个软件包,然后使用
命令进入软件包目录,最后直接复制以下完整命令并全部执行:
- python -m venv venv
- .\venv\Scripts\activate
- pip install torch==1.12.1+cu116 torchvision==0.13.1+cu116 --extra-index-url https://download.pytorch.org/whl/cu116
- pip install --use-pep517 --upgrade -r requirements.txt
- pip install -U -I --no-deps https://github.com/C43H66N12O12S2/stable-diffusion-webui/releases/download/f/xformers-0.0.14.dev0-cp310-cp310-win_amd64.whl
复制代码
这里需要下载一些东西,可能需要稍等一下。然后,分别输入以下指令,每个指令占一行:
- 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
复制代码
接下来输入 "accelerate config" 命令开始进行加速器设置,回答如图中红线所示的方式即可,最后相关设置将保存为一个名为 "default_config.yaml" 的配置文件。
终端输出内容完整版:
(venv) D:\kohya_ss>accelerate config
----------------------------------------------------------------------------------In which compute environment are you running?
This machine
----------------------------------------------------------------------------------Which type of machine are you using?
No distributed training
Do you want to run your training on CPU only (even if a GPU is available)? [yes/NO]:NO
Do you wish to optimize your script with torch dynamo?[yes/NO]:NO
Do you want to use DeepSpeed? [yes/NO]: NO
What GPU(s) (by id) should be used for training on this machine as a comma-seperated list? [all]:all
----------------------------------------------------------------------------------Do you wish to use FP16 or BF16 (mixed precision)?
fp16
accelerate configuration saved at C:\Users\user/.cache\huggingface\accelerate\default_config.yaml
▲ 进入软件包的根目录,我这里是 D:\kohya_ss,upgrade.ps1 文件用于更新软件,需要使用 PowerShell 执行。
▲ 在软件的根目录中,双击 gui.bat 可以启动 Kohya's GUI,启动速度非常快!使用 Ctrl + 点击网址(默认为 http://127.0.0.1:7861),可以在浏览器中打开操作界面。
▲ 这就是 Kohya's GUI 的操作界面了!这样就完成了 Kohya's GUI 的安装! Kohya's GUI 的好处是将训练模型的工作交给独立的软件来运作,不再与 Stable Diffusion web UI 一同运行。毕竟,Stable Diffusion web UI 经常更新,容易引起相关扩展错误等问题,非常麻烦。
Linux和MacOS
打开终端,先建个文件夹,然后一步步来: - git clone https://github.com/bmaltais/kohya_ss.git
- cd kohya_ss
复制代码
运行 setup.sh
# 如果您在一个安全性更高的机器上,则可能需要运行chmod +x ./setup.sh # 如果需要在runpod环境中进行其他选项,则有附加选项。 # 调用 'setup.sh -h' 或 'setup.sh --help' 以获取更多信息。
我直接sudo了。
这里 切换到虚拟 Python 环境。 在 Python 操作之前检查 pip 更新。 安装 Python 依赖项。这可能需要一些时间来下载文件。 如果此操作运行时间过长,他让你可以以详细模式重新运行此脚本进行检查。
可能会出现错误:WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ProtocolError('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))': /simple/keras-preproc>
因为是国内的机器,需要挂个梯子在机器上。
这里是关于setup.sh的帮助文件:
- Kohya_SS POSIX 操作系统安装脚本。
- 以下选项适用于 runpod 环境,并不影响本地机器安装。
- 用法:
- setup.sh -b dev -d /workspace/kohya_ss -g https://mycustom.repo.tld/custom_fork.git
- setup.sh --branch=dev --dir=/workspace/kohya_ss --git-repo=https://mycustom.repo.tld/custom_fork.git
- 选项:
- -b BRANCH,--branch=BRANCH 选择新安装时要检出的 kohya 分支。
- -d DIR,--dir=DIR 您要安装 kohya_ss 的完整路径。
- -g REPO,--git_repo=REPO 您可以选择提供一个 git 存储库以进行 runpod 安装。有助于自定义分支。
- -h,--help 显示此屏幕。
- -i,--interactive 交互式配置加速器,而不是使用默认配置文件。
- -n,--no-update 不更新 kohya_ss 存储库。没有 git pull 或 clone 操作。
- -p,--public 在 runpod 模式下公开公共 URL。在其他模式下没有影响。
- -r,--runpod 强制进行 runpod 安装。如果检测失败,非常有用。
- -s,--skip-space-check 跳过 10Gb 最小存储空间检查。
- -u,--no-gui 跳过启动 GUI。
- -v,--verbose 增加最高 3 级详细程度。
复制代码
安装位置 在 Linux 上的默认安装位置是如果检测到先前的安装,则为脚本所在的位置。否则,它将回退到 /opt/kohya_ss。如果 /opt 不可写,则回退到 $HOME/kohya_ss。最后,如果所有其他方法都失败,则会简单地安装到您当前所在的文件夹(PWD)。
在 macOS 和其他非 Linux 机器上,它将首先尝试检测在脚本运行的位置安装并在那里运行安装程序(如果检测到该位置)。如果在该位置找不到先前的安装,则默认安装到 $HOME/kohya_ss,然后安装到您当前的位置,如果无法访问 $HOME。您可以使用 -d 选项指定安装目录来覆盖此行为。
如果您正在使用交互模式,则在运行脚本后,加速配置屏幕的默认值为“This machine”、“ None”、“ No”对于剩余的问题。这些答案与 Windows 安装相同。
升级
- # Refresh and update everything
- ./setup.sh
- # This will refresh everything, but NOT clone or pull the git repo.
- ./setup.sh --no-git-update
复制代码
启动 GUI 服务
以下命令行参数可传递到任何操作系统上的脚本以配置底层服务。
--listen:监听 Gradio 连接的 IP 地址。
--username:用于身份验证的用户名。
--password:用于身份验证的密码。
--server_port:运行服务器监听器的端口。
--inbrowser:在 Web 浏览器中打开 Gradio UI。
--share:共享 Gradio UI。
在 Linux 和 macOS 上启动 GUI
类似于 Windows,使用所需的命令行参数运行启动器脚本。
- ./gui.sh --listen 127.0.0.1 --server_port 7861 --inbrowser --share
复制代码
使用 kohya_gui.py 直接启动 GUI 要直接运行 GUI,可以跳过包装器脚本,只需从根项目目录使用此命令:
- .\venv\Scripts\activate
- python .\kohya_gui.py
复制代码
👍 相关教程:训练 LoRA 模型教程
可选功能(CUDNN 8.6)
如果您持有 NVIDIA 30X0/40X0 显卡,可以安装 CUDNN 8.6 以允许更大的训练批量大小和获得更快的训练速度! 解压缩后将 cudnn_windows 整个文件夹移动至软件根目录下,并在根目录中用终端机执行以下命令:
- .\venv\Scripts\activate
- python .\tools\cudann_1.8_install.py
复制代码
|