购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

1.6 模型的分类和调用

模型是一个非常宽泛的概念。Stable Diffusion本身就是一种模型,其中包括多个子模型,例如:生成图片的大模型、生成特殊画风和形象的Lora模型、捕捉和嵌入图像特征的Embedding模型、修补色彩的VAE模型等。为了实现引导画面、高清放大、提取遮罩等功能,各种自定义节点也需要使用专门的模型算法。本节将介绍Stable Diffusion中一些常用的模型以及调用这些模型的方法。

1 大模型

我们常说的大模型分为官方大模型和Checkpoint模型两种。官方大模型使用海量图片和算力资源进行训练,就像百科全书一样,集合了AI绘图所需的所有信息。官方大模型包括SD1.1~1.5、SD2、SDXL以及最新的Stable Diffusion 3,目前使用最广泛的是SD 1.5和SDXL版的大模型。

尽管官方大模型可以生成各种图像,但它们无法呈现所绘对象的所有细节特征。于是,在官方模型的基础上进行微调和扩展,产生了擅长生成特定画风或特殊形象的Checkpoint模型。接触过AI绘画的读者都知道,大模型是决定画面风格和质量的关键因素。在模型网站上,有成百上千的Checkpoint模型,它们各有所长,有的擅长表现写实人物,有的擅长生成建筑景观,还有的擅长生成卡通形象。使用相同的提示词和设置参数,不同的大模型会产生截然不同的生成结果,如图1-43所示。

图1-43

2 Lora模型

Lora模型能够把训练参数插入大模型的神经网络中,以较少的训练参数和算力就能把某种人物特征或风格固定下来。大模型的体积较大,SD 1.5版大模型的体积大致为2GB,SDXL版大模型的体积在6GB左右。相对而言,Lora模型的体积只有大模型的十分之一,这不仅能让硬盘装下更多风格的模型,还可以用多个Lora模型共同控制生成结果的风格。

由于训练难度低、效果优异且模型体积小,因此Lora模型成为目前最热门且广泛应用的模型。使用Lora模型生成图的效果如图1-44所示。Lora模型的安装路径是“绘世”启动器根目录下的models\loras文件夹。

图1-44

Lora模型不能单独使用,必须挂载到大模型上。调用Lora模型的方法是在画布的空白处右击,然后依次选择“新建节点”→“加载器”→“LoRA加载器”命令来创建节点。把“LoRA加载器”节点的“模型”端口连接到“K采样器”节点,把CLIP端口连接到两个“CLIP文本编码器”节点,如图1-45所示。

图1-45

接下来,把“Checkpoint加载器(简易)”节点的“模型”端口和CLIP端口连接到“LoRA加载器”节点,这样Lora模型的文生图工作流就搭建完成了,如图1-46所示。

图1-46

我们还可以在“Checkpoint加载器”和“LoRA加载器”节点之间继续串联LoRA加载器,以便用多个Lora模型共同微调大模型,如图1-47所示。

图1-47

在“LoRA加载器”节点中,“模型强度”参数用于控制Lora模型的作用程度,数值越大,模型的特征或画风就越强烈,如图1-48所示。“CLIP强度”一般和“模型强度”设置为相同的数值。至于这两个参数应取多大值,最理想的情况是使用模型下载页面中作者给出的建议参数,或者先把数值设置成常用的0.8,然后根据生成结果的表现进行调整。

使用Lora模型时还要注意三个问题。首先,Lora模型和大模型需要使用相同的版本,要么都使用SDXL,要么都使用Stable Diffusion 1.5。其次,Lora模型是基于某些特定的大模型训练出来的,虽然有一定的适配性,但使用配套的大模型能产生更好的效果。再次,有些Lora模型提供了触发词。这些触发词需要在正向提示词中填写,虽然不填写也能让Lora模型生效,但无法得到最佳效果。填写提示词前后的对比效果如图1-49所示。

图1-48

图1-49

3 Embedding模型

Embedding模型,也称为Textual Inversion模型,是一种在训练时只处理语义标签的模型,使AI更精确地理解某些词组的含义。可以把Embedding模型理解为一组封装好的提示词:用作正向提示词时,可以生成指定角色的特征或画风;用作反向提示词时,可以避免色彩、肢体等画面元素出现错误。由于这种模型只起到标记作用,本身不包含信息,因此体积只有几十千字节。WebUI的安装路径是根目录下的embeddings文件夹,而ComfyUI的安装路径是根目录下的models\embeddings文件夹。

调用Embedding模型的方法是在提示词中输入模型的文件名。例如,如果我们下载了一个可以生成游戏人物形象的Embedding模型,可以把文件重新命名为D.va并安装到正确的路径中。因为我们希望生成这个人物,所以在正向提示词中输入embedding:D.va。为了避免出现肢体错误和不良构图,我们可以使用修复类模型,如EasyNegativeV2、badhandv4、ng_deepnegative_v1_75t等,并在反向提示词中输入,如图1-50所示。

这种添加模型的方式很不友好,我们可以安装自定义节点Embedding Picker。需要添加Embedding模型时,只需在“CLIP文本编码器”节点上右击,选择Prepend Embedding Picker命令,然后在新建的节点中选择模型。提示词也应在新建的节点中输入,如图1-51所示。

图1-50

图1-51

现在,无须输入任何提示词,只需按Ctrl+Enter键运行工作流,即可生成D.va形象的角色,如图1-52所示。

4 VAE模型

VAE模型就像滤镜一样,起到修复色彩和细节微调的作用。VAE模型通常集成在大模型中,当工作流进行到最后一步时,通过VAE端口发送给“VAE解码”节点。有些大模型由于VAE文件损坏,生成的图片会出现灰暗、颜色不鲜明的现象,这时需要使用外挂的VAE模型进行修复。

图1-52

使用外挂VAE模型的方法是在画布的空白处右击,依次选择“新建节点”→“加载器”→“VAE加载器”命令创建节点,然后把VAE端口与“VAE解码”节点连接起来,并在新建的节点中加载模型文件,如图1-53所示。

图1-53 +XFf7uE8A3Z96USfaomNWLjQTU4a2mLVi8ngPTZ+1XrDv7HkBq4249M/Cb4bMCVF

点击中间区域
呼出菜单
上一章
目录
下一章
×