Home » AI » Windows下Stable Diffusion WebUI使用AMD显卡指北

Windows下Stable Diffusion WebUI使用AMD显卡指北

编 辑:Y ┊ 时 间:2024年01月04日 ┊ 访问: 20 次

Stable Diffusion(下称SD)

SD有纯命令行和带WebUI之分,本文针对的是带ui的版本。这两个版本的安装方式稍有不同。

安装流程

前置要求

SD安装前,首先要有git和Python3.10(应该在3.10.6以上)。

注意,git是必须装的,从GitHub上把压缩包下载下来是不够的。安装过程中还会拉取在线repo,别图省事,别抖机灵。

git是种管理器,比如代码版本管理,文档版本管理等等。有了git之后相当于给程序做了N多快照,可以随时恢复到任何一个节点。

在这里git的作用更像一个下载器。

Python不用介绍了吧,如果不知道去搜索一下再回来吧。Python安装过程中选中“Add Python to PATH”,如果忘了选也问题不大,将Python安装路径和Scripts添加到环境变量即可,具体方法网上应该有很多,搞定之后再回来。

Adrenalin显卡驱动,这个东西不会有人不装吧?

(可选)虚拟环境

很多教程里都用到了conda环境,其实这不是必须的,如果你没有其他Python使用需求,直接在系统里安装就可以。

这conda虚拟环境主要是应用于你需要多种不同版本的Python时,比如A软件需要Python3.7,B软件需要Python3.12,conda就派上用场了。

除此之外SD WebUI运行时会用到venv,这也是一种虚拟环境,只能用于隔离引用不同版本的程序包,不能用来指定不同的Python版本。另外要注意,virtualenv与venv不是一回事。好了,如果你用conda的话,似乎不太用考虑venv的问题,只要都在conda环境下就可以了。如果直接使用操作系统的Python环境,如果有些操作无效的话,尝试激活venv环境后再试一次。本文使用conda介绍。

安装miniconda

安装包不放了,到官网下载即可。安装完之后开始菜单里就有了miniconda,里面有PowerShell和terminal两种方式,我的环境下PowerShell抱错,不知原因,无处下手,但是terminal是可以正常使用的,部署也都通过terminal设置,没有问题;但我还是推荐你使用PowerShell方式部署。

git下载repo

使用cd命令导航到一个空目录,或者用mkdir命令创建个新的

如果是使用CUDA,也就是Nvidia显卡的话,(要先安装上CUDA工具哦)用这句:

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

AMD显卡用这句:

git clone https://ghproxy.com/https://github.com/lshqqytiger/stable-diffusion-webui-directml.git

就是下载文件到当前目录,AMD显卡还要下载下面两个库,直接给出命令了:

git clone https://ghproxy.com/https://github.com/lshqqytiger/k-diffusion-directml.git
git clone https://ghproxy.com/https://github.com/lshqqytiger/stablediffusion-directml.git

以上两个repo的下载位置无所谓,下载后将k-diffusion-directml文件夹中的全部内容(不要包括主文件夹)移动到“SD主目录\repositories\k-diffusion”下;将stablediffusion-directml文件夹中的全部内容移动到 “SD主目录\repositories\stable-diffusion-stability-ai”下。

接下来修改一下SD目录下的launch.py,主要是使用国内镜像下载库,比如说pytorch有2.3G的体积,如果不使用国内镜像下载起来就比较慢了。用文本编辑器,打开launch.py,像上面一样,将

https://github.com
改成

https://ghproxy.com/https://github.com
改完后确认你修改的没有问题,别改多了。

然后还有一个关键步骤,使用文本编辑器打开SD主目录\webui-user.bat,在“set COMMANDLINE_ARGS=”后面加入“--precision full --no-half”,最终应该像这样:

set COMMANDLINE_ARGS=--precision full --no-half

我的显卡是R9 370,只有4G显存,需要--no-half --medvram才能跑起来,不然一跑图显存必爆,如果有更小显存或者显存爆了,还可以试试添加--lowvram,内存小的话也可以试试--lowram,前提是有足够的显存,这种情况应该很少吧。

下载要使用的模型和LoRA

模型下载可以到Hugging Face – The AI community building the future.Civitai | Stable Diffusion models, embeddings, hypernetworks and more查看。

下载的如果是checkpoint类型的文件,放入“SD主目录\models\Stable-diffusion”中;LoRA类型放入“SD主目录\models\Lora”中。

自动补全程序运行所需要的包

接着就是在conda中执行webui-user.bat,程序会自动下载所需要的文件并自动安装,这一步通常会持续一段时间,还可能会因为网络问题或者GitHub访问问题中断报错,如果是网络问题,重新运行一次就好了。如果是其他问题就得具体问题具体分析了。

在conda中激活你要使用的虚拟环境,比如

conda activate -n 环境名

或者直接在开始菜单中选择miniconda命令行的快捷图标,直接继续。

像我目前还没有什么别的项目,加上懒,就直接用了base,如果一切正常,命令行应该像这样:

(base) C:\Users\administrator>

前面的括号内就是现在的虚拟环境名称。

用cd命令导航到SD主目录下,然后执行

.\weibui-user.bat

如果最终得到类似如下内容,说明启动成功了

venv "E:\sd\stable-diffusion-webui-directml\venv\Scripts\Python.exe"
Python 3.10.9 | packaged by conda-forge | (main, Jan 11 2023, 15:15:40) [MSC v.1916 64 bit (AMD64)]
Commit hash: c88824995d87be36a62b110dd509ff7ccb6eeaa2
Installing requirements for Web UI
Launching Web UI with arguments: --precision full --no-half
Warning: caught exception 'Torch not compiled with CUDA enabled', memory monitor disabled
No module 'xformers'. Proceeding without it.
Loading weights [fc2511737a] from E:\sd\stable-diffusion-webui-directml\models\Stable-diffusion\chilloutmix_NiPrunedFp32Fix.safetensors
Creating model from config: E:\sd\stable-diffusion-webui-directml\configs\v1-inference.yaml
LatentDiffusion: Running in eps-prediction mode
DiffusionWrapper has 859.52 M params.
Applying cross attention optimization (InvokeAI).
Textual inversion embeddings loaded(0):
Model loaded in 214.9s (load weights from disk: 2.3s, create model: 0.8s, apply weights to model: 151.1s, apply dtype to VAE: 0.1s, move model to device: 59.7s, hijack: 0.2s, load textual inversion embeddings: 0.6s).
Running on local URL:  http://127.0.0.1:7860

To create a public link, set `share=True` in `launch()`.

Warning: caught exception 'Torch not compiled with CUDA enabled', memory monitor disabled.这句无需理会。

No module 'xformers'. Proceeding without it.xformers对使用AMD显卡来说无效。

然后浏览器访问http://127.0.0.1:7860 或者http://localhost:7860就可以访问所谓的webui了,个人觉得比命令行直观方便。

安装中文语言

https://github.com/VinsonLaro/stable-diffusion-webui-chinese



Copyright © 2026 Y 版权所有.网站运行:13年238天21小时27分