搭建随机生成Waifu的前端,基于StableDiffusion


目录

  1. 前端部署
  2. 安装中可能存在的错误
    1. 卡在”ADetailer那边”
  3. 模型的使用
    1. 从其他Nas上复制
    2. NovelAI模型
    3. Stable-diffusion模型
    4. Chilloutmix模型
    5. Anything
    6. Counterfeit
    7. 国风模型
    8. 启用附加模块
  4. 其他插件
    1. 画手插件
    2. 汉化
    3. 模型转换
    4. CLIP
    5. DeepDanbooru
    6. EasyNegative
    7. TiledDiffusion+StableSR
    8. 提示音
  5. 图片重绘放大功能
  6. 配置文件
  7. NovelAI关键词
    1. 常用关键词
    2. 不同模型的关键词比较
  8. 分辨率和显存占用
  9. BenchMarks
  10. 相关链接

前端部署

Linux下内存4G的设备,Windows下内存8G的设备未启动成功过
N卡配置GPU版的Torch,Linux下推荐cudnn版,参考机器学习相关笔记
安装Git和Python3.11,使用命令行下载Stable-diffusion-webui和相关库

1
2
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
pip3 install -r /content/stable-diffusion-webui/requirements.txt

如果是linux系统,还需要安装GL库(CPU版需要,装了NV驱动的同学忽略)

1
apt-get install primus-libs

运行launch.py,慢慢等它下载文件,等它找不到模型后自动报错退出
对于N卡,启动时根据需要自己加参数,根据你自己的要求改ip和端口号

1
python3 launch.py --listen --port 8080 --no-half-vae

对于非RTX卡,需要安装cudnn才能启用半精度,否则需要添加--precision full --no-half
如果小于4GB或者爆显存,需启用低显存模式--lowvram
如果是8GB这种很尴尬的显存,可以使用--medvram这种参数
如果使用RTX 30系及以上显卡,可使用xformers,要求CUDA >7.5
只需要在启动命令行后加--xformers
如果使用screen后台设置alias

1
alias sd="cd /app/stable-diffusion-webui&&screen -dm python3 launch.py --listen --port 2334"

安装中可能存在的错误

File “/usr/local/lib/python3.10/lzma.py”, line 27 ModuleNotFoundError: No module named ‘_lzma’
修改为

1
2
3
4
5
6
try:
from _lzma import *
from _lzma import _encode_filter_properties, _decode_filter_properties
except ImportError:
from backports.lzma import *
from backports.lzma import _encode_filter_properties, _decode_filter_properties

报Can‘t load tokenizer for ‘openai/clip-vit-larg错误
stable-diffusion-webui目录创建openai文件夹,将

卡在”ADetailer那边”

下载https://huggingface.co/Bingsu/adetailer/tree/main,放入models\adetailer文件夹


模型的使用

从其他Nas上复制

1
2
sftp root@192.168.1.100
get 远程文件 本地保存路径

NovelAI模型

NovelAI流出版种子下载
主模型:将/novelaileak/stableckpt/animefull-latest/model.ckpt,改名成animefull-latest.ckpt放到/stable-diffusion-webui/models/Stable-diffusion/目录里
vae权重:将animevae.pt改名成animefull-latest.vae.pt和模型同样的目录
模型风格调整:将/novelaileak/stableckpt/modules/modules/里所有pt文件放入/stable-diffusion-webui/models/hypernetworks文件夹中

Stable-diffusion模型

最基础的模型,1.4链接2.1链接

Chilloutmix模型

链接:偏真人的模型
LoRA下载
chilloutmix_.safetensors放在/models/Stable-diffusion目录中
koreanDollLikeness_v10.safetensors放在/models/Lora目录中,顾名思义
taiwanDollLikeness_v10.safetensors放在/models/Lora目录中,顾名思义
下载下载VAE文件,丢到/models/VAE文件夹中

Anything

链接:万象熔炉,动漫风

Counterfeit

链接,偏油画风格,想象力很丰富,笔者博客钦定的模型

国风模型

风格偏真人,感觉巨难调教,国风2:Gf_style2.ckpt
GuoFeng3.2.safetensors放在/models/Stable-diffusion目录中
GuoFeng3.2_Lora.safetensors放在/models/Lora目录中

启用附加模块

Lora启用的方法:点Generate下面的第三个图标(Show extra networks),下面会新出现个框,点Lora,会自动在prompt里添加<lora:koreanDollLikeness_v10:1>
启用hypernetworks:跟启用Lora的方法类似,在hypernetwork中启用


其他插件

画手插件

Extensions->install from URL->https://github.com/jexom/sd-webui-depth-lib.git
在Installed里检查是否有“深度图编辑器插件”

汉化

Extensions->install from URL->https://github.com/dtlnor/stable-diffusion-webui-localization-zh_CN.git
Settings->User interface->Loaclization->

模型转换

Extensions->install from URL->https://github.com/Akegarasu/sd-webui-model-converter.git
在Installed里检查是否有“模型格式转换插件”
可以把FP32的模型转换为FP16,作用不大

CLIP

如果报错,需要使用pip3 install git+https://github.com/openai/CLIP.git

DeepDanbooru

在命令行尾部添加--deepdanbooru
下载模型后放到 /models/torch_deepdanbooru/model-resnet_custom_v3.pt
开启后在img2img的Generate的左边多出了个Interrogate DeepBooru,在下面加入图片即可

