注 Stable Diffusion 的朋友估计会经常听到 LoRA 这个词,它的全称是 Low-Rank Adaptation of Large Language Models,是一种用来微调大语言模型的技术。大语言模型比如 ChatGPT3.5 的参数量有 1750 亿,一般用户如果想在其基础上微调成本是很大的,普通电脑根本吃不消。LoRA 就是用来解决这个问题的,通过这个技术可以在单机上针对大模型进一步训练,得到自己想要的风格/效果。通常 LoRA 模型并不大,仅有几百 MB 左右,结合着大模型使用,效果灰常 nice。本文教大家如何在 Stable Diffusion 中使用 LoRA 模型~~
首先安装 Stable Diffusion,还不知道如何安装的同学可以参考之前的文章:MacOS 安装 stable diffusion。
安装好后先找个好点的大模型,我们选择 Chilloutmix-Ni,这个模型对亚洲人的刻画效果是比较好的(但是是 nsfw,使用时要注意场合哦)。可以在 huggingface 上下载到。将 chilloutmix-Ni.safetensors 这个文件放到文件夹 stable-diffusion-webui/models/Stable-diffusion 下。
然后去下载一个效果较好的 LoRA 模型,以这个模型为例,链接在这,将其下载放到stable-diffusion-webui/models/Lora
路径下并命名为ZhouShuyi.safetensors
。开始使用以下 prompts(咒语)生成的模型效果:
<lora:ZhouShuyi:0.9>, (8k, RAW photo, photorealistic:1.25), ZhouShuyi, 1girl, Long blonde hair, (looking at viewer with a serene and goddess-like happiness:1.2), ( lipgloss, eyelashes, gloss-face, best quality, ultra highres, depth of field, chromatic aberration, caustics, Broad lighting, natural shading, 85mm, f/1.4, ISO 200, 1/160s:0.75)
Negative prompt: ng_deepnegative_v1_75t, bad_prompt_version2, paintings, sketches, (worst quality, low quality, normal quality:2), lowres, ((monochrome, grayscale)), skin spots, acnes, skin blemishes, age spot, backlight, ugly, Overexposure
ENSD: 31337, Size: 768x1024, Seed: 1940921286, Steps: 30, Sampler: DPM++ SDE Karras, CFG scale: 6, Model hash: 7234b76e42
生成的图片如下:
效果很不错,是个漂亮的小姐姐。那我们尝试下去掉 LoRA 模型之后,同样的 prompt+参数是怎样的效果呢?直接将刚下载的 LoRA 模型删除(或者移动到其他地方),再次点击 generate 按钮,由于没有 ZhouShuyi 这个 LoRA 模型,所以会报 warning:Couldn't find Lora with name ZhouShuyi
, 忽略就好,最终得到的效果如下:
是不是相比前一张图片差点意思(没有 ZhouShuyi 的特点)?这就是 LoRA 的魔力所在,可以小成本地在大模型的基础上训练出我们想要的风格效果~~