确保电脑符合Stable Diffusion的系统需求
1. 电脑硬件需求
最低配备 | 建议配备 | 注解 | |
---|---|---|---|
显卡(GPU) | GTX1050Ti | RTX3060Ti | 支持的显卡芯片有Nvidia/AMD/Intel Arc/Apple M。 |
显卡显存(VRAM) | 4GB | 8GB | 显卡的VRAM最低要4GB才不会算到一半内存不足,若要训练模型就得8GB以上了。 |
内存(RAM) | 8GB | 16GB | |
保存空间 | 20GB,最好是SSD | ||
处理器(CPU) | x86架构的Intel或AMD处理器皆可。若为Mac电脑建议使用搭载M系列芯片的机型 | ||
网络连接 | 可以正常连接到Github和Youtube的网络 |
-
要生成512x512的图,显卡VRAM在4GB以下的很容易遇到内存不足的问题,并且生图速度很慢。
-
尽管可以纯CPU,但是速度会非常慢。一张显卡30秒就能算好的图,CPU要算10分钟。因此用独立显卡跑Stable Diffsuion仍是比较好的选择。
-
硬件配置较低的话,用云端服务跑也是可以,例如Google Colab,订阅Pro服务扩容磁盘推荐某宝店铺:遇见野鱼工作室亲测可用。
2. 操作系统需求
GNU/Linux
测试可以跑的Linux发行版:
- Debian 12
- Ubuntu 22.04 LTS
- Fedora 38
- openSUSE Tumbleweed
- Arch Linux
- Manjaro
- Gentoo (使用glibc的profile)
Windows
最低要求为Windows 10 64位,请确保系统已更新至最新版本。Windows 7不支持。
macOS
最低要求为macOS Monterey (12.5),可以的话请使用最新版macOS。
建议使用搭载Apple Silicon M芯片 (M1、M2) 的Mac机型。
旧款Mac需配备AMD独立显卡,只有Intel内显的不行。
可能是扩展导致的错误
有时除了Stable Diffusion WebUI本身问题外,也有可能是你安装的扩展出错导致程序无法启动。请尝试删除stable-diffusion-webui/extensions
下的某个新安装的扩展文件夹,或是将整个extensions文件夹先移动到其他位置,再尝试启动SD WebUI。也可以尝试将Stable Diffusion WebUI主程序更新到最新版本。
RuntimeError: CUDA Out of memory
显卡的VRAM不足。Stable Diffusion WebUI的显卡VRAM最低要求为4GB,要无压力的玩建议8GB以上。打开webui-user.bat
,在***MANDLINE_ARGS
后面加入--medvram
或--lowvram
参数,降低VRAM使用量。如果还是在生图时出现此消息,建议降低生图的分辨率,或是买张更好的显卡,或是改用Google colab。
No module named pip
在stable-diffusion-webui
文件夹目录下,打开命令行,运行python3 -m ensurepip
安装pip,然后删除venv
文件夹,重新运行webui-user.bat
因为文件包含病毒或潜在的垃圾软件,所以未顺利完成
如果你的Stable Diffusion WebUI是从github下载,模型也是从HuggingFace或Civitai等安全网站下载,则可以断定是误判。暂时关闭Windows Defender之类的杀毒软件,再删除stable-diffusion-webui\venv
文件夹,重新运行webui-user.bat
。
RuntimeError: Couldn’t install torch.
几个可能:
-
确认Python版本为3.10.6,并确认是否有安装最新GPU驱动(Nvidia需要额外安装CUDA)。
-
杀毒软件问题。
-
非Nvidia GPU用户也可能遇到此错误,于
webui-user.bat
的***MANDLINE_ARGS
加入--skip-torch-cuda-test
参数跳过检测。 -
你没有独显,所以它不给跑。没有独显请考虑用google colab。
Torch is not able to use GPU
如果显卡是Nvidia的话,请确认CUDA有正确安装。
显卡是AMD的话,编辑webui-user.bat
,加入***MANDLINE_ARGS=--medvram --opt-split-attention --skip-torch-cuda-test
修改完之后,删除venv
文件夹,重新启动WebUI。
fatal: unable to a***ess Recv failure: Connection was reset
网络问题,通常因为***对国外的连接干扰导致相关文件下载失败。检查一下代理软件是否正常连接,开启全局代理看看是否解决,或者更换部分地址为国内镜像源。
AssertionError: extension a***ess disabled because of ***mandline flags
webui-user.bat
(或webui-user.sh
)的***MANDLINE_ARGS
有加入--share
或--listen
参数就会无法从网页界面装扩充功能,这是出于安全性考量。
- 将
--share
或--listen
参数删除。 - 额外加上
--enable-insecure-extension-a***ess
参数。 - 改用Git clone的方式来安装扩充功能:关闭SD WebUI。于
stable-diffusion-webui\extensions
文件夹打开终端机,输入git clone <保存库网址>
下载扩充功能。
modules.devices.NansException: A tensor with all NaNs was produced in U***.
此错误可能会发生在含有VAE的模型生成图片的时候,会导致算出来结果是黑图。
打开webui-user.bat
,***MANDLINE_ARGS
后面额外加上--no-half --no-haf-vae
参数。
OSError: [Errno 28] No space left on device
磁盘空间不足了,清理一下无用的大文件释放磁盘空间,然后删除stable-diffusion-webui里面的venv
文件夹,再重新运行webui-user.bat重装。
127.0.0.1:7860拒绝连接
可能原因太多,提供几个可能解决方案:
- 请确认打开网址前命令行是否还开着,并有显示
Running on Local URL : http://127.0.0.1:7860
的字样 - 网址改用
http://localhost:7860
连接 - 用记事本打开
C:\Windows\System32\drivers\etc\hosts
,确认里面有无127.0.0.1 localhost
这一行。 - 请确认电脑没有运行其他服务器的程序(如Microsoft IIS),导致占用通信端口。
- 打开命令行,运行
ipconfig /flushdns
刷新DNS纪录 - 暂时关闭防火墙
DefaultCPUAllocator: not enough memory: you tried to allocate
电脑内存不足。跑Stable Diffusion WebUI的内存至少要8GB,低于此数值的话,Windows用户请试着开启虚拟内存,不过建议还是多插条内存或者换条大的,Linux用户则是增加SWAP的大小。
RuntimeError: unexpected EOF, expected more bytes. The file might be corrupted.
可能是文件损坏,删除这些文件夹:stable-diffusion-webui\models\GFPGAN
、stable-diffusion-webui\models\Codeformer
、stable-diffusion-webui\repositories\CodeForme
然后重启SD WebUI让它重新下载脸部模型。
Cloning Taming Transformers into repositories\taming-transformers…
这不是错误,单纯是还在下载而已。有时候下载国外地址会比较慢,要耐心等。如果下载失败,删除venv
文件夹,并晚点重新运行webui-user.bat
试试。
can’t open file ‘/stable-diffusion-webui/launch.py
如果运行webui-user.sh
出现此错误,则编辑webui-user.sh
,将install_dir
后面改成$(pwd)
。
如果是在Google Colab遇到此错误,代表程序没装成功,请看一下console输出,检查前面的指令是否有哪步运行出错。
Couldn’t launch python, exit code 9009
Windows用户请重装Python 3.10.6,并确认有在安装界面勾选Add Python to PATH
libtcmalloc.so.4 python3: version `GLIBCXX_3.4.30’ not found (required by /usr/lib/libtcmalloc.so.4)
可能是暂时性的bug。启动conda虚拟环境:conda activate sdwebui
,然后安装g***:conda install -c conda-forge g***
,接着退出虚拟环境:conda deactivate
,再尝试启动WebUI。
PyTorch has CUDA Version=11.7 and torchvision has CUDA Version=11.8. Please reinstall the torchvision that matches your PyTorch install.
可能是暂时性的bug。
如果有使用Anaconda,启动conda虚拟环境:conda activate sdwebui && source venv/bin/activate
安装旧版本PyTorch:pip uninstall torch && pip install xformers==0.0.16rc425 torch==1.13.1+cu117 torchvision==0.14.1+cu117 --extra-index-url https://download.pytorch.org/whl/cu117
接着退出虚拟环境:deactivate && conda deactivate
再尝试启动WebUI。
min and input tensors must be of the same shape
可能是pytorch版本不兼容,例如修改脚本webui-macos-env.sh
将以下行
export TORCH_***MAND="pip install torch==1.12.1 torchvision==0.13.1"
替换成下面
export TORCH_***MAND="pip install torch==1.13.1 torchvision==0.14.1"
然后重新安装torch
./webui.sh --reinstall-torch