其实要在本地部署 stable-diffusion 不难,只要有“魔法”一切都水到渠成,如下图:
(base) MacBook-Pro python % git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui
Cloning into 'stable-diffusion-webui'...
remote: Enumerating objects: 31021, done.
remote: Counting objects: 100% (24/24), done.
remote: Compressing objects: 100% (16/16), done.
remote: Total 31021 (delta 13), reused 14 (delta 8), pack-reused 30997
Receiving objects: 100% (31021/31021), 33.57 MiB | 1.53 MiB/s, done.
Resolving deltas: 100% (21751/21751), done.
如果没有魔法就建议到 gitee 中找一下是否有对应的镜像仓库,我在 gitee 中找到的是:
https://gitee.com/ai-liam/AUTOMATIC1111-stable-diffusion-webui.git
接着就是通过 brew 进行必要软件的安装了…这个 homebrew 应该大家都有安装的吧,没有装的话可以到
https://github.com/Homebrew/brew/releases/tag/4.2.7
找到 Homebrew-4.2.7.pkg 进行下载安装。
之所以到 github 上找安装包安装是因为在 brew 官网是推荐使用脚本进行安装的,问题是这个脚本是需要“魔法”才能够访问的,因此还是上 github 找安装包吧。如果还是访问不了 github 就可以到以下的 gitee 地址进行安装
https://gitee.com/cunkai/HomebrewCN.git
安装完成之后就能够进行 stable-diffusion 项目所需的插件安装,如下图:
(base) MacBook-Pro python % brew install cmake protobuf git wget
Running `brew update --auto-update`...
Warning: Treating cmake as a formula. For the cask, use homebrew/cask/cmake
Warning: cmake 3.28.2 is already installed and up-to-date.
To reinstall 3.28.2, run:brew reinstall cmake
Warning: protobuf 25.2 is already installed, it's just not linked.
To link this version, run:brew link protobuf
Warning: git 2.43.0 is already installed and up-to-date.
To reinstall 2.43.0, run:brew reinstall git
Warning: wget 1.21.4 is already installed and up-to-date.
To reinstall 1.21.4, run:brew reinstall wget
由于我已经安装过了,因此显示的都是 reinstall 的提示。
再之后就可以下载训练好的模型放到指定的文件夹内。我这边推荐的是 Hugging Face 的 model(相对来说多而全),至于 Hugging Face 也是要“魔法”才能够访问。但是这难不倒万能的网友,我找到了一个国内 Hugging Face 的镜像网站
https://hf-mirror.com/
通过搜索就能够找到所需资源,如下图:
之后选择“Files and versions”就能够找到所需的模型直接下载即可,如下图:
我是选择后缀为 .safetensors 的来下载的。下载之后需要放入到以下路径:
${pwd}/stable-diffusion-webui/models/Stable-diffusion/v1-5-pruned.safetensors
即可,至此所有前期工作都已经完成。 如果你有其他想要的模型也可以使用相同的方式进行操作,这真的非常 nice!!
接下来就需要执行项目中的 webui.sh 脚本进行下一步的自动安装,一般到了这一步没有“魔法”基本都会报错,因为需要安装墙外的资源,这里就需要对脚本进行修改,具体的就是将国内源替换一下就好。
项目安装完毕,页面也可以正常打开了,但是运行时也许会报错,这大几率是因为项目没有检测到 cuda 驱动引起的(毕竟人家默认就是要使用 Nvidia 显卡来生图),但 Mac 是无法使用 Nvidia GPU,因此需要在启动的时候还需增加参数,如下图:
./webui.sh --skip-torch-cuda-test --precision full --no-half
这样就能够正常运行了。