简介
不多说了,其实便是个简略的Lora模型练习的进程。丹成逐我三山去,不作巫阳云雨仙!!!
练习资源准备
过程1:收集20+张图片
- 可所以拍照取得;
- 可所以视频提取;
- 可所以截图;
过程2:将图片尺度进行处理
能够自己手动剪切,也能够运用如下的命令行进行批量裁剪,或许运用www.onlinephotosoft.com/zh-CN/birme…
我运用的命令行裁剪的,命令如下
magick mogrify -gravity center -extent 1:1 -crop 3x3@ *.jpeg *.webp
magick mogrify -crop 768x768+0+0 *.jpeg *.webp *.png
过程3:处理完的图片进行挑选
选取契合条件的图片,将不契合条件的图片除掉!
过程4:运用SD的图画预处理
如图填写,选中生成描述,由于咱们现已对图片进行了裁剪和处理,其他的选项就不选了。
处理完毕后,在咱们的方针目录下,能够看到如下信息
这儿是图片,及其对应的文本描述,能够点开看下,也能够经过自己补充一些文本描述。
练习基本要求
- 显存12G,练习768×768的图,这样能够防止大图的时候呈现的图画堆叠;
- 至少15张图片,每张图片的练习步数不少于100;
- 相片人像要求多角度,特别是脸部特写(尽量高分辨率),多角度,多表情,不同灯光效果,不同姿态等;
- 图片构图尽量简略,防止复杂的其他因素干扰;
- 能够单张脸部特写+单张服装按份额组成的一组相片(这儿份额是3:1)
- 减少重复或高度相似的图片,防止形成过拟合;
练习软件装置
按照过程,进行练习软件的装置。
地址如下:github.com/bmaltais/ko…
服务器运转
- 假如是在服务器上运转,先检查自己的驱动
nvidia-smi
- 假如是在服务器上运转,留意自己的驱动地址是不是正确,假如不正确,需求先指定
阿里云的默许PATH如下
能够在这个基础上,根据你CUDA的方位,增加途径:
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/cuda-11.7/lib64"
export TF_ENABLE_ONEDNN_OPTS=0
- 假如是在服务器上启动的,那么执行命令如下
./gui.sh --listen 0.0.0.0 --server_port 7861 --inbrowser --share
点击public URL
之后,能够直接翻开页面了,大致如下
练习设置
Dreambooth LORA
咱们运用的是Dreambooth LORA,留意不要选错呀
设置Source Model
挑选运用的主模型,比如真实风格。
设置Folders
设置资源地址,主要如下
- Image folder:练习图片所在的方位;
- Output folder:练习完成后,能够在这个地方找到现已练习完的Lora模型;
- Logging folder:日志文件
这三个文件夹都能够在控制台自己创建的,其间Image folder对应的地址,要上传咱们的练习图片
练习图片:
设置Training parameters
- 设置好尺度
- 禁用buckets
- 假如练习报错
NameError: name 'str2optimizer8bit_blockwise' is not defined
,则能够将Optimizer
改为AdamW.
开端练习
点击Train Model即可开端练习。
后台能够看到进度条:
练习了18张图片,大约需求25分钟左右。GPU是阿里云的A10,详细如下
可能发生的问题
短少包:tensorflow、tensorrt等
假如后台报错,那么需求按照过错的提示,进行处理,比如短少显卡的包,则需求装置对应的包。
比如装置tensorflow
pip install tensorflow==2.9.2
装置tensorrt
pip install nvidia-tensorrt -U --index-url https://pypi.ngc.nvidia.com
找不到文件:libnvinfer.so.8、libnvinfer.so.7等
能够经过下面命令行,检查缺失的文件的方位
find / -name libnvinfer.so.8
当然能够做相关,或许增加文件的PATH途径,让程序能够找到。
sudo ln -s /usr/local/lib/python3.10/dist-packages/tensorrt/libnvinfer.so.8 /usr/local/lib/python3.10/dist-packages/tensorrt/libnvinfer.so.7
sudo ln -s /usr/local/lib/python3.10/dist-packages/tensorrt/libnvinfer_plugin.so.8 /usr/local/lib/python3.10/dist-packages/tensorrt/libnvinfer_plugin.so.7
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib/python3.10/dist-packages/tensorrt/:/usr/local/cuda-11.7/
大图欣赏