上节课中,训练营3期02,SD本地环境,有人出现xformers安装问题:
xFormers was built for: PyTorch 2.0.0+cu118 with CUDA 1108 (you have 1.13.1+cu117)
xformers要求pytorch 2.0.0与cu118,而早一点安装过SD webui本地版的,大部分都是pytorch 1.13.1+cu117,版本不匹配。
最新的SD webui,已经用上了pytorch 2.0.1 + cuda 11.8:
而xformers两周前也已经支持了 pytorch 2.0.1。https://github.com/facebookresearch/xformers/commit/a721581f01812eae2f184238b072969b0e04110a
这样都用最新的版本,有助于发挥最高性能。
提示:
安装新SD webui前,建议备份老版本的运行环境。
备份方法:
1. 之前是按SD webui官网最常规办法装的(没有使用conda)
即上个教程里的安装方式1或2:
👉 Stable Diffusion webui 本地安装教程 Windows
则可以直接复制 stable-diffusion-webui 整个文件夹,重命名备份。
然后同样的方法安装,默认就是最新的SD webui。
2. 之前是用conda安装
可以在当前版本的环境基础上复制一套新环境出来,再在新环境里升级pytorch。
conda create -n sd-pytorch2 --clone sd-pytorch1
其中 sd-pytorch2 是新环境的名称示例,sd-pytorch1 是你当前旧环境名称示例。
然后在新环境sd-pytorch2 里通过conda安装 PyTorch 2.0.0+cu118:
conda install pytorch==2.0.0 torchvision==0.15.0 torchaudio==2.0.0 pytorch-cuda=11.8 -c pytorch -c nvidia
或者直接安装最新的 pytorch 2.0.1(默认版本):
conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia
装好 SD webui 最新版后,重装xformers
办法是直接添加启动参数:
--reinstall-xformers --xformers
添加后直接正常运行 webui-user.bat 即可。
有人测试结果比xformers还快(我4090没测出明显区别)。
github.com/AUTOMATIC1111/stable-diffusion-webui/issues/10494#issuecomment-1552882574
方法同样是添加命令行参数即可:
--opt-sdp-attention --opt-sdp-no-mem-attention --opt-channelslast
添加后直接正常运行 webui-user.bat。
提示:
这些方法有的也需要安装 Pytorch 2.0.x,详细查询参数文档:
https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/Command-Line-Arguments-and-Settings
当前xformers最新是0.0.17,可以尝试安装老版本,以适应旧版的pytorch和cuda。
此法适合SD环境相对稳定,又不想轻易大改的情况。
仅改xformers版本,即使装坏了,不影响SD webui运行,只是xformers不起作用。
可在xformers官方repo里找老版本:
https://github.com/facebookresearch/xformers
总结
安装最新SD webui前,备份旧版本。
用其他优化方式替换xformers。
高性能显卡无需xformers。
对实验编程会员,安装过程遇到的任何问题,都可以在情报中心进行答疑。
训练营3期火热进行中。
Beilife 2023-04-14
麦当别跟我抢 2023-05-24