Windows安装Stable Diffusion WebUI教学
在这篇文章中,俺将教你Stable Diffusion WebUI的安装方法。
Stable Diffusion (稳定扩散)是一个扩散模型,最早是由德国CompVis发表并退出相关程序,后来AUTOMATIC1111开发了图形化界面:[Stable Diffusion WbeUI],成为了最多人使用的版本,下面简称SD WbeUI。
SD WbeUI是能用Ai技术生成图片的开源软件,只要能一组描述的文字,Ai就会开始绘图(准确的说是[算图]或[生成]图像);异能模仿现有的图片,绘制另一张图片。甚至给它一部分涂黑的图片,Ai也能按照你的意愿将图片填上适当的内容。除此之外还支持自行训练模型加强算图的效果。
与其他云端AI绘图软件Midjoruney、NovelAI、DALL-E相比,SD WebUI最大优点是可以免费在自己的电脑或服务器跑,且只要遵照Creative ML OpenRAIL-M授权条款的话,几乎没有使用限制。因其开源的特性,任何人都可以贡献程式码,参与改进专案。
SD WebUI支持Linux/Windows/MacOS系统,以及Nvidia/AMD/Apple Silicon M的GPU。其图形界面是透过网页存取的,上手无难度,还有社群制作的界面中文化扩充功能。
0. 系统需求
- 作业系统:Windows 10 64位
- 内存: 最低8GB,建议16GB
- 显示卡:VRAM最低4GB,建议8GB
- 硬盘空间:20GB
Stable Diffusion WebUI并无要求特定处理器,因为主要是用显示卡在算,只要64位元x86架构的Intel/AMD处理器就可以了。
Ai算图很吃显示卡性能,硬体不够力可考虑用Google Colab云端跑。
1. 下载模型
存档点模型(checkpoint,勿跟俺搞混)是AI算图的重要依据,档案普遍在2GB以上所以建议先下载。算图用的模型可以安装很多个。
HuggingFace和Civitai有很多类别可以下载,看要画真人还是动漫风格,至少需要下载一个模型。
点进下载模型的连结,选择下载副档名为.ckpt
或.safetensors
的模型。后者因不具备执行程式码的能力因此较前者安全。
这里推荐一些俺综合个人以及网络上的意见觉得不错的模型。
1.1. 写实风模型
Stable Diffusion v2.1,简称SD,是CompVis与合作团队最初发表的模型,不断更新中。网络上很多模型都基于此模型训练而来。适合画真人、动物、自然、科技、建筑的图像,亦学习过历史上许多画家的画风。
Chilloutmix写实风格的模型,适合画出2.5次元,融合日韩真人与动漫风格的图像。
Deliberate基于SD-1.5模型,适合绘制精致写实风格的人物、动物、自然风景。
Realistic Vision v1.4,写实风人物与动物模型。
1.2. 动漫风模型
Anything v4.5适合画动漫图,作者宣称不需要打一堆提示词也能出漂亮的图。
Waifu Diffusion v1.4是纯粹使用Danbooru图库训练而成,适合画动漫图。
Hentai Diffusion适合画动漫图,模型已使用大量负向提示词训练过以排除不良结果,另提供embeddings方便绘图时使用。
DreamShaper是基于SD-1.5模型,绘制精细动漫人物与油画风格的模型。
OrangeMix3,混合多种风格的动漫绘图模型,偏写实。
2. 安装Stable Diffusion WebUI
为什么要使用指令而不使用懒人一键安装包?因为SD WebUI上游原始码更新很快,还没有稳定发表版本更新的模式。为此自行设定环境再用Git下载程式是目前最好的方式,自由度高,未来也方便更新。
如果你因为出错需要整个重装SD WeBUI的话,已下载的模型(models
资料夹)和扩充功能(extensions
资料夹)可以先备份,不需要重新下载。复制SD WebBUI的储存库后再将其放回原处。
2.1. 安装显卡驱动程式
请确认电脑已经安装最新版的显卡驱动程式。
Nvidia显示卡建议用Geforce Experience安装最新驱动,会顺便安装CUDA。或者你想手动下载CUDA也行。
AMD请用驱动程式自动侦测工具安装显示卡驱动。
2.2. 安装Git和Python
- 下载Git版本管理工具。至Git for Windows下载安装档,一直下一步即可。
- 接着安装Python。SD WebUI限定Python版本需为
3.10.6
。请至Python官网下载Python 3.10.6
的64位安装。
- 安装前务必勾选
Add Python 3.10 to PATH
,将Python加到环境变数。再按Install Now
。
2.3. 复制Stable Diffusion WebUI储存库
- 开启档案总管,在桌面资料夹按右键+Shift,点选
在这里开放Powershell
或终端视窗
。如果你C盘空间不足的话,也可以切换到其他硬盘资料夹再开启终端机。 - 输入以下指令,检查目前Python版本,输出应为3.10.6
python --version
- Nvidia显示卡用户输入以下指令,确认CUDA是否有正确安装,输出应含有
nvcc: NVIDIA (R) Cuda compiler driver
nvcc --version
- Nvidia显卡用户输入以下指令,复制Stable Diffusion WebUI的储存库。复制完成后保持终端机开着。
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
- * AMD显卡用户请暂时先用这个专门设计给AMD DirectML的分支:
git clone https://github.com/lshqqytiger/stable-diffusion-webui-directml.git
- 复制完成后,桌面会多出资料夹
stable-diffusion-webui
。将刚刚下载的存档点模型放到models\Stable-diffusion
资料夹。这个资料夹可放入多个存档点模型档。
2.4. 设定启动引数
显卡为Nvidia且VRAM大于8GB的可跳过此步骤。
根据Wiki,有些显卡需要修改启动引数才能正常启动WebUI。对stable-diffusion-webui
资料夹里面的webui-user.bat
按右键,以记事本开启,编辑COMMANDLINE_ARGS=
这一行后面的启动引数。(看不到.bat请点选档案总管检视→ 显示/隐藏→ 显示副档名)
若显卡VRAM小于等于4GB的话加入COMMANDLINE_ARGS=--medvram --opt-split-attention
引数。
电脑RAM(不是VRAM)小于等于8GB的话改加入COMMANDLINE_ARGS=--lowvram --opt-split-attention
引数。注意使用--lowvram
引数会让高阶显卡算图变很慢。
(下面的不加也可以)
加入--xformers
引数可进一步减少VRAM使用量。--no-half-vae
降低使用VAE时算出黑图的机率。
加入--listen
引数再开放防火墙7860通讯埠,即可用区域网络其他电脑的浏览器存取WebUI。
加入--share
引数则会产生一组Gradio网址,让你可以从外部网络或手机使用WebUI。网址72小时后过期。
2.5. 启动Stable Diffusion WebUI
- 回到终端机,输入以下指令启动SD WebUI:
cd stable-diffusion-webui ./webui-user.bat
- 初次启动会下载依赖套件,大概要等个30分钟安装。如果在此步骤遇到错误,请先看常见问题。
- 启动完成后会显示一组网址。执行程式时请勿关闭终端机。
- 用浏览器开启:
http://127.0.0.1:7860
就可进入图形界面了。执行程式时请勿关闭终端机,执行时若出错终端机也会输出讯息。 - 要关闭SD WebUI,在终端机按Ctrl+C终止,再关闭视窗。
日后要启动SD WebUI,只要对资料夹里面的webui-user.bat
按二下即可(不需要用系统管理员执行)。
2.6. 如何更新Stable Diffusion WebUI
SD WebUI专案原始码是托管在Github,开发迭代速度很快,建议每周适时更新程式。
但更新频繁也代表功能容易损坏,因此安全的更新方式如下:
- 在
stable-diffusion-webui
这个资料夹里面按右键+SHIFT开启终端机,取得目前分支,会印出一组五位数代码
git rev-parse --short HEAD
- 接着拉取最新分支,更新到最新版档案。
git pull
- 如果更新后出现
Merge branch 'master' of
的讯息,请按Esc
键,输入:q!
退出即可。 - 更新后如果有功能坏掉就退回之前的分支版本。
git checkout "分支代碼"
3.延伸阅读
- Rombach, R., Blattmann, A., Lorenz, D., Esser, P., & Ommer, B. (2022). High-resolution image synthesis with latent diffusion models. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (pp. 10684-10695).
- Stable Diffusion web UI Wiki – GitHub
- r/StableDiffusion – Reddit
- Voldy Retard Guide The definitive Stable Diffusion experience ™
- Stable Diffusion WebUI – 标签- 萌芽二次元- 萌芽网页
- Stable Diffusion – 话题- 知乎