Stable Diffusion 模型使用入门

内容纲要

查看「Stable Diffusion 专题」获取更多相关内容


接上一篇:Stable Diffusion WebUI 使用基础

在使用 Stable Diffusion 的时候可能会遇到一个问题:「我在网上看到一张画的很棒的图片,但即便我用了和作者一样的提示词,为什么画出来的图片还是那么丑?」这可能因为所使用的模型和作者使用的模型有所不同。

有没有想过为什么通过 Prompt 就能画出相应的图片?因为 Stable Diffusion 使用深度学习模型来生成图像,而模型包含了大量的图像和文本数据,这些数据可以帮助模型理解 Prompt 的含义并生成与之匹配的图像。

也就是说,如果输入的 Prompt 非常独特或者与模型训练数据中的内容差异很大,那么模型可能会生成不准确或者看起来很奇怪的图像。反过来说,如果使用针对性的模型,那么生成的图像的效果也就更好。

那么 Stable Diffusion WebUI 默认使用的模型是什么?又应该去哪里找其他的模型呢?

在 Stable Diffusion WebUI 的左上角可以看到「Stable Diffusion checkpoint」,并且下拉选项框可以看到默认选择使用的 v1-5-pruned-emaonly.safetensors,这就是当前正在使用的 checkpoint 模型,如果你使用的是来自第三方的 SD WebUI 的整合包,那么默认使用的模型可能会有所不同。

模型类型

Stable Diffusion 的模型类型繁多,如 Stable Diffusion WebUI 自带的 v1-5-pruned-emaonly.safetensors 便是 Checkpoint 模型(通常说的大模型、主模或底模,指的就是它),它是包含了训练好的模型参数的完整的模型权重文件,也是绘图的基础模型。

而其他的模型一般用于微调,如用于特定风格的 LoRA、类似滤镜效果的 VAE、用于控制生成图像中出现指定元素的 Embedding 等等。每种模型类型都有其特定的用途和优势在,刚开始接触的时候只要有个基本的了解即可。

模型下载

目前比较主流的 Stable Diffusion 模型可以从以下渠道获取:

如上面提到的 v1-5-pruned-emaonly.safetensors 就可以在其中找到:

此处简单介绍一下 Civitai(也就是简称的 C 站)的使用方法:

Stable Diffusion 模型使用入门

打开 Civitai 并在顶部菜单选择「Models」以查看模型列表,并且在页面的右侧的「Filters」过滤按钮中,通过「Model types」模型类型来过滤查找指定分类的模型,如上图所示查找「Checkpoint」模型

Stable Diffusion 模型使用入门

找到一个你感兴趣的模型并查看详情。可以看到,Civitai 相比 Hugging Face 的使用界面是更为友好的,除了模型的各种信息,还有根据模型生成的图片示例,以及点击该图片下方的「i」图标就能显示该图片用到的正反向提示词以及生成参数等等

在示例图片右侧的「Details」中可以看到该模型的信息,例如模型分类、下载数量、评价、上传日期等等,这其中需要注意的是:

  • Type:这是一个什么类型的模型,如上图的「Checkpoint」;
  • Base Model:显示的是该模型是基于什么模型训练的,常见的如 SD 1.5SDXL 1.0SDXL Turbo,如 SDXL 1.0 的 Checkpoint 大模型就不要和 SD 1.5 的 LoRA 模型一起使用,因为是可能存在兼容问题的;
  • Trigger Words:「触发词」,一些模型在使用时需要将其添加到提示词中来触发使用;
  • Usage Tips:一些使用技巧;

除了「Details」的信息,将页面下拉一般还有关于当前页面模型的使用说明,这也是非常重要的。

模型存放目录

下载模型后,根据模型类型的不同,存放在 Stable Diffusion 根目录下 models 文件夹里的相应目录中:

.
├── __pycache__
├── config_states
├── configs
├── embeddings           # Embedding
├── extensions
├── extensions-builtin
├── html
├── interrogate
├── javascript
├── localizations
├── models
│   ├── BLIP
│   ├── Codeformer
│   ├── ESRGAN
│   ├── GFPGAN
│   ├── LDSR
│   ├── Lora             # LoRA
│   ├── Stable-diffusion # Checkpoint
│   ├── SwinIR
│   ├── VAE              # VAE
│   ├── VAE-approx
│   ├── deepbooru
│   ├── hypernetworks    # Hypernetworks
│   └── karlo
├── modules
├── outputs
├── repositories
├── scripts
├── test
├── textual_inversion_templates
└── tmp

Stable Diffusion 模型使用入门

存放对应目录后,在「生成参数」右侧选择相应的模型类别,然后点击右侧的刷新按钮就可以看到刚才放置的模型了,另外「Checkpoint」模型还可以在界面左上角点击右侧刷新按钮后在下拉选项里选择使用

可以动手试试,如 Realistic Vision麦橘写实 等 Checkpoint 类型的模型,使用相同的 Prompt 生成人物图像看看与 v1-5-pruned-emaonly.safetensors 有什么区别吧

模型推荐

名称类型描述下载
DreamShaperCheckpoint写实风格Civitai
Realistic VisionCheckpoint真人写实风格Civitai
majicMIX realisticCheckpoint真人写实风格Civitai
GhostMixCheckpoint二次元风格Civitai