机器配置:华硕zx50j。操作系统:windows 10
显卡:NVIDIA GeForce GTX 950M 2G显存(其实这个配置只能勉强能跑起来)
一.下载项目代码
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git 或直接去链接下载也可
二. 使用Anaconda搭建python虚拟环境
Anaconda官网下载地址:https://www.anaconda.com/products/distribution
无法访问官网的小伙伴可以用清华的源:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/
添加环境变量--找到设置变量的地方
2.1、创建python 3.10.6虚拟环境(项目仓库推荐使用3.10.6)咱就别犟,就用3.10.6。
conda create -n novelai python==3.10.6
conda env list
2.2、activate novelai 切换到刚创建好的虚拟环境中
三、查看Pytorch官网推荐的CUDA版本
官网地址:https://pytorch.org/get-started/locally/
目前官网推荐的版本已经到CUDA11.6了,我在写这个文档之前还能支持CUDA11
3.1、查看显卡驱动和CUDA版本
注:这个是英伟达的控制面板没有可以搜关键词下载程序
3.2、显卡驱动和CUDA之间的版本对应关系
官网地址:https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html
CUDA安装链接:https://developer.nvidia.com/cuda-toolkit-archive # 找到合适自己的版本下载安装。
3.3、安装Pytorch
将红框的部分复制出来在终端中执行;如果遇到connect timeout这类网络错误,就得自己想办法了,国内网络环境可能出不去 ,或者更换网络和镜像源了
四、进入项目根目录,安装第三方依赖库
python -m pip install -r requirements.txt # 安装第三方依赖库 ,安装有点慢要等会或者更换国内镜像源比较快一点
五、下载模型文件
这里要感谢Jack-Cui up主提供的模型文件,安全无毒;他的主页地址:https://space.bilibili.com/331507846
将模型文件解压缩放到项目目录下的models目录下:
六、运行Web UI
python launch.py # 这一步也会下载一些依赖,耐心等待即可;
当你看到这一步的时候,恭喜你,你已经搭建成功了;
分享我在运行中的报错
报错1:找不到GPU
(novelaiv1) E:\Python\project\stable-diffusion-webui>python launch.py
Python 3.10.6 | packaged by conda-forge | (main, Oct 7 2022, 20:14:50) [MSC v.1916 64 bit (AMD64)]
Commit hash: <none>
Traceback (most recent call last):
File "E:\Python\project\stable-diffusion-webui\launch.py", line 205, in <module>
prepare_enviroment()
File "E:\Python\project\stable-diffusion-webui\launch.py", line 151, in prepare_enviroment
run_python("import torch; assert torch.cuda.is_available(), 'Torch is not able to use GPU; add --skip-torch-cuda-test to COMMANDLINE_ARGS variable to disable this check'")
File "E:\Python\project\stable-diffusion-webui\launch.py", line 57, in run_python
return run(f'"{python}" -c "{code}"', desc, errdesc)
File "E:\Python\project\stable-diffusion-webui\launch.py", line 33, in run
raise RuntimeError(message)
RuntimeError: Error running command.
Command: "E:\Anaconda3\envs\novelaiv1\python.exe" -c "import torch; assert torch.cuda.is_available(), 'Torch is not able to use GPU; add --skip-torch-cuda-test to COMMANDLINE_ARGS variable to disable this check'"
Error code: 1
stdout: <empty>
stderr: Traceback (most recent call last):
File "<string>", line 1, in <module>
AssertionError: Torch is not able to use GPU; add --skip-torch-cuda-test to COMMANDLINE_ARGS variable to disable this check
这个问题其实就是你的CUDA版本和GPU驱动版本不匹配导致的,只要你的CUDA版本和GPU驱动版本能匹配上,这个问题就解决了,--skip-torch-cuda-test这个参数虽然能保证你能运行成功,但是你画画时会报错,没什么用。
报错2:显卡内存溢出
RuntimeError: CUDA out of memory. Tried to allocate 20.00 MiB (GPU 0; 2.00 GiB total capacity; 1.68 GiB already allocated; 0 bytes free; 1.72 GiB reserved in total by PyTorch) If reserved memory is >> allocated memory try setting max_split_size_mb to avoid fragmentation. See documentation for Memory Management and PYTORCH_CUDA_ALLOC_CONF
这个问题也好解决:有钱的主换个显存大的显卡,官方推荐4GB以上;像我这种没钱的主只能想些其他办法,我的解决办法就是打开NVIDIA控制面板把所用需要独显介入的工作全部换成集显工作。
到此结束 开始跑图。