当前位置:AIGC资讯 > AIGC > 正文

Stable Diffusion web UI 安装教程

Stable Diffusion web UI 安装教程

欢迎来到猫说AI,wx搜索,猫说AI接入了最新版Chatgpt供大家免费使用。

注意:这是ubuntu20.04安装步骤!

conda创建python虚拟环境
conda create -n stable python=3.10 -y
conda activate stable
clone项目并下载依赖
git clone https://ghproxy.com/https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
cd stable-diffusion-webui

3.安装依赖

pip install -r requirements_versions.txt

修改lanch.py

注意由于网络限制,需要将所有github的地址前面都加上代理前缀,请自行修改

修改如下:

def prepare_environment():
    global skip_install
torch_command = os.environ.get('TORCH_COMMAND', "pip install torch==1.13.1+cu117 torchvision==0.14.1+cu117 --extra-index-url https://download.pytorch.org/whl/cu117")
requirements_file = os.environ.get('REQS_FILE', "requirements_versions.txt")

xformers_package = os.environ.get('XFORMERS_PACKAGE', 'xformers==0.0.16rc425')
gfpgan_package = os.environ.get('GFPGAN_PACKAGE', "git+https://ghproxy.com/https://github.com/TencentARC/GFPGAN.git@8d2447a2d918f8eba5a4a01463fd48e45126a379")
clip_package = os.environ.get('CLIP_PACKAGE', "git+https://ghproxy.com/https://github.com/openai/CLIP.git@d50d76daa670286dd6cacf3bcd80b5e4823fc8e1")
openclip_package = os.environ.get('OPENCLIP_PACKAGE', "git+https://ghproxy.com/https://github.com/mlfoundations/open_clip.git@bb6e834e9c70d9c27d0dc3ecedeebeaeb1ffad6b")

stable_diffusion_repo = os.environ.get('STABLE_DIFFUSION_REPO', "https://ghproxy.com/https://github.com/Stability-AI/stablediffusion.git")
taming_transformers_repo = os.environ.get('TAMING_TRANSFORMERS_REPO', "https://ghproxy.com/https://github.com/CompVis/taming-transformers.git")
k_diffusion_repo = os.environ.get('K_DIFFUSION_REPO', 'https://ghproxy.com/https://github.com/crowsonkb/k-diffusion.git')
codeformer_repo = os.environ.get('CODEFORMER_REPO', 'https://ghproxy.com/https://github.com/sczhou/CodeFormer.git')
blip_repo = os.environ.get('BLIP_REPO', 'https://ghproxy.com/https://github.com/salesforce/BLIP.git')

可以先运行起来,会自动安装依赖

python launch.py --share

手动安装剩余部分依赖

pip install torch==1.13.1+cu117 torchvision==0.14.1+cu117 --extra-index-url https://download.pytorch.org/whl/cu117

4.安装xformers(可选)

git clone https://ghproxy.com/https://github.com/facebookresearch/xformers/
cd xformers/
git submodule update --init --recursive
接下来可能会失败,执行如下步骤后重新执行就成功了
cd .git/
vi config
替换所有的github链接为加速链接 https://ghproxy.com/
然后删除third_party目录下的两个未下载完成的子项目
cd ..
cd third_party
rm -rf cutlass
rm -rf flash-attention
cd ..
git submodule update --init --recursive

# 强制使用CUDA,不开启可能会导致xformers未和CUDA一起编译
export FORCE_CUDA="1"
# 进入https://developer.nvidia.com/cuda-gpus#compute
# 设置所用显卡对应的Compute Capability,3090和A5000都是8.6
export TORCH_CUDA_ARCH_LIST=7.0
# PATH环境变量中追加cuda目录,确保编译时能识别镜像预置的cuda11.6
export PATH=$PATH:/usr/local/cuda
# 确保gcc编译时能够识别cuda的头文件
export CPATH=/usr/local/cuda/targets/x86_64-linux/include

pip install -r requirements.txt
pip install -e .

注意: xformers编译安装过程时间比较久,如果不想一直等待可以用screen去后台执行。

创建窗口

screen -S stable

查询窗口id

screen -r 

进入窗口

screen -r pid

激活conda虚拟环境,并在后台安装:

conda activate stable
pip install -e .

接下来让它自己去编译安装吧,我们按

ctrl + a 然后按 d 来退出当前窗口

要想再连接输入

