历史文章/不再维护

Stable Diffusion的下载和安装

注意:Stable Diffusion的安装和运行所需要的内存要大于16G。如果系统内存太小,则不建议安装,大概率会安装失败或者很难流畅加载运行。另外,如果只有集显或AMD卡,没有Nvidia显卡,那么在Windows系统下无法使用GPU加速(需要用到Torch),生图的速度会比较慢。

需要的软件环境:Python环境、Git环境。如果需要用GPU进行计算,还要确保有GPU驱动。

Stable Diffusion WebUI 下载:https://github.com/AUTOMATIC1111/stable-diffusion-webui。也可使用git命令进行下载:

git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git

Stable Diffusion 模型下载:https://huggingface.co/stabilityai 或其他网站。例如:

wget https://huggingface.co/stabilityai/stable-diffusion-2-1/resolve/main/v2-1_768-ema-pruned.safetensors

Stable Diffusion 的安装步骤:

  • 首先要确认下已经安装了Python环境和Git环境,命令为:python --version 和 git --version。
  • 下载 .safetensors模型文件 或 .ckpt 模型文件,将模型文件放置至 ./stable-diffusion-webui/models/Stable-diffusion 文件夹中。
  • 运行 ./stable-diffusion-webui 文件夹下的 webui.bat 文件(Windows系统)或 webui.sh文件(Linux系统),将自动安装 Stable Diffusion WebUI 所需要的python库,并启动。
  • 打开提示的“http://127.0.0.1:端口”网页。

运行webui.sh前,可以在webui-user.sh中设置一些参数,例如:

export COMMANDLINE_ARGS="-f --listen --gradio-auth your_username:your_password --port 7860 --enable-insecure-extension-access"

另外,使用命令 git pull 可以拉取远程最新文件并与本地代码合并,实现更新最新版本的效果。

目前自己遇到的报错和解决方法:

(1)Torch is not able to use GPU

  • 如果是Windows系统,有Nvidia显卡,但没有安装好cuda版本的Torch。解决方法:安装Nvidia驱动。通过命令 nvidia-smi 验证是否安装成功。另外,可能需要卸载Torch后重新安装cuda版本的Torch。参考:https://pytorch.org/get-started/locally/
  • 如果是Windows系统,没有Nvidia显卡,那么没法安装cuda版本的Torch。在Windows下,Torch暂时不支持其他GPU。解决方法:文本打开webui-user.bat文件,增加为“set COMMANDLINE_ARGS=--skip-torch-cuda-test”,改为运行webui-user.bat文件。该方法可以跳过GPU,改用CPU,但运行速度会减慢很多。
  • 如果是Linux系统,有显卡,可以安装对应显卡版本的Torch,同样参考:https://pytorch.org/get-started/locally/。另外,GPU的驱动可以使用命令进行安装(某个版本):wget https://cn.download.nvidia.com/tesla/460.73.01/NVIDIA-Linux-x86_64-460.73.01.run,之后 sh 该文件。或者使用命令:sudo apt-get update 和 sudo ubuntu-drivers autoinstall。
  • 如果是Linux系统,无显卡,那么修改webui-user.sh文件,在COMMANDLINE_ARGS处增加 --skip-torch-cuda-test,分别运行webui-user.sh文件和webui.sh文件。

(2)raise ReadTimeoutError(self._pool, None, "Read timed out.")

  • 大概率是网络问题,确定搭好梯子后多试几次。
  • 或者试着换成阿里源、清华源、中科大源等其他源试试。由于源可能不是最新的,这个方法可能会无效。换源命令参考:安装Python环境。如果仍然出错,可以根据提示使用手动命令下载和安装。

(3)在root角色下安装报错

  • 解决方法:将命令 sudo sh webui.sh 改为 sudo bash webui.sh -f。

(4)ERROR: Cannot activate python venv, aborting…

  • 解决方法:可以重新下载stable-diffusion-webui包后,再运行.sh文件或.bat文件。

(5)Cannot locate TCMalloc (improves CPU memory usage)

  • 安装这个解决:sudo apt install --no-install-recommends google-perftools

(6)ImportError: libGL.so.1: cannot open shared object file: No such file or directory

  • 运行命令:apt-get update
  • 运行命令:apt install libgl1-mesa-glx

(7)error: subprocess-exited-with-error

  • 解决方法:在对应的Python环境中安装setuptools。例如:"./stable-diffusion-webui/venv/bin/python3" -m pip install --upgrade setuptools

(8)加载模型时提示 "LayerNormKernelImpl" not implemented for 'Half'。

  • 增加:--no-half。例如:如果是在Windows系统下,文本打开webui-user.bat文件,增加为“set COMMANDLINE_ARGS=--skip-torch-cuda-test --no-half”,运行webui-user.bat文件。在Linux系统下,同样打开webui-user.sh文件,在COMMANDLINE_ARGS处增加 --skip-torch-cuda-test --no-half,分别运行webui-user.sh文件和webui.sh文件。

(9)modules.devices.NansException: A tensor with all NaNs was produced in Unet.

  • 增加:--disable-nan-check。增加后可能会出现黑图,可以先换其他模型,或者额外加上 --precision full --no-half 试试。

(10)网页打开后显示 Something went wrong Expecting value: line 1 column 1 (char 0)

  • 解决方法:关闭梯子。

(11)服务器使用远程访问、设置密码、固定端口

  • 在COMMANDLINE_ARGS中继续增加参数:--listen,可实现非127.0.0.1地址访问。
  • 在COMMANDLINE_ARGS中增加:--gradio-auth 用户名:密码。
  • 在COMMANDLINE_ARGS中增加:--port 7860。

(12)安装插件时报错 AssertionError: extension access disabled because of command line flags

  • 在COMMANDLINE_ARGS中增加:--enable-insecure-extension-access。

Stable Diffusion插件推荐:

1,624 次浏览

【说明:本站主要是个人的一些笔记和代码分享,内容可能会不定期修改。为了使全网显示的始终是最新版本,这里的文章未经同意请勿转载。引用请注明出处:https://www.guanjihuan.com

发表评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注

Captcha Code