引言
目前,AI绘画 的各种模型层出不穷,哪些模型都有什么用?又如何使用?对刚入坑或者不怎么下载别人模型使用的人造成了很大困扰。也没有一个统一的总结或者教程指导。
这篇文章将会为你介绍目前所有 AI绘画[1] 的模型种类、使用方法、简单的训练指导。
1、引言
不同的模型会带来不同的画风、认识不同的概念(人物/物体/动作),这是模型众多的原因。
常说的 NovelAI 就是特指 NovelAI 制作的一款 日系二次元特化 的模型。
而 stable-diffusion 1.5、2.0、SDXL这些模型是较为通用的、现实模型,无法画出二次元图片
而其他的各种大模型,则是在上面这些基础上继续训练得到的特化模型。
2、模型概况
当前,常见的模型可以分为两大类:大模型 [2],用于微调大模型的小型模型。
[2] 这里的大模型特指标准的 latent-diffusion 模型。拥有完整的 TextEncoder、U-Net、VAE。
由于想要炼制、微调(finetune)大模型十分困难,需要好显卡、算力,所以更多的人选择去炼制小型模型。这些小型模型通过作用在大模型的不同部分,来简单的修改大模型,从而达到目的。
常见的用于微调大模型的小型模型又分为以下几种:Textual inversion (常说的Embedding模型)、Hypernetwork模型、LoRA模型。
此外,还有一种叫做 VAE 的模型,通常来讲 VAE 可以看做是类似(但不是)滤镜一样的东西[3]。他会影响出图的画面的色彩和某些极其微小的细节。大模型本身里面就自带 VAE 的,但是一些融合模型的 VAE 烂掉了 (典型:Anything-v3),需要外置 VAE 的覆盖来救救。有时画面发灰就是因为这个原因。
[3] VAE, Variational autoencoder。变分自编码器,负责将潜空间的数据转换为正常图像。
由于模型的种类不同、作用位置也不同,所以想要使用这些模型文件必须分清这些模型类别,并且正确的使用对应的方法模型才会生效。
如何区分这些模型对新手来说是一件非常困难的事情,因为他们都可以拥有一样的后缀名(下一节将详细展开说明)。通常没有专业知识的人员应该通过文件大小来简单判断模型类别。
针对此,秋叶特意开发了这个工具来快速辨别模型种类。只需要把模型拖进来就行
工具链接:https://spell.novelai.dev
模型种类及使用方法一览
2.1 模型后缀名之谜
目前,常见的 AI绘画 用模型后缀名有如下几种:
- ckpt ,2. pt ,3. pth,4. safetensors,5(特殊)embedding 模型保存方法:PNG、WEBP图片格式。
暂且抛开第五种不谈。这几种后缀名都是标准的模型,从后缀名是无法判断具体是哪一种类的模型。
其中,1,2,3 这三种是 pytorch[2] 的标准模型保存格式,由于使用了 Pickle,会有一定的安全风险(自行百度:pickle反序列化攻击)。第四种为一种新型的模型格式,正如同他的名字,安全。为了解决前面的这几种模型的安全风险而出现的。safetensors 格式与 pytorch 的模型可以通过工具进行任意转换,只是保存数据的方式不同,内容数据没有任何区别。
[2] Pytorch, 深度学习框架 https://pytorch.org
2.2 常见模型种类及使用方法
以下所有模型都可以保存为 safetensors 格式,故常见格式中都不再提及safentensors。
辨别模型类型请使用这个工具:https://spell.novelai.dev
2.2.1 大模型
大模型,又称底模、基础模型。常见格式为 ckpt、safetensors,一个字,大。大小在GB级别,常见有 2G、4G、7G模型。
模型大小不代表模型质量,并且都可以修剪为2G模型。
使用方法:放在这个文件夹内。
在 webui 左上角选择对应的模型。
部分合并出来的大模型VAE烂掉了,画面会发灰,这时候需要你去手动选择 vae 使用。
2.2.2 LoRA
常见格式为 pt、ckpt、safetensors。大小一般在8mb~144mb不等。
使用方法:目前有两种用法。
一种是插件方式使用,已经废弃故不在提及。
另一种是v1.0以后的版本,原生支持lora。
模型需要放在 models/Lora 文件夹。使用方法如图所示,点击一个模型以后会向提示词列表添加类似这么一个tag, <lora:模型名:权重>也可以直接用这个tag调用lora模型。
v1.6以后的版本,界面则变成了这样.
2.2.3 Embedding (Textual inversion)
俗称的 embedding 模型。常见格式为 pt、png图片、webp图片。大小一般在 KB 级别。
常见的是一些 EasyNegative、bad_image 这些负面 embedding,放在负面提示词内使用。
使用方法:
放在这个文件夹里面,生成图片的时候需要带上 文件名 作为 tag。
例如,上面这张图里面的 shiratama_at_2-3000.pt 这个模型,使用的时候就需要带上这个tag:shiratama_at_2-3000
2.2.4 VAE 模型
常见格式为 .pt
使用方法:将其放在 models/VAE 文件夹。
放置完毕后,在可以在顶栏直接找到
2.2.5 Hypernetwork
一般没人用了。
常见格式为 pt。大小一般在几十兆到几百兆不等。由于这种模型可以自定义的参数非常之多,一些离谱的 Hypernetwork 模型可以达到 GB 级别。
使用方法:放在图中文件夹内。
模型训练方式简易指导
3.1 LoRA
可训练:画风√ 人物√ 概念√ | 推荐训练:画风、人物
配置要求:显存8GB以上。
训练速度:快 | 训练难度:简单
综合评价:☆☆☆☆☆
评价:目前一般用户最推荐训练的模型!非常好训练、好出效果的训练,配置要求低,图要求少。
3.2 Embedding (Textual inversion)
可训练:画风√ 人物√ | 推荐训练:人物
配置要求:显存6GB以上。
训练速度:中等 | 训练难度:中等
综合评价:☆☆
评价:比较基础的一种,2023年以后已不再推荐训练。目前都用来训练负面 embedding,提升画面效果。代替一些复杂的提示词。
3.3 Hypernetwork
可训练:画风√ 人物√ | 推荐训练:画风
配置要求:显存6GB以上。
训练速度:中等 | 训练难度:难
综合评价:☆☆
评价:不推荐训练。
3.4 Dreambooth / Native Train
可训练:画风√ 人物√ 概念√ | 推荐训练:Dreambooth 推荐人物,Native Train 推荐画风
配置要求:显存12GB以上。
训练速度:慢 | 训练难度:可以简单可以很难
综合评价:☆☆☆☆☆
评价:微调大模型,非常强大的训练方式,但是使用上会不那么灵活,推荐训练画风用,人物使用 LoRA 训练。