Skip to content
hkz edited this page Nov 6, 2023 · 7 revisions

1. !!必读!!

  • 训练显存要求:24G VRAM(显存) 可以设置 rank=64 以及 network alpha=32 完成训练;22G VRAM 可以按照默认参数完成训练;20G VRAM 可以设置 rank=16 以及 network alpha=8 完成训练。为了避免训练因为显存不足而中断,请耐心等待训练完成后,再进行 EasyPhoto Inference 或者 SD Web UI 上的操作(如 txt2img 等)
  • 训练数据要求:训练图片的分辨率尽可能得高 (1024*1024 以上),并确保人物头像在图片中的占比足够大(一半以上)。
  • 其他注意事项:SDXL 训练请勿开启 validation 选项。如果还遇到显存不足的情况,请参考 #4-训练显存优化

2. 示例展示

SDXL-Lora 文生图

直接使用EasyPhoto训练出的SDXL的Lora模型,用于SDWebUI文生图效果优秀 ,提示词 (easyphoto_face, easyphoto, 1person) + LoRA image

EasyPhoto 推理对比

使用EasyPhoto 推理界面可以正常使用之前的所有功能 image

内测用户效果展示(文生图 + LoRA)

已征求相关测试同学同意 @Ye image

@dancemanUK image

3. 测评结果

  1. 我们在内部发布了一次双盲测试,当前 commitid 为 的版本的效果测评,sdxl 和 原1.5版本对比结果如下, 待发布。
  2. 同时我们提供了相关的显存使用情况和速度,在相同情况并使用默认参数下,SDXL 和 SD1 的性能对比:
A100 训练时间(s) 峰值显存(GB) 推理时间(s) 推理峰值显存(GB)
SD1.5-r128 900 8525 55 14.7
SDXL-r32 2100 20.22 57 17.5
A10-xformers 训练时间(s) 峰值显存(GB) 推理时间(s) 推理峰值显存(GB)
SD1.5-128 900 27.5 14.7
SDXL-r32 2040 20 41.5 17.5

4. 训练显存优化(非必须)

SD Web UI 除了 Stable Diffusion Checkpoint 外,还预先在 GPU 中加载了 CodeFormer 等模型,通过下面的设置,可以再节约 1.5G 左右的 VRAM 用于训练,可以采用西面的修改启动项实现,但训练和推理需要切换启动项。

4.1 Window启动项设置

我们以秋叶包的绘世为例子,需要用户在启动前手动设置以下两个部分(需将新人改成专家模式)。感谢 @dancemanUK 提供操作流程图! L1VzZXJzL3d6aC9MaWJyYXJ5L0FwcGxpY2F0aW9uIFN1cHBvcnQvaURpbmdUYWxrLzE3MjQxNzE5NF92Mi9JbWFnZUZpbGVzLzE2OTgzNzc0NjM0OTNfNkU2MkJFQUEtNzkyMy00OTNBLThCQTQtODIyNjEzM0VFMTg0LnBuZw== L1VzZXJzL3d6aC9MaWJyYXJ5L0FwcGxpY2F0aW9uIFN1cHBvcnQvaURpbmdUYWxrLzE3MjQxNzE5NF92Mi9JbWFnZUZpbGVzLzE2OTgzNzc2MjY4NjhfMDcxNjVDMjgtN0U3OS00ODhCLTlBM0ItNDQ4MEE5M0MyQUI4LnBuZw==

4.2 Linux启动项设置

linux机器需要在启动webui服务打算训练时手动设置如下启动项即可。

  • 训练启动项 --use-cpu all --no-half 如需训练,webui服务启动按照 python launch.py --use-cpu all --no-half
  • 推理启动项 如果需要推理,训练后,重新启动webui服务,运行 python launch.py