Stable-Diffusion-web UI运行环境搭建和界面配置
前言
Stable Diffusion是近年来热门的扩散模型,本文详细讲述Stable Diffusion的UI界面的环境搭建和配置过程,搭建完成后的界面运行如下所示:
一、论文
扩散模型(Diffusion Model,DM)是近年来热门的一类生成模型。DM模型于2020年首次提出用于图像生成,主要实现对图像前向扩散和反向扩散的过程,论文链接如下:
- Denoising Diffusion Probabilistic Models
- arXiv:https://arxiv.org/abs/2006.11239
若下载速度慢或无法下载,给出分享链接:
- 链接:https://wwte.lanzouj.com/ib0Pc278zffi
- 密码:bgpw
2022年在CVPR会议上提出Latent Diffusion Models(LDMs)模型,以实现更大分辨率的图像生成,论文如下:
- High-Resolution Image Synthesis with Latent Diffusion Models
- arXiv:https://arxiv.org/abs/2112.10752
若下载速度慢或无法下载,给出分享链接:
- 链接:https://wwte.lanzouj.com/iaS7w278znof
- 密码:285t
二、源码下载
Stable Diffusion被认为是LDMs模型的升级版,它在模型结构和训练数据上进行了优化,以提供更加稳定和高质量的图像生成能力,GitHub源码下载链接如下:
https://github.com/CompVis/stable-diffusion
但是,基于纯代码的方式修改和调试并不容易,且对于不同功能的切换实现耗时较大。因此,有位大佬AUTOMATIC1111
开源了一个基于Stable Diffusion Web的UI界面项目,名为stable-diffusion-webui,通过在网页界面中直接进行操作即可实现Stable Diffusion的各个功能,GitHub源码下载链接如下:
- stable-diffusion-webui
- https://github.com/AUTOMATIC1111/stable-diffusion-webui
若下载速度过慢或无法下载,给出分享链接:
- 链接:https://wwte.lanzouj.com/iou2r278zcsd
- 密码:i4ik
下载后对压缩包进行解压得到stable-diffusion-webui文件夹。
三、权重模型和文件下载
该节对Stable Diffusion的UI界面需要加载和配置的相关模型文件进行说明,包括sd-v1-4.ckpt模型、openai/clip-vit-large-patch14模型和库文件的下载。
(1)下载sd-v1-4.ckpt模型
下载Stable Diffusion最基本的权重模型文件,官网模型网站为https://huggingface.co/CompVis/stable-diffusion。
下拉网页至“Model Access”这一栏,选择“stable-diffusion-v-1-4-original”这一项,如下图:
之后,里面包含两个权重模型文件,分别为sd-v1-4.ckpt和 sd-v1-4-full-ema.ckpt。
sd-v1-4.ckpt模型大小为4GB, sd-v1-4-full-ema.ckpt模型大小为7GB,下载官方的权重文件模型sd-v1-4.ckpt
。
若下载速度慢或无法下载,给出百度云分享链接:
sd-v1-4.ckpt模型文件下载后放置于文件夹stable-diffusion-webui/models/Stable-diffusion下面。
(2)下载openai/clip-vit-large-patch14模型
下载CLIP多模态模型,官方下载openai/clip-vit-large-patch14
模型,总共下载13个文件。
- openai/clip-vit-large-patch14下载:
- 官网链接:https://huggingface.co/openai/clip-vit-large-patch14/tree/main
若下载速度慢或无法下载,可用下面两种方式下载:
①在魔塔社区网站下载:
②采用Gitee码云下载:需要安装Git软件,在终端输入以下指令即可下载:
git clone https://gitee.com/hf-models/clip-vit-large-patch14.git
下载完后的所有文件需要放置于openai/clip-vit-large-patch14下面,自行创建openai和clip-vit-large-patch14的文件夹,整个文件夹放在stable-diffusion-webui文件夹下面。
(3)下载库文件
库文件的下载需要安装Git软件,Stable Diffusion程序运行时会调用多个python库,需要在Git中采用git clone指令克隆复制到本地,指令如下,总共克隆5个仓库:
git clone https://github.com/salesforce/BLIP.git
git clone https://github.com/Stability-AI/generative-models.git
git clone https://github.com/crowsonkb/k-diffusion.git
git clone https://github.com/Stability-AI/stablediffusion.git
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui-assets.git
上述5个文件夹克隆下来后如下图所示,文件夹名称分别为BLIP、generative-models、k-diffusion、stable-diffusion-stability-ai 和 stable-diffusion-webui-assets:
克隆下来后在stable-diffusion-webui文件夹内创建一个repositories文件夹,放置于stable-diffusion-webui-master/repositories文件夹中。
注意:以上文件如果在GitHub中直接下载的话可能会导致程序报错。
若克隆的速度慢或失败,给出克隆后这5个文件夹的分享链接,下载的压缩包直接解压后放入repositories文件夹中即可:
- BLIP、generative-models、k-diffusion、和 stable-diffusion-webui-assets文件夹
- 链接:https://wwte.lanzouj.com/i3hVY28ac6la
- 密码:676t
- stable-diffusion-stability-ai文件夹
- 链接:https://pan.baidu.com/s/1o-LVfUJVkj5rGQdGk_Ibog
- 密码:4z8m
四、创建和搭建虚拟环境
(1)创建虚拟环境
在终端输入指令创建虚拟环境:
conda create -n stable_diffusion_webui python==3.10.6
需要创建Python版本为3.10.6的环境,stable_diffusion_webui为虚拟环境名称,可自行设定。
若需要删除虚拟环境,在终端输入指令:
conda env remove --name stable_diffusion_webui
(2)安装依赖库
在stable-diffusion-webui文件夹中,包括有launch.py、requirements_versions.txt、webui.bat和webui-user.bat等文件,如下图所示,对应的作用在图中已分别标出,本节中需要用到requirements_versions.txt文件。
在requirements_versions.txt中,除了PyTorch包的版本外,其它所需安装的各个库及其对应的版本已说明,这里需要指定PyTorch的安装版本,设定 torch==2.1.2
,否则默认情况下会安装torch的最新版本。
清华镜像安装所需依赖库的指令如下:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements_versions.txt
运行指令,即可开始进行依赖库的安装。
(3)下载安装PyTorch
上一步安装完成后,安装后的PyTorch不支持GPU,需要卸载后重新安装对应GPU版本的PyTorch包。卸载时终端输入pip uninstall torch完成卸载。重新安装2.1.2版本的PyTorch采用离线安装的方式,下载链接:
下载完成后在终端使用pip install指令对下载的whl文件进行安装。
安装完成后,可采用torch.cuda.is_available()指令查看是否为GPU版本的PyTorch。
五、界面加载和中文汉化
本节简要介绍stable-diffusion-webui界面加载和中文汉化的过程。
(1)界面加载设置
修改stable-diffusion-webui文件夹中的批处理文件webui.bat和webui-user.bat。在webui-user.bat文件中,指定python运行路径、Git安装路径和python的虚拟环境路径,分别如下图所示:
webui-user.bat文件补充添加后的路径示例如下:
@echo off
set PYTHON=D:\Anaconda3\envs\stable_diffusion_webui\python.exe
set GIT=D:\Git\Git\mingw64\bin\git.exe
set VENV_DIR=D:\Anaconda3\envs\stable_diffusion_webui
set COMMANDLINE_ARGS=
call webui.bat
在webui.bat文件中,去掉指定的路径中的“ Scripts\ ”,如下图所示需要去掉两处:
注意:这里去掉很关键,若不去掉直接运行webui-user.bat可能会导致环境里的安装包全部清空,需要重新搭建环境。
修改完成后,直接运行webui-user.bat,打开弹出的网站,默认为 http://127.0.0.1:7860,界面成功运行。
(2)中文汉化
GitHub上下载简体中文汉化包,链接为:
https://github.com/dtlnor/stable-diffusion-webui-localization-zh_CN
下载后解压,找到localizations文件夹下的zh_CN.json
文件,放入stable-diffusion-webui中的localizations路径下。
若下载速度慢或无法下载,给出zh_CN.json
文件的分享链接:
- 链接:https://wwte.lanzouj.com/ibARk285scvc
- 密码:87f0
启动界面,在界面中上方选择“Settings”,然后在左侧选择“User interface“,之后找到“Localization”选项,选择zh_CN
,然后依次点击“Apply settings“和”Reload UI“按钮,重启UI界面,可以看到界面汉化成功。
对界面汉化的方法实际上有很多,也可尝试其它汉化方法。
六、模型更换下载
本文采用的是Stable Diffusion基本的权重模型文件sd-v1-4.ckpt,也可更换为其它模型。
下载模型可从这两个网站中下载,都需要VPN。
https://civitai.com/