【Stable Diffusion安装】支持python3.11 window版
前言
主要的安装步骤是参考B站播放量第一的视频,但是那位阿婆主应该是没有编程经验,只强调使用3.10,而python最新版本是3.11。
理论上来说,只是一个小版本的不同,应该是可以安装成功了。自己摸索了下,挺费劲了,故记录下,支持最新版python3.11的安装经验。
这里建议先看下B站视频:【B站第一套系统的AI绘画课!零基础学会Stable Diffusion,这绝对是你看过的最容易上手的AI绘画教程 | SD WebUI 保姆级攻略】
这里我假设你们已经自己安装好了python、git。
这里我假设你们已经自己安装好了python、git。
这里我假设你们已经自己安装好了python、git。
毕竟CSDN是编程人员的论坛,这点小事,应该没问题。
安装步骤
更新window显卡驱动
这里为了后续安装的顺利,我们需要更新下电脑的显卡驱动,如果最近已经更新过的,就不用更新了。
按win+R,输入devmgmt.msc,弹出下框。

上图是我的显卡驱动。
这时我们再去官网下载最新驱动:https://www.nvidia.cn/Download/index.aspx


之后,点击exe文件,进行安装即可。
下载 Stable Diffusion 代码
执行:
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
修改launch_utils.py文件
路径:
stable-diffusion-webui-master\modules\launch_utils.py
搜索关键字:xformers,找到platform.python_version().startswith,改为3.11

修改webui-user.bat文件
路径:
stable-diffusion-webui-master\modules\webui-user.bat
主要是修改:COMMANDLINE_ARGS
@echo offset PYTHON=
set GIT=
set VENV_DIR=
set COMMANDLINE_ARGS=--no-half-vae --disable-nan-check --skip-python-version-check --force-enable-xformers --xformerscall webui.bat
配置git代理
我的代理:

所以你也需要根据自己的代理来修改下面的端口号。
git config --global https.proxy http://127.0.0.1:7890
git config --global https.proxy https://127.0.0.1:7890
假设想去掉代理:
# 恢复
git config --global --unset http.proxy
git config --global --unset https.proxy
include-system-site-packages 这个参数可以设置是否开启“引用系统中的模块”的功能。如果开启了,那么当你就可以直接使用系统中已经装过的第三方模块。(但是你在虚拟环境下装的模块就不能被其他地方的程序使用)
设置pip下载源、代理、升级
# 设置源
pip config set global.index-url https://mirrors.aliyun.com/pypi/simple
pip config set install.trusted-host mirrors.aliyun.com
设置代理,路径:C:\Users\yutao\AppData\Roaming\pip\pip.ini
[global]
index-url = https://mirrors.aliyun.com/pypi/simple
proxy = http://127.0.0.1:7890[install]
trusted-host = mirrors.aliyun.com
升级pip,在cmd中:
C:\Users\yutao>python.exe -m pip install --upgrade pip
安装cuda
在cmd命令中,执行:nvidia-smi,查看本机适合的cuda version版本

cuda各版本下载地址
下载下来是一个exe文件,如:cuda_12.2.2_537.13_windows.exe文件。
点击安装即可。一切默认。
下载大模型
可以先看视频了解下,都有哪些模型:
【AI绘画模型新手包!“画风”自由切换,有哪些你不知道的模型使用技巧? | 零基础入门Stable Diffusion的保姆级新手教程 | SD模型下载方式与推荐】
我下载的是guofeng3
下载后,存放路径:

如果出现pip已经下载的模块,但是识别不了的情况下,修改pyvenv.cfg文件
路径E:\openai\project\stable-diffusion-webui\venv,这个需要启动webui-user.bat才会产生。
E:\openai\project\stable-diffusion-webui\venv
这个venv是需要运行webui-user.bat文件后才会产生的。

