AI绘画|如何在Stable Diffusion使用LoRA模型?

SD指南 2年前 (2023) Rui
713 0

#AI绘画#今天来说说关于loRa模型在Stable Diffusion中如何使用.

AI绘画|如何在Stable Diffusion使用LoRA模型?

目录

问题

当我们在使用AI绘图的时候,无论是MidJourney,Stable Diffusion还是其他生成式AI绘图软件,常常遇到的头疼问题是:

角色在同一个模型逐渐变形

角色跨模型直接变形

知名角色,模型不认识

第一种情况是,当你用写好的提示词好不容易绘制出一个你喜欢的角色时,想在同一个模型里面使用不同姿势、场景、表情、服装与艺术家风格等调整角色时,AI算出来的图不一定都跟原本你一开始算出来的角色一样。这时候最常用的做法就是不停微调提示词,然后大量产图拼手气。

第二种情况是,一模一样的提示词在模型A能产生你要的角色形象,但是在模型B不一定能产生非常相像的角色,例如下图:

AI绘画|如何在Stable Diffusion使用LoRA模型?
同样的提示词,角色相互都不太像

这时候你只能靠不断调整提示词来拼运气,但有时候不管怎么调整都没用。

第三个情况在动漫模型非常常见,某个在动漫模型非常知名的角色,跑到写实模型里面就对应不到任何相像的角色。

 

使用LoRA

为了解决这些问题,生成式AI有许多不同特性的解法,今天要介绍的LoRA就是一个才刚在Stable Diffusion上实作没多久,但是因为效果非常显著,所以很快就流行起来的手段。

LoRA在Stable Diffusion webui上的使用方法很简单,无论是自己训练的LoRA或者从huggingface,Civitai等网站下载下来的LoRA,例如这个萨尔达公主的LoRA,下载下来之后放入stable diffusion webui安装目录下的/models/ 文件夹之后,重新启动Stable Diffusion webui之后就能用了!

简单说一下用法:

在Show/Hide Extra Network按钮上按一下打开Extra Network区域

在新出现的区域上选择Lora标签,挑选自己要的LoRA

LoRA会以<lora:档案名:权重>的形式出现在正面提示词里面(也只能用在正面提示词)

把启动提示词填在正面提示词里面,每个LoRA的正面提示词都不一样,在下载的页面中会提到,例如萨尔达公主的LoRA下载页面,作者提到他的提示词是princess zelda

使用LoRA的时候要注意的是,LoRA算是一种对整个模型都会产生影响的外挂,所以给他的权重过高,会造成整个画面严重变形,而且不同的LoRA对不同模型的干扰程度都不一样,需要自行测试。

以我自己训练出来的LoRA为例,在不同模型不同权重下的结果:

(extremely detailed CG unity 8k wallpaper),

digital painting of Vallaria with black dress,

headband, hair ribbons, solo, fantasy,

best quality, masterpiece, hdr, ultra highres,

trending on artstation

<lora:Vallaria30Epochs:0.0>

不同权重的影响

权重为0的时候其实毫无影响。当权重到达0.5以上,就会开始产生破图。某些模组甚至在0.3的时候就连画风与背景风格都会改变。所以在实际使用时,都会先从0.1开始慢慢往上加,测试这个模组能够容忍不变形的极限。

顺带一提,LoRA其实可以共同使用,所以使用人物的LoRA同时使用风格类的LoRA理论上是可行的:

AI绘画|如何在Stable Diffusion使用LoRA模型?
权重0.7的wlop画风LoRA

上面的图就是同时使用人物LoRA与wlop大大的画风LoRA的成果。

提醒一点,stable diffusion会在把LoRA提示词在LoRA混合进模型之后过滤掉,所以一些特殊的stable diffusion语法是无法使用的,例如混合提示词:

[Vallaria:old man:0.2]

相关文章