SDXL的安装方法,可以参考我的另一篇文章 “矿卡40HX上跑stable Diffusion XL 1.0模型的方法” 目前已实现在8G VRAM的情况下,使用超过1024×1024的画面生成。
1. 下载
StableDiffusion XL的二个模型,分别是base与refiner, 很多介绍中对二个模型的用法没解释清楚,其实这二个模型,都可以单独生成图片,Base更注重模型的内容生成,refiner更注重细节的补充。所以官方建议是先跑base再跑refiner.
你可以从huggingface上下载官方(stabilityai) 提供的模型。
sd_xl_base_1.0_0.9vae.safetensors <——这是1.0base的vae修正版, 放入models目录下的Stable-diffusion目录中。
sd_xl_refiner_1.0_0.9vae.safetensors <—–这是1.0refiner的vae修正版, 放入models目录下的Stable-diffusion目录中。
sdxl_vae.safetensors <—这个是专用的vae, 放入models目录下的vae目录中。
2. 分辨率选择
SDXL模型是用1024×1024的样本进行训练的,所以最好从1024×1024起步生成。也有其它几种分辨率可以选择:
- 21:9 – 1536 x 640
- 16:9 – 1344 x 768
- 3:2 – 1216 x 832
- 5:4 – 1152 x 896
- 1:1 – 1024 x 1024
官方说法是除了这几种分辨率外,其它的分辨率会增加破图的可能性(事实上1024×1024破图的概率也比较大)
3. 取样器选择
取样器默认用Euler a就可以了,uniPC是绝对不行的,现在取样器实在太多选择了,个别不能用,个别破图,我也没一个个试过,自行测试吧。
4. 采样迭代步数
Euler a采样器的情况下,base用10步,refiner用20步,基本够用了
5. 图片生成过程
a, 文生图状态下,直接用base模型生成图片
b, 可以加vae生成图片, 如果到这步觉得满意了,后面可以忽略。
c, 文生图完成后(可以不加vae, 个人觉得意义不大),直接转到图生图
d, 改图生图的模型为refiner模型(这步是关键)
e, 加上vae, 然后生成图片。
文章出处登录后可见!