下面是我的pyvenv.cfg文件内容
home = D:\Program Files\Python
include-system-site-packages = true
version = 3.11.2
executable = D:\Program Files\Python\python.exe
command = D:\Program Files\Python\python.exe -m venv E:\openai\project\stable-diffusion-webui\venv
include-system-site-packages 这个参数可以设置是否开启“引用系统中的模块”的功能。如果开启了,那么我们就可以直接使用系统中已经装过的第三方模块。(但是你在虚拟环境下装的模块就不能被其他地方的程序使用)
双击运行webui-user.bat文件
该文件是以后每次运行启动文件。
启动时,遇到的各种问题,下面会单独讲解。

启动页命令框里,看到:Running on local URL: http://127.0.0.1:7860,表示启动成功。
将http://127.0.0.1:7860,放入浏览器里执行,就OK了。
页面长这个样子:

以后每次运行程序:双击运行webui-user.bat文件即可。
遇到的问题
pip 安装失败,万能解决办法 – 手动安装
正常情况下,当我们遇到pip安装失败的情况下,单独执行,下面的语句是没有问题的:
# 这种总是安装失败时
pip install https://github.com/TencentARC/GFPGAN/archive/8d2447a2d918f8eba5a4a01463fd48e45126a379.zip --prefer-binary
但是如果遇到总是安装失败的情况下,这时,我们就需要手动安装了:
比如,我们现在遇到安装:antlr4-python3-runtime==4.9.3无法自动安装的情况。
这时,我们就去官网下载:https://pypi.org/project/antlr4-python3-runtime/4.9.3/
把文件下载下来:

然后将下载下来的包,解压到:E:\openai\project\stable-diffusion-webui\venv\Scripts\路径下。
接着在cmd中执行python3 setup.py build install:
具体我执行的命令:
E:\openai\project\stable-diffusion-webui\venv\Scripts\antlr4-python3-runtime-4.9.3>e:\openai\project\stable-diffusion-webui\venv\Scripts\python.exe setup.py build install
RuntimeError: Couldn’t install torch.
错误信息:
E:\openai\project\stable-diffusion-webui\venv\Scripts\python.exe: No module named pip
Traceback (most recent call last):File "E:\openai\project\stable-diffusion-webui\launch.py", line 39, in <module>main()File "E:\openai\project\stable-diffusion-webui\launch.py", line 30, in mainprepare_environment()File "E:\openai\project\stable-diffusion-webui\modules\launch_utils.py", line 311, in prepare_environmentrun(f'"{python}" -m {torch_command}', "Installing torch and torchvision", "Couldn't install torch", live=True)File "E:\openai\project\stable-diffusion-webui\modules\launch_utils.py", line 113, in runraise RuntimeError("\n".join(error_bits))
RuntimeError: Couldn't install torch.
Command: "E:\openai\project\stable-diffusion-webui\venv\Scripts\python.exe" -m pip install torch==2.0.1 torchvision==0.15.2 --extra-index-url https://download.pytorch.org/whl/cu118
Error code: 1

解决办法
# 在cmd窗口中执行如下命令即可:
pip install torch==2.0.1 torchvision==0.15.2 --extra-index-url https://download.pytorch.org/whl/cu118
RuntimeError: Torch is not able to use GPU;
错误信息:
venv "E:\openai\project\stable-diffusion-webui\venv\Scripts\Python.exe"
fatal: No names found, cannot describe anything.
Python 3.11.2 (tags/v3.11.2:878ead1, Feb 7 2023, 16:38:35) [MSC v.1934 64 bit (AMD64)]
Version: 1.5.1
Commit hash: 68f336bd994bed5442ad95bad6b6ad5564a5409a
Traceback (most recent call last):File "E:\openai\project\stable-diffusion-webui\launch.py", line 39, in <module>main()File "E:\openai\project\stable-diffusion-webui\launch.py", line 30, in mainprepare_environment()File "E:\openai\project\stable-diffusion-webui\modules\launch_utils.py", line 314, in prepare_environmentraise RuntimeError(
RuntimeError: Torch is not able to use GPU; add --skip-torch-cuda-test to COMMANDLINE_ARGS variable to disable this check

解决办法
这说明需要安装cuda。上面有安装教程。
RuntimeError: Couldn’t install gfpgan.
错误信息:
Version: 1.5.1
Commit hash: 68f336bd994bed5442ad95bad6b6ad5564a5409a
Installing gfpgan
Traceback (most recent call last):File "E:\openai\project\stable-diffusion-webui\launch.py", line 39, in <module>main()File "E:\openai\project\stable-diffusion-webui\launch.py", line 30, in mainprepare_environment()File "E:\openai\project\stable-diffusion-webui\modules\launch_utils.py", line 320, in prepare_environmentrun_pip(f"install {gfpgan_package}", "gfpgan")File "E:\openai\project\stable-diffusion-webui\modules\launch_utils.py", line 136, in run_pipreturn run(f'"{python}" -m pip {command} --prefer-binary{index_url_line}', desc=f"Installing {desc}", errdesc=f"Couldn't install {desc}", live=live)^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^File "E:\openai\project\stable-diffusion-webui\modules\launch_utils.py", line 113, in runraise RuntimeError("\n".join(error_bits))
RuntimeError: Couldn't install gfpgan.
Command: "E:\openai\project\stable-diffusion-webui\venv\Scripts\python.exe" -m pip install https://github.com/TencentARC/GFPGAN/archive/8d2447a2d918f8eba5a4a01463fd48e45126a379.zip --prefer-binary
Error code: 1
stdout: Collecting https://github.com/TencentARC/GFPGAN/archive/8d2447a2d918f8eba5a4a01463fd48e45126a379.zipDownloading https://github.com/TencentARC/GFPGAN/archive/8d2447a2d918f8eba5a4a01463fd48e45126a379.zip (6.0 MB)---------------------------------------- 6.0/6.0 MB 43.6 kB/s eta 0:00:00Preparing metadata (setup.py): startedPreparing metadata (setup.py): finished with status 'done'stderr: ERROR: No .egg-info directory found in C:\Users\yutao\AppData\Local\Temp\pip-pip-egg-info-6ubqppke

解决办法
本质上就是连不上网,所以需要开代理,并配置代理,只要按照上面来,就没问题。
RuntimeError: Couldn’t install clip.
Version: 1.5.1
Commit hash: 68f336bd994bed5442ad95bad6b6ad5564a5409a
Installing clip
Traceback (most recent call last):File "E:\openai\project\stable-diffusion-webui\launch.py", line 39, in <module>main()File "E:\openai\project\stable-diffusion-webui\launch.py", line 30, in mainprepare_environment()File "E:\openai\project\stable-diffusion-webui\modules\launch_utils.py", line 323, in prepare_environmentrun_pip(f"install {clip_package}", "clip")File "E:\openai\project\stable-diffusion-webui\modules\launch_utils.py", line 136, in run_pipreturn run(f'"{python}" -m pip {command} --prefer-binary{index_url_line}', desc=f"Installing {desc}", errdesc=f"Couldn't install {desc}", live=live)^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^File "E:\openai\project\stable-diffusion-webui\modules\launch_utils.py", line 113, in runraise RuntimeError("\n".join(error_bits))
RuntimeError: Couldn't install clip.
Command: "E:\openai\project\stable-diffusion-webui\venv\Scripts\python.exe" -m pip install https://ghproxy.com/https://github.com/openai/CLIP/archive/d50d76daa670286dd6cacf3bcd80b5e4823fc8e1.zip --prefer-binary
Error code: 1
stdout: Collecting https://ghproxy.com/https://github.com/openai/CLIP/archive/d50d76daa670286dd6cacf3bcd80b5e4823fc8e1.zipDownloading https://ghproxy.com/https://github.com/openai/CLIP/archive/d50d76daa670286dd6cacf3bcd80b5e4823fc8e1.zip (4.3 MB)---------------------------------------- 4.3/4.3 MB 2.3 MB/s eta 0:00:00Preparing metadata (setup.py): startedPreparing metadata (setup.py): finished with status 'done'stderr: ERROR: No .egg-info directory found in C:\Users\yutao\AppData\Local\Temp\pip-pip-egg-info-w8i73o1w

解决办法
先试试:
pip install https://ghproxy.com/https://github.com/openai/CLIP/archive/d50d76daa670286dd6cacf3bcd80b5e4823fc8e1.zip --prefer-binary
如果不行,就手动安装:
- https://github.com/openai/CLIP 下载
- 把压缩文件解压到
xxx\stable-diffusion-webui\venv\Scripts - 打开clip-main文件夹,在上方红框的路径地址栏里输入CMD,进入clip-main路径下的cmd命令提示符界面

- cmd中执行:python.exe setup.py build install
特别注意,python.exe要是你自己的路径。
stable diffusion本地安装部署提示clip安装失败的解决方法
下载:https://github.com/openai/CLIP
输入xxx\stable-diffusion-webui\venv\Scripts\python.exe -m pip install ftfy regex tqdm 安装clip依赖输入xxx\stable-diffusion-webui\venv\Scripts\python.exe setup.py build install
安装jsonmerge==1.8.0 报错
这种情况下,就执行pip install jsonmerge安装最新版即可。
安装好后,注意cmd中打印的版本信息,比如我安装完后的版本号jsonmerge==1.9.2;
这时需要修改下文件:

将jsonmerge==1.8.0 修改为:jsonmerge==1.9.2
jsonmerge==1.9.2
参考地址:
Python pip 源设置成国内源,阿里云源,清华大学源
https://civitai.com/models/10415/3-guofeng3
Antlr4-python3-runtime在ubuntu上的安装
stable diffusion本地安装部署提示clip安装失败的解决方法
打开stable diffusion webui时,提示缺少clip或clip安装不上的解决方案(windows下的操作)
Windows下使用Git部署Stable-Diffusion-Webui
相关文章:
【Stable Diffusion安装】支持python3.11 window版
前言 主要的安装步骤是参考B站播放量第一的视频,但是那位阿婆主应该是没有编程经验,只强调使用3.10,而python最新版本是3.11。 理论上来说,只是一个小版本的不同,应该是可以安装成功了。自己摸索了下,挺费…...
Anycloud37D平台移植wirelesstools
0. 环境准备 下载 :https://www.linuxfromscratch.org/blfs/view/svn/basicnet/wireless_tools.html 1. 交叉编译wireless_tools tar xzf wireless_tools.29.tar.gz cd wireless_tools.29/打开Makefile,修改配置: ## Compiler to use (mo…...
海康机器人工业相机 Win10+Qt+Cmake 开发环境搭建
文章目录 一. Qt搭建海康机器人工业相机开发环境 一. Qt搭建海康机器人工业相机开发环境 参考这个链接安装好MVS客户端 Qt新建一个c项目 cmakeList中添加海康机器人的库,如下: cmake_minimum_required(VERSION 3.5)project(HIKRobotCameraTest LANG…...
使用MDK5的一些偏僻使用方法和谋个功能的作用
程序下载后无法运行 需要勾选如下库,是优化后的库; MicroLib和标准C库之间的主要区别是: 1、MicroLib是专为深度嵌入式应用程序而设计的。 2、MicroLib经过优化,比使用ARM标准库使用更少的代码和数据内存。 3、MicroLib被设计成在没有操作…...
【实战】十一、看板页面及任务组页面开发(六) —— React17+React Hook+TS4 最佳实践,仿 Jira 企业级项目(二十八)
文章目录 一、项目起航:项目初始化与配置二、React 与 Hook 应用:实现项目列表三、TS 应用:JS神助攻 - 强类型四、JWT、用户认证与异步请求五、CSS 其实很简单 - 用 CSS-in-JS 添加样式六、用户体验优化 - 加载中和错误状态处理七、Hook&…...
在 Amazon 搭建无代码可视化的数据分析和建模平台
现代企业常常会有利用数据分析和机器学习帮助解决业务痛点的需求。如制造业中,利用设备采集上来的数据做预测性维护,质量控制;在零售业中,利用客户端端采集的数据做渠道转化率分析,个性化推荐等。 亚马逊云科技开发者…...
Pinely Round 2 (Div. 1 + Div. 2) G. Swaps(组合计数)
题目 给定一个长度为n(n<1e6)的序列,第i个数ai(1<ai<n), 操作:你可以将当前i位置的数和a[i]位置的数交换 交换可以操作任意次,求所有本质不同的数组的数量,答案对1e97取模 思路来源 力扣群 潼神 心得 感…...
elasticSearch+kibana+logstash+filebeat集群改成https认证
文章目录 一、生成相关证书二、配置elasticSearh三、配置kibana四、配置logstash五、配置filebeat六、连接https es的java api 一、生成相关证书 ps:主节点操作 切换用户:su es 进入目录:cd /home/es/elasticsearch-7.6.2 创建文件&#x…...
GPT带我学-设计模式-迭代器模式
1 什么是迭代器设计模式? 迭代器设计模式是一种行为型设计模式,用于提供一种统一的方式来遍历一个集合对象中的元素,而不需要暴露该对象的内部结构。它将集合对象的遍历操作与集合对象本身分离开来,使得遍历操作可以独立于集合对…...
数学建模--层次分析法(AHP)的Python实现
目录 1.算法流程简介 2.算法核心代码 3.算法效果展示 1.算法流程简介 """ AHP:层次分析法,层次分析法还是比较偏向于主观的判断的,所以在建模的时候尽可能不要去使用层次分析法 不过在某些创新的评价方法上,也是能够运用层次分析使得评价变得全面一些,有可…...
机器学习笔记之最优化理论与方法(三)凸集的简单认识(下)
机器学习笔记之最优化理论与方法——凸集的简单认识[下] 引言回顾:基本定义——凸集关于保持集合凸性的运算仿射变换 凸集基本性质:投影定理点与凸集的分离支撑超平面定理 引言 继续凸集的简单认识(上)进行介绍,本节将介绍凸集的基本性质以及…...
Apipost:API文档、调试、Mock与测试的一体化协作平台
随着数字化转型的加速,API(应用程序接口)已经成为企业间沟通和数据交换的关键。而在API开发和管理过程中,API文档、调试、Mock和测试的协作显得尤为重要。Apipost正是这样一款一体化协作平台,旨在解决这些问题…...
Homebrew下载安装及使用教程
Homebrew是什么? 简单来说,就是用命令行的形式去管理mac系统的包或软件。 安装命令 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"国内请使用镜像源进行下载 执行上述命令后会要求输入…...
【Codeforces】CF193D Two Segments
题目链接 CF方向 Luogu方向 题目解法 考虑在值域上的问题:有多少段区间,对应在排列上不超过 2 2 2 段 肯定需要枚举一个端点,另一个快速算出,考虑枚举值域区间右端点 r r r,计算 l l l 可以发现,新增…...
内存管理概述
前言 在学习计算机科学时,内存管理是一个非常重要的概念。简单地说,内存是计算机用来存储和访问数据的地方。而内存管理是计算机系统如何分配、使用和管理内存的过程。 为什么要学习内存管理? 1. 高效性:内存管理能够帮助计算机更…...
Spring的重试机制-SpringRetry
在我们的日常开发中,经查会遇到调用接口失败的情况,这时候就需要通过一些方法来进行重试,比如通过while循环手动重复调用或,或者通过记录错误接口url和参数到数据库,然后手动调用接口,或者通过JDK/CGLib动态…...
水稻叶病害数据集(目标检测,yolo使用)
1.数据集文件夹 train文件夹(44229张),test文件夹(4741张),valid文件夹(6000张) 2.train文件夹展示 labels展示 标签txt展示 data.yaml文件展示 对数据集感兴趣的可以关注最后一行…...
鸿蒙系列-如何使用好 ArkUI 的 @Reusable?
如何使用好 ArkUI 的 Reusable? OpenHarmony 组件复用机制 在ArkUI中,UI显示的内容均为组件,由框架直接提供的称为 系统组件,由开发者定义的称为 自定义组件。 在进行 UI 界面开发时,通常不是简单的将系统组件进行组合…...
展锐平台音频框架
Audio DT介绍 1.概述 DT(Device Tree)是一种描述硬件的数据结构,DTS即设备树源码。 2.Audio DTS 文件架构 \bsp\kernel\kernel.4.14\arch\arm64\boot\sprd ums512.dts //SOC级相关节点 ——sc2730.dtsi //Codec ——sharkl5Pro.dts…...
webpack loader和plugins的区别
在Webpack中,Loader和Plugin是两个不同的概念,用于不同的目的。 Loader是用于处理非JavaScript模块的文件的转换工具。它们将文件作为输入,并将其转换为Webpack可以处理的模块。例如,当您在Webpack配置中使用Babel Loader时&…...
Spring Boot 实现流式响应(兼容 2.7.x)
在实际开发中,我们可能会遇到一些流式数据处理的场景,比如接收来自上游接口的 Server-Sent Events(SSE) 或 流式 JSON 内容,并将其原样中转给前端页面或客户端。这种情况下,传统的 RestTemplate 缓存机制会…...
IGP(Interior Gateway Protocol,内部网关协议)
IGP(Interior Gateway Protocol,内部网关协议) 是一种用于在一个自治系统(AS)内部传递路由信息的路由协议,主要用于在一个组织或机构的内部网络中决定数据包的最佳路径。与用于自治系统之间通信的 EGP&…...
实现弹窗随键盘上移居中
实现弹窗随键盘上移的核心思路 在Android中,可以通过监听键盘的显示和隐藏事件,动态调整弹窗的位置。关键点在于获取键盘高度,并计算剩余屏幕空间以重新定位弹窗。 // 在Activity或Fragment中设置键盘监听 val rootView findViewById<V…...
使用 SymPy 进行向量和矩阵的高级操作
在科学计算和工程领域,向量和矩阵操作是解决问题的核心技能之一。Python 的 SymPy 库提供了强大的符号计算功能,能够高效地处理向量和矩阵的各种操作。本文将深入探讨如何使用 SymPy 进行向量和矩阵的创建、合并以及维度拓展等操作,并通过具体…...
Spring AI Chat Memory 实战指南:Local 与 JDBC 存储集成
一个面向 Java 开发者的 Sring-Ai 示例工程项目,该项目是一个 Spring AI 快速入门的样例工程项目,旨在通过一些小的案例展示 Spring AI 框架的核心功能和使用方法。 项目采用模块化设计,每个模块都专注于特定的功能领域,便于学习和…...
论文阅读:Matting by Generation
今天介绍一篇关于 matting 抠图的文章,抠图也算是计算机视觉里面非常经典的一个任务了。从早期的经典算法到如今的深度学习算法,已经有很多的工作和这个任务相关。这两年 diffusion 模型很火,大家又开始用 diffusion 模型做各种 CV 任务了&am…...
[特殊字符] 手撸 Redis 互斥锁那些坑
📖 手撸 Redis 互斥锁那些坑 最近搞业务遇到高并发下同一个 key 的互斥操作,想实现分布式环境下的互斥锁。于是私下顺手手撸了个基于 Redis 的简单互斥锁,也顺便跟 Redisson 的 RLock 机制对比了下,记录一波,别踩我踩过…...
【PX4飞控】mavros gps相关话题分析,经纬度海拔获取方法,卫星数锁定状态获取方法
使用 ROS1-Noetic 和 mavros v1.20.1, 携带经纬度海拔的话题主要有三个: /mavros/global_position/raw/fix/mavros/gpsstatus/gps1/raw/mavros/global_position/global 查看 mavros 源码,来分析他们的发布过程。发现前两个话题都对应了同一…...
基于 HTTP 的单向流式通信协议SSE详解
SSE(Server-Sent Events)详解 🧠 什么是 SSE? SSE(Server-Sent Events) 是 HTML5 标准中定义的一种通信机制,它允许服务器主动将事件推送给客户端(浏览器)。与传统的 H…...
Git 命令全流程总结
以下是从初始化到版本控制、查看记录、撤回操作的 Git 命令全流程总结,按操作场景分类整理: 一、初始化与基础操作 操作命令初始化仓库git init添加所有文件到暂存区git add .提交到本地仓库git commit -m "提交描述"首次提交需配置身份git c…...