EasyNegative

下载后丢到/stable-diffusion-webui/embeddings里,在Negative prompt中添加EasyNegative启用


TiledDiffusion+StableSR

安装参考sd-webui-stablesr16倍!又一个强到无敌的放大插件(脚本)StableSR,推荐!,效果参考Stable Diffusion WebUI 四种图像放大策略的简单比较
安装
Extensions->install from URL->https://github.com/pkuliyi2015/multidiffusion-upscaler-for-automatic1111.git
在Installed里检查是否有“MultiDiffusion 放大器”
Extensions->install from URL->https://github.com/pkuliyi2015/sd-webui-stablesr.git
在Installed里检查是否有“sd-webui-stablesr”
下载v2-1_512-ema-pruned,放在models\Stable-diffusion
下载weibu,将解压后的stablesr_webui_sd-v2-1-512-ema-000117.ckpt放在stable-diffusion-webui/extensions/sd-webui-stablesr/models/
下载vqgan_cfw_00011_vae_only.ckpt,放到models/VAE


提示音

将提示音命名为 notification.mp3,放入webui 的根文件夹中灵感


图片重绘放大功能

由于StableDiffusion训练的图均为小图片,所以直接出大图可能会出错,生成图后直接放大的性价比不如挑选后再放大高。
模型选择v2-1_512-ema-pruned.safetensors
图像变化因重绘幅度(Denoising)而改变,大概以0.5为界限会出现很大的改动
提示:A tensor with all NaNs was produced in VAE,可能是爆显存了,建议添加--no-half-vae
启用Enable Tiled DiffusionEnable Tiled VAE
Method选择Mixture of Diffusers
Latent tile设置64,重叠设置成32,算法不选
脚本选用StableSR,选择SRModel和Pure Noise


配置文件

修改ui-config.json可以设置默认参数

1
2
3
4
5
"txt2img/Prompt/value":
"txt2img/Negative prompt/value": "EasyNegative,multiple_legs, multiple_arms, multiple_digits, bad_hand, cat_ear, rabbit_ear",
"txt2img/Sampling steps/value": 30,
txt2img/Restore faces/value": true,
"txt2img/CFG Scale/value": 11.0,

Batch count是点一次运行的次数,随便改大,但是时间也会变长,Batch size是一次出图数,改大会爆显存
分辨率必须是64的整数倍,否则会报错
提示:outputs\txt2img-images文件夹内存有之前生成过的内容


NovelAI关键词

NovelAI关键词生成器
也写在ui-config.json里

常用关键词

1
2
3
4
5
anime,1loli,black pantyhose,school uniform		//校服萝莉
sky, floating sky, clouds, pixel_girl, black pantyhose, magic, exquisite, white_fluffy_hair, ink, splash //天空之境
sky, floating sky, clouds, pixel_girl, magic, exquisite, fluffy_hair, oriental, ink and wash //过往云烟
1girl, wide_silver_sleeves,bangs, blue_eyes, blush,blue_sky, blush,cloud, silve_fluffy_hair, long_sleeves, neck_ribbon //过往云烟自己写
best quality, masterpiece, highres, 1girl,china dress,Beautiful face //国风关键词

推荐写法

1
2
3
4
5
6
7
8
(masterpiece:1.331), best quality,
illustration,magic
(1loli),wide_silver_sleeves,bangs
fluffy_hair,,neck_ribbon
beautiful detailed eyes
expressionless,
sitting,
orange background, twilight ,sea,cloud

不同模型的关键词比较

Model pantyhose school uniform leotard tankini
Anything 裤袜 水手服 死库水 各种泳衣
Chilloutmix 过膝袜 西服+短裙 死库水 两段式比基尼
Counterfeit 裤袜 水手服 奇怪的泳衣 三点比基尼

动作:spread legs
画图:full_body; figure; bust(半身)


分辨率和显存占用

Ratio With Hight Mem
16:9 1280 720 6193/7814
1.1:1 720 640 6091/7888
2X 1440 1280 7647/7682
1:1 1320 1320 Fail
0.75X 1440 810 Fail

BenchMarks

Software:cudnn on with Nvidia GPU
Model: AnythingV5V3_v5PrtRE.safetensors
Parameter:Resolution 200×200; Sampling steps=30 ,CFG Scale=11.0,Five Times,Restore faces Off
Prompt: anime,1loli,black pantyhose,school uniform
Negative: EasyNegative,multiple_legs, multiple_arms, multiple_digits, bad_hand, cat_ear, rabbit_ear
Note: P104 power limits 90w,Plase pay attention to quantity units

Device RAM Platform Capacity
12100+P104 32+8 Debian/half 6.33it/s
12100+P104 32+8 Debian/nohalf 7.46it/s
12100+P104 32+8 Debian/half/lowvram 0.116it/s
12100F+T600 16+4 Debian/half 0.80it/s
12100F+T600 16+4 Debian/full 0.80it/s
12100F+T600 16+4 Win10/half/lowvram 0.44it/s
12100F+T600 16+4 Win10/full/lowvram 0.43it/s

相关链接

Dskjal教程(日文)
NovelAI本地完美部署使用手把手攻略教程
stable diffusion webui如何工作以及采样方法的对比