Stable Diffusion 安装与常见问题解决(Mac 版)
Stable Diffusion (SD) 是主流 AI 绘画工具之一。本文介绍在 macOS 环境下安装 Stable Diffusion WebUI 的步骤及常见运行问题解决方案。
一、安装 Homebrew
/bin/bash -c "$(curl -fsSL https://gitee.com/ineo6/homebrew-install/raw/master/install.sh)"
brew -V
打印出 homebrew 版本号表示安装成功。
二、安装 Python 依赖
brew install cmake protobuf rust [email protected] git wget
也可以去官网下载安装包 3.10.9 或 3.10.10 手动安装。
三、下载 SD 包
- 从 Git 仓库直接克隆:
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui
- 解压资料包安装(如有)。
四、下载模型
将下载的模型文件放置于 stable-diffusion-webui/models/Stable-diffusion/ 目录下。支持 .ckpt 和 .safetensors 格式。
五、运行
在终端进入安装目录,运行 ./webui.sh。首次运行会自动安装依赖。
六、运行问题解决
1. Python 版本问题
SD 运行需要 Python 3,但系统默认可能是 Python 2。不建议覆盖系统 Python,可采用别名方式。
(1) 查看版本路径:
which python
which python3
(2) 编辑 profile 文件:
vi ~/.bash_profile
末尾追加内容:
alias python="/usr/local/bin/python3"
alias python2="/usr/bin/python"
(3) 生效启用:
source ~/.bash_profile
注意:新开终端窗口需重新执行 source 命令。
2. No SDP backend available
报错提示 PyTorch 版本过低(如 1.12.1),建议升级至 2.0+。
修改安装目录下的 webui-macos-env.sh 文件:
(1) 在 COMMANDLINE_ARGS 参数后添加 --reinstall-torch。
(2) 修改 TORCH_COMMAND 为新版:
export install_dir="$HOME"
export COMMANDLINE_ARGS="--skip-torch-cuda-test --upcast-sampling --no-half-vae --use-cpu interrogate --reinstall-torch"
export TORCH_COMMAND="pip install torch==2.0.1 torchvision==0.15.2"
export K_DIFFUSION_REPO="https://github.com/brkirch/k-diffusion.git"
export K_DIFFUSION_COMMIT_HASH="51c9778f269cedb55a4d88c79c0246d35bdadb71"
export PYTORCH_ENABLE_MPS_FALLBACK=1
3. Symbol not found: _VTRegisterSupplementalVideoDecoderIfAvailable
通常因 OpenCV 版本过旧导致,可手动更新:
cd venv/bin
source activate
./python3.10 -m pip install --upgrade pip
pip3 install opencv-python==4.6.0.66
deprecate
4. LayerNormKernelImpl not implemented for 'Half'
此错误通常与显存不足或半精度计算有关。修改运行方式使用全精度。
编辑 webui-user.sh,添加:
export COMMANDLINE_ARGS="--precision full --no-half --skip-torch-cuda-test"
或直接运行:
./webui.sh --precision full --no-half
七、总结
本地部署 Stable Diffusion 确实对硬件有一定要求,生成速度可能较慢。除了环境配置正确外,选择合适的模型和插件也是提升生成质量的关键。通过上述步骤调整配置文件,可有效解决 Mac 环境下常见的依赖冲突和计算精度问题。