MacBook Pro安装Stable-Diffusion遇torch_directml缺失错误求助
macOS下解决Stable Diffusion WebUI的torch_directml缺失错误
你的错误根源是WebUI试图加载仅Windows系统支持的torch_directml组件,Mac环境完全不兼容这个模块,下面是针对你的2019款MacBook Pro的具体解决步骤:
1. 调整启动参数,启用Metal显卡加速
直接在终端执行启动命令时添加适配Mac的参数,替代原有带DML的启动配置:
cd /Users/stable-diffusion-webui ./webui.sh --skip-torch-cuda-test --no-half --use-metal --no-download-sd-model
参数说明:
--skip-torch-cuda-test:跳过CUDA检测(Mac没有NVIDIA CUDA环境)--no-half:禁用半精度计算,避免AMD Metal的兼容性问题--use-metal:启用Apple Metal后端,调用你的AMD Radeon Pro 5500M显卡加速--no-download-sd-model:如果已经手动下载过模型,加这个参数避免重复下载
2. 重装适配Mac的PyTorch版本
确保虚拟环境里的PyTorch是支持Metal的版本:
- 进入WebUI的虚拟环境:
cd /Users/stable-diffusion-webui source venv/bin/activate
- 卸载现有PyTorch,重新安装Mac兼容版本:
pip uninstall torch torchvision torchaudio -y pip install torch torchvision torchaudio torchmetrics --index-url https://download.pytorch.org/whl/cpu
注:Mac的PyTorch CPU版本已经内置Metal加速支持,无需单独安装GPU版本
3. 禁用DML相关配置(如果之前误开启)
如果WebUI的配置里默认启用了DML后端,手动修改配置文件:
- 打开
/Users/stable-diffusion-webui/config.json - 找到
"backend"字段,将其值从"dml"改为"metal"或"cpu" - 保存文件后重启WebUI
4. 验证运行状态
启动WebUI后,查看终端输出,如果出现Using device: metal或检测到AMD Radeon Pro 5500M的相关信息,说明配置成功。
针对你的设备额外提示:
- 16GB内存基本够用,但生成大分辨率(比如1024×1024以上)图片时,建议关闭其他后台程序释放内存
- macOS Sonoma 14.0对Metal的支持稳定,无需额外系统补丁
内容的提问来源于stack exchange,提问作者Vitchakorn Poonyakanok
相关产品推荐
相关产品推荐