screen -r 即可。

启动web UI

python -u launch.py --no-half --port 8850 --listen --xformers --share

nohup后台启动:

nohup python -u launch.py --no-half --share --xformers > log.log 2>&1 &

最后启动完如下图所示:

大功告成!

5.安装 Controlnet插件

打开stable-diffusion,点击最右侧的extension,接着点击available,再点击“Load from:”按钮。

在此之后,您将看到一系列可用插件的列表。

需要注意的是,有时候在点击"load from"按钮后,页面可能会因连接失败而出现错误提示。这时,请不要着急,可以刷新页面并检查网络设置(例如开启或切换内外网),然后再次尝试点击"load from"按钮,多尝试几次即可。

接下来,您可以使用Ctrl/command + F快捷键,在搜索框中输入“controlnet”,找到ControlNet插件,并单击右侧的"install"按钮以安装该插件。

安装完成后,插件面板会显示 intalled into xxxx,说明已经安装好了。

如果在available页面无法下载ControlNet插件,用户可以尝试通过Install from URL页面手动安装。插件地址为

https://github.com/Mikubill/sd-webui-controlnet

或者,用户可以先将整个包通过git clone或者GitHub网页下载,在stable-diffusion-webui > extensions文件夹下放置下载的包即可。

完成插件安装后,请确保在installed页面点击“apply and restart(应用并重启)”,以使更改生效。

接下来,安装Openpose。在切换到installed页面之前,我们需要先安装一个名为Openpose Editor的插件,以便后续自定义POSE(姿势)。

使用搜索框查找"openpose",找到相应的插件,并单击右侧的"install"按钮以安装该插件。

等待安装,直到显示“Installed into … openpose-editor. Use Installed tab to restart.”代表安装完成。

这时候,点击installed 页面,你会发现,刚刚安装的两个插件都已经显示在上面了。这时候点击apply and restart ui(应用并重启软件),接着等待网页自动刷新,如果显示无法连接,那么手动刷新下。

如果在available页面无法进行插件安装,用户可以尝试通过install from url页面安装插件,或者下载代码包并将其复制到stable-diffusion-webui > extensions目录下。插件地址为

https://github.com/fkunn1326/openpose-editor

完成插件安装后,请确保在installed页面点击“apply and restart(应用并重启)”,以使更改生效。

接下来,打开ControlNet编辑器。刷新页面后,在stable的首页上方将看到一个名为"ControlNet"的长条,单击该条后面的三角形按钮即可展开相关选项。

展开界面如下图。

5.下载模型。

ControlNet是一种需要专门模型支持的技术,只有使用了相应的模型才能实现相关功能,如绘制指导图等。

要开始使用ControlNet,我们需要下载相应的模型文件。您可以在以下链接找到模型文件:

https://huggingface.co/lllyasviel/ControlNet/tree/main/models

然而,这里有很多不同版本的模型可供选择。针对不同的使用场景和需求,选择不同版本的模型可能会产生不同的效果。因此,选择哪种模型也是一个需要仔细考虑的问题。

为了更好地选择适合自己的模型,建议用户仔细阅读官方说明或文档,并根据自己的实际需求和硬件配置来选择最合适的模型版本。

当面对硬盘空间有限的情况时,我们可以先选择下载自己需要的模型文件,如Canny、Openpose和Scribble。其中,Canny可用于边缘检测等通用场景,Openpose则是专用于姿势控制的模型,而Scribble则适合随手涂鸦并生成精美画面,具备很高的玩耍性质。

尽管每个模型都有各自的特点和使用场景,但如果拥有更大的硬盘空间,建议全量下载所有模型以获取更多体验乐趣。

下载完成后,将相应的.pth文件放入stable-diffusion-webui > models > ControlNet文件夹下即可开始使用ControlNet。

值得注意的是,ControlNet依赖xformers算法框架及Nvidia显卡,因此在其他系统上可能会遇到效果达不到预期或速度较慢等问题。

另外,关于ControlNet的具体使用方法,由于其较为复杂,建议用户仔细阅读官方文档和相关使用说明,并进行一定的实践积累后再进行尝试。后面会分享关于ControlNet的使用技巧和案例。

Control Net模型文件我已经放到网盘中,有需要的小伙伴可关注wx 公众号

猫说AI

公众号还接入了最新版Chatgpt哦!

后台留言获取!

猫说AI

更新时间 2024-03-04