Stable diffusion安装部署(适合所有系统)
准备工作
1、梯子
需要可以访问github且下载速度较快,这是接下来一切工作的前提。建议还是从github上下载比较好,可以及时更新最新的版本,而且出问题的概率小。
2、安装homebrew(针对macos)
可以在https://brew.idayer.com这个网站参考安装。安装好之后,常用的一些homebrew命令
brew -v #检测是否安装了brew
brew update #更新brew版本
brew -h #查看homebrew帮助信息
brew help #查看homebrew命令
3、安装python
这里有两种方式,哪种方式都可以:
在python官网可以直接下载python,下载最新版本的即可https://www.python.org/
直接使用命令行下载
brew install cmake protobuf rust python@3.10 git wget #如果需要安装更高版本的python,自行把版本号改一下
4、安装git(非必要)
安装了git后就可以在终端中下载和更新stable diffusion了。可以从git官网https://git-scm.com/downloads下载适合系统的git。如果想自行下载stable diffusion安装包,且将来不常更新,也可以不下载安装git。个人建议还是装上,可以省去很多麻烦事。
部署stable diffusion
以上工具都准备好之后,就可以部署stable diffusion了,这个项目大约有5G大小。加上后期下载的模型,每个模型大约都有3G以上大小,所以尽量给stable diffusion留足够的硬盘空间。
有两种部署方法:
1、如果安装了git,在终端中输入下面的命令,可以把stable diffusion webui项目从git上克隆下来
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui
这个命令会默认把项目文件夹放在根目录。对于macos来说,默认使用此命令即可。对于windows系统,如果不想把此项目放在C盘,想放在其他的文件夹,那么可以按如下任何一种方式操作:
在目标文件夹按住 shift 键并右键空白处,在弹出的右键菜单中选择
在此处打开 PowerShell 窗口
在目标文件夹的地址栏覆盖输入
PowerShell
并回车在任意 PowerShell 窗口中输入 cd 追加目标安装位置路径并回车,如:
cd D:\
2、如果没有安装git,直接打开项目地址,https://github.com/AUTOMATIC1111/stable-diffusion-webui,将整个项目打包下载下来,解压至模板文件夹即可。注意文件夹路径不要含有中文。
下载model和lora
SD默认的model出图效果不太好,在C站上有世界各地的大神们制作的各种model和lora,地址是https://civitai.com/,访问需要梯子。如果访问还是很慢,国内有一些大神将模型放到了网盘里,可以自行在百度搜一下。
对于model文件,将safetensors文件放到文件路径:stable-diffusion-webui/models/Stable-diffusion
对于lora文件,将safetensors文件放到文件路径:stable-diffusion-webui/extensions/sd-webui-additional-networks/models/lora
运行stable diffusion
通过终端先进入到stable-diffusion-webui文件夹内,然后再运行webui.sh文件。以macos为例,命令如下:
cd stable-diffusion-webui
./webui.sh
首次运行可能会自动下载一些依赖包,需要等待一下。安装gfpgan的时候会花一些时间,需要耐心等待一下。
全部安装完之后,关闭终端,重新打开,重复执行上面两条命令,当出现以下地址,代表已经启动成功,将此地址复制到浏览器即可打开sd。以后每次启动sd-webui都需要执行该操作。

如何更新stable diffusion
有时候我们部署完之后,程序会有一些错误,可能是某个依赖包没有下载下来,也可能是stable diffusion需要更新,这时候就需要更新sd,更新的方式有两种:
1、如果安装了git,那么输入以下命令(需要全程可以访问github)
cd stable-diffusion-webui #先进入sd文件夹
git pull #自动更新
2、如果没有安装git,那么直接在github或网络上下载最新的项目,解压后替换原有的stable-diffusion-webui文件夹(注意之前下载的safetensors文件需要备份,否则还得重新下载)
常见问题
查看历史生成过的图片
Stable diffusion画的图会一直留在本地,可以在stable-diffusion-webui的outputs文件夹中找到所有生成过的图片
如何汉化stable diffusion
打开webui页面,切换到extensions页签,这里是安装插件的地方。然后切换到Available子页签,取消红框里的所有选项(否则可能无法搜索到汉化插件),点击load from按钮,会自动把所有的可安装插件都加载出来。在此页面按ctrl+F直接搜索CN,可以搜出zh_CN localization插件,直接点击install按钮即可。

安装完成之后切换到installed页签,点击Apply and restart UI按钮,此时就成功安装好了汉化插件

接着切换到Settings页签,选择User interface——localization选项,切换为zh_CN,点击Apply settings按钮,再点击旁边的Reload UI按钮,大功告成!

不显示 VAE 模型、CLIP 跳过层
网上大部分教程,webui页面都会有一个VEA模型和CLIP终止层数,而我的macos部署成功后不显示。
可以在设置页面,底部的“显示所有页面”的选项中,查找下图所示的快捷设置列表(设置项太多建议直接在网页搜索关键字)

然后把sd_vae和CLIP_ stop_at_last_layers两项选上后,选择保存设置,再点击重启webUI按钮,就出现了


报“Something went wrong”错误
部署完成后,打开软件发现有错误提示“Expecting value: line 1 column 1 (char 0)”

网上查到有人遇到同样的问题,说是开了网络代理梯子的原因,关闭梯子之后就好了。但是我找到了解决办法:
需要在webui-user.bat文件中的set COMMANDLINE ARGS=
这一行后面添加--no-gradio-queue之后就可以解决。但是我找到的是windows版本的,如果是linux系统,对应的文件是webui-user.sh。如果是macos,对应的文件则是 webui-macos-env.sh