截止至2023-06-25 最新免魔法stable-diffusion-webui的本地安装部署方法。

截止至2023-06-25 最新免魔法stable-diffusion-webui的本地安装部署方法。
开源项目 stable-diffusion-webui (https://github.com/AUTOMATIC1111/stable-diffusion-webui)
简单的可通过整合包安装,搜一下一大堆,而不想用整合包的可通过此方法windows部署。
原因是发现B站等网绝大多数视频教程,都已经不适用现在的版本,只能针对老的,固定的版本部署。特整理自己近期成功部署的最新的方法。
一.确认本地部署硬件达到条件。(要求win10,win11等等,具体网上搜一下一大 堆)
二.算法环境部署
安装miniconda搭建python环境。(也可直接安装python 3.10.6,官方文档建议python 3.10.6这个版本)
下载Miniconda — conda documentation

安装默认next
2.打开并运行miniconda(桌面没图标,开始菜单搜)
结果有两个Anaconda Prompt (miniconda3),Anaconda Powershell Prompt (miniconda3),打开第一个就行。
输入conda --version 或 conda -V #查看,显示conda版本号,即安装成功

3.创建python 3.10.6版本的环境,指定镜像源
先输入以下,设置搜索时显示通道地址
conda config --set show_channel_urls yes
再次输入,清除索引缓存
conda clean -i
输入y

请点击输入图片描述(最多18字)
创建环境名:sd(随意写名,方便后面操作,简单命名sd)
conda create --name sd python=3.10.6
输入y继续

然后显示下图

再输入以下,切换至sd环境
conda activate sd

请点击输入图片描述(最多18字)
再输入以下,升级pip
python -m pip install --upgrade pip
再输入以下,更改镜像源为阿里云
pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/

请点击输入图片描述(最多18字)
4.安装git用来克隆开源项目 stable-diffusion-webui
打开并下载Git - Downloading Package (git-scm.com)默认next安装完毕

5.输入指令,查看git版本号,安装成功就能正常显示git版本号。不能正常显示,需要手动添加进Windows的系统变量里面
git --version
三. 克隆开源项目 stable-diffusion-webui
1.选择安装路径,我装在E盘的根目录
输入E: ,切换到E盘根目录
再输入克隆代码:避免网络问题克隆失败,直接加上https://ghproxy.com/
git clone https://ghproxy.com/https://github.com/AUTOMATIC1111/stable-diffusion-webui.git

2.进入安装路径,刚克隆下来的stable-diffusion-webui目录(我的是E:\stable-diffusion-webui),为方便后面操作,把目录名称更改为sdwebui(比如我的是E:\sdwebui)
3.打开E:\sdwebui\modules\ ,找到launch_utils.py 文件(旧版是改E:\sdwebui 根目录里面的launch.py),要修改部分代码,这里就是免魔法的关键。
右键-打开方式-选择记事本打开(有装MarkdownPad或Sublime Text之类的软件也行,方便查看代码)

这里举例用记事本打开

可用Ctrl+F 搜索查找,代码不是很多,也可慢慢下拉查找再陆续修改。
找到{"Alternatively, use a binary release of WebUI: https://github.com/AUTOMATIC1111/stable-diffusion-webui/releases" if is_windows else ""}
改为{"Alternatively, use a binary release of WebUI: https://ghproxy.com/https://github.com/AUTOMATIC1111/stable-diffusion-webui/releases" if is_windows else ""}
再找到
commits = requests.get('https://api.github.com/repos/AUTOMATIC1111/stable-diffusion-webui/branches/master').json()
改为commits = requests.get('https://ghproxy.com/https://api.github.com/repos/AUTOMATIC1111/stable-diffusion-webui/branches/master').json()
最后找到以下,全部在https://github.com/前加上https://ghproxy.com/
gfpgan_package = os.environ.get('GFPGAN_PACKAGE', "https://ghproxy.com/https://github.com/TencentARC/GFPGAN/archive/8d2447a2d918f8eba5a4a01463fd48e45126a379.zip")
clip_package = os.environ.get('CLIP_PACKAGE', "https://ghproxy.com/https://github.com/openai/CLIP/archive/d50d76daa670286dd6cacf3bcd80b5e4823fc8e1.zip")
openclip_package = os.environ.get('OPENCLIP_PACKAGE', "https://ghproxy.com/https://github.com/mlfoundations/open_clip/archive/bb6e834e9c70d9c27d0dc3ecedeebeaeb1ffad6b.zip")
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')
修改完按Ctrl+S 保存,也可左上角点文件-保存,然后关闭

4.回到miniconda3,输入cd sdwebui ,再输入webui-user.bat 运行

自动下载安装torch2.0.1+cu118 根据自身网络等待时间不一

我出现下面这个错误是因为我拿的这台机演示,没有显卡,没有安装cuda,正常还要搭配cudnn。

所以我在webui-user.bat加上set COMMANDLINE_ARGS= --skip-torch-cuda-test
继续演示

正常电脑配置达到要求,是进入下面界面,继续安装gfpgan,clip,open_clip
前面我们已经加了https://ghproxy.com/ 不会卡在这里,这里下载安装可能回类似卡着,其实后台在下载,根据网速可能慢一点

这三个完成后,克隆repositories目录里面的几个,这里需要等待下载时间,后台任务管理器里面可以看到流量的使用情况,如果没动静需要关闭重新进入下载


5.以上安装完成,我的出现错误,因为没有独显,没下模型,演示的全给我跳过了。

6.打开E:\sdwebui目录, 找到并右键编辑webui-user.bat这个文件。
修改成保存:
set PYTHON=C:\ProgramData\miniconda3\envs\sd\python.exe

不确定路径对不对,也可在miniconda3 输入where python 查找路径,再改为正确的路径。
修改完webui-user.bat这个文件,右键它发送到桌面快捷方式,后面桌面直接打开就能运行。
要安装xformers也是修改这个文件

重新运行,正在下载并安装xformers0.0.17版本

完成后 浏览器运行127.0.0.1:7860 就可以了

基本的本地部署到这里就成了,后面的本地汉化,装插件等,建议都在这里面安装,不建议从外面下载项目放到E:\sdwebui\extensions 里面安装,不便于后面实时更新。

去掉下面3个勾,点load from 刷新,出来的列表,在search输入zh搜索插件,右键复制链接,然后去install from URL (从网址安装),直接点install容易失败。

在E:\sdwebui\modules下的 ui_extensions.py,用记事本打开,大概543行这里加入https://ghproxy.com/,找不到就用搜索找关键字available_extensions_index
然后保存,后面就能直接刷新出来这个插件列表。

继续前面的,安装汉化插件。从Available复制的链接粘贴到这里,并在前面加上https://ghproxy.com/,然后点下面Install安装

显示这个就安装成功了。

重启UI就能生效了,其他插件也都是这样安装。之后安装的插件,也能够刷新直接更新。
