本文介绍我在本地搭建 Stable Diffusion Web UI 的体验过程,予以记录分享。

Stable Diffusion 是 2022 年 8 发布的深度学习文本到图像生成模型。它主要用于根据文本的描述产生详细图像,官方项目其实并不适合新手直接使用,好在有使用 Stable Diffusion 封装的 WebUI 开源项目,可以通过前端页面来使用 Stable Diffusion,大大降低了使用门槛,本文主要是介绍 Github 作者为 AUTOMATIC1111 的 stable-diffusion-webui;易用,插件丰富。

下面可能简称 Stable Diffusion 为 SD。

看看效果

▲ 图1-封面,国风模型盲盒

img1 img2 img3

▲ 组图2,模型 meinamix_meinaV8

▲ 图3-生成界面(使用了汉化插件)

我的环境

MacBook Pro 14寸

芯片:Apple M1 Max

内存:32G

系统:MacOS 13.3.1

Python:Python3.8

出图速度(默认参数下):快的时候9s,有其他调整的时候稍慢

▲ 图4-出图速度

Stable Diffusion Web UI

尝试 Docker

开始准备使用各位大佬推荐的 Docker 搭建,便于一键安装,但是发现无法支持 Mac ,无奈放弃!!!

▲ 图5-Docker 安装 FAQ

如果配置吃得住的 Windows 用户可以试试 Docker 搭建,流程不复杂,直接拉仓库,一键就可以自动安装了,主要使用 docker-compose 进行安装。

Docker 安装可参考:stable-diffusion-webui-docker [1]

本地运行 stable-diffusion-webui

苹果芯片安装文档参考[2]很详细建议看原文档

这里简单介绍下大致流程:

1、如果安装了 Homebrew 可以跳过此步,否则需要到 https://brew.sh 安装Homebrew 便于安装一些必要软件

2、通过 Homebrew 安装一些必要的程序(由于我本地有 Python 和 Git,所以我安装时去掉了这两个,Python 版本不知道是否有隐患?):

1
brew install cmake protobuf rust [email protected] git wget

3、将 WebUI 仓库克隆下来

1
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui

4、下载模型,将 SD 的基础模型(也称之为checkpoint)下载下来放到模型目录stable-diffusion-webui/models/Stable-diffusion,可直接下载 SD 的官方预训练好的模型先试试,也就是文档中下图所指示位置(下个最新的咯),这个官方模型出图效果一般,可以摸清功能后再去试试其他的模型(关于模型相关的介绍下面会提到)

▲ 图6-模型下载

如果下载好了模型,接下来执行启动 UI 的命令,他会自动设置好环境,下载所需的一切依赖

1
cd stable-diffusion-webui
1
 ./webui.sh

初次运行期间我遇到的问题主要是下载慢(Github),开一下代理,再次执行启动命令就好了。

如果是 pip 依赖下载慢,可以尝试切换 pip 源为清华源或者阿里等国内源。

上面步骤如果都完成能成功启动,在左上角模型选择(参照图3-生成界面)就有模型可以选择。这时试试给一些提示生成图片了 ,可以愉快的玩耍了 🎉。


▲ 左上角则是基模选择项,一次只能使用一种基模

汉化UI界面

stable-diffusion-webui-chinese[3]

看不懂英文没关系,直接装插件汉化一下就 OK 咯:

关于模型

在 SD 中,基于训练方式的不同,最常用的两类模型:本人了解有限,不对的地方恳请指正!checkpoint ?

checkpoint 是基础模型,也简称基模,比如上面安装 WebUI 过程中可下载的官方模型就是 SD 预先训练好,是完整模型的常见格式,模型体积较大,一般单个模型的大小在2~7G 左右;模型后缀一般为 .ckpt 或者 .safetensors

如果下载了 checkpoint,放到 models/Stable-diffusion 目录即可

上面的 SD 1.5 、SD 2.0、SD 2.1,有人说 1.5 的模型比 2.x 的模型效果要好?

下面是一些比较火的三方模型,通常是模型作者基于另外的一些基模(可能是 SD 官方的基模或其他开源的基模)加自己的数据训练出来的模型,一般都是特定风格和一些优化;比如脸型,肤色等等(取决于训练者的数据样本😂)

chilloutmix**[4]**、chilloutmix_NiPrunedFp32Fix**[5]**… 生成真人的模型,由于其生成的图片风格很适合亚洲人,所以在国内应该是最火的模型,下面会给下载链接

meinamix_meinaV8[6] ,动漫混合型模型,生成的图片多是动漫风格,文中组图2就是其生成

**GuoFeng3[7]、3Guofeng3_v33[7]**,中国风模型,图1封面图由其生成

LoRA ?

LoRA 模型作用主要是微调,可以理解为在基础模型的前提下,做一些风格增强,因为他固定一些参数和权重,比如有些 lora 模型是专注 亚洲脸调整的参数,有的是古风、动漫风等等不同风格。

它们通常不会超过 1G,必须与 checkpoint 模型一起使用。

如果下载了 lora,放到 models/Lora 目录即可,随后你可以在界面看到它们,写提示词时,点击对应的 Lora 或按照 lora:lora模型名:1 书写即可使用:


下面是使用 chilloutmix_NiPrunedFp32Fix 基模+几个 LoRA 在相同提示语下生成的效果,为了区别不同模型的差异,可以给模型设置预览图:

▲ 不同 LoRA 在相同提示语下的风格差异便于区别

怎么区别基础模型 checkpoint 和 Lora?

比较大的一般就是基础模型(GB级别),其他少于 1G 的一般情况下是 Lora ,毕竟训练量不一样 😂

一些模型下载网站可能会标识其类型。

至于其他 VAE、Embedding、Hyperentwork 暂时还不了解。

模型如何下载

为了让 AI 绘图更加丰富多样,我们可以下载不同模型多多尝试,包括不限于 checkpoint 和 lora,下面是可以下载到 SD 相关模型文件的地方

  • 飞桨[8]

    百度的飞桨,有些网友会把一些模型分享在上面,下载会快一些,但只有少量 SD 模型被网友传了上去。

  • huggingface[9]

    很大的模型下载网站,里面包含了方方面面的各类模型。一般推荐在这个网站下载,速度时快时慢(可能是我的网络原因)。

  • civitai (需科学上网)[10]

    网友简称为C站,上面有很多风格的模型下载,对于每个模型都有图片预览,需要魔法

提示词怎么写

发现即使是下载了风格很惊艳的模型,依然无法生成牛逼的图片,那可能需要在提示词上下功夫了,为了让 Stable Diffusion 制作各种惊艳的图,可以直接参考别人的提示词🫡

以下是一些比较厉害的提示词参考网站,找到喜欢的按照其提示词和参数、Lora 生成即可

**civitai[10]**:

上面提到的 C 站,每个模型下面都有对应生成的图片分享,可以摘抄下


川普 6

lexica[11]

可以搜索 SD 生成的图片,也可以在线生成图片,看到合适的图片直接复制哈😄,会有对应的模型给出,在👆上面的模型下载网站下载即可

常见问题及解决

在使用 Stable Diffusion 过程中可能会遇到各种常见问题,我们将在这里提供一些常见解决方案。

  • 1、M1 打开第一次任意模型生成图片,无法生成报错

解决方案:按照提示操作即可

  • 2、无法调整图片高度,默认 512x512,改为 512x1024 报错:

临时解决方案:改为 512x1023

  • 3、一些情况下某些功能需要在线下载插件、模块等,会出现证书错误

解决方案:

1
2
# 换成对应的Python版本
/Applications/Python\ 3.8/Install\ Certificates.command
  • 4、切换模型报错

解决方案

1
2
# 启动时增加 --no-half 选项即
./web-ui.sh --no-half

本文主要记录初步使用 SD 进行文生图的过程,至于图生图,ControlNet 等玩法后续分享

可以把你遇到的问题在评论区一起讨论

原文链接

关注一下吧!

参考:

[1]. https://github.com/AbdBarho/stable-diffusion-webui-docker

[2].https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/Installation-on-Apple-Silicon

[3].https://github.com/VinsonLaro/stable-diffusion-webui-chinese

[4]. https://huggingface.co/AnonPerson/ChilloutMix/tree/main (内含一些亚洲 Lora)

[5]. https://aistudio.baidu.com/aistudio/datasetdetail/193534/0

[6]. https://aistudio.baidu.com/aistudio/datasetdetail/202078

[7]. https://huggingface.co/xiaolxl/GuoFeng3/tree/main (直接看文档)

[8]. https://aistudio.baidu.com/

[9]. https://huggingface.co/

[10]. https://civitai.com/

[11]. https://lexica.art/

文章参考:

AIGC 绘画理论与保姆级实战:

https://zhuanlan.zhihu.com/p/617042733

SD 采样器:

https://zhuanlan.zhihu.com/p/621083328

SD 如何安装使用不同模型:

https://zhuanlan.zhihu.com/p/619553604

mac本地 SD 环境踩坑:

https://zhuanlan.zhihu.com/p/608178376

SD使用入门与提示词技巧:

https://zhuanlan.zhihu.com/p/577238010