stable diffusion的安装

stable diffusion的安装

  • 一、前言
  • 二、安装python环境
    • 1、已经安装python环境,但非3.10.6版本(可以不看)
  • 三、安装stable diffusion
  • 四、运行
  • 五、启动报错
    • 1、Torch is not able to use GPU
    • 2、Installing open_clip 卡住
    • 3、报错提示 "git" clone --config core.filemode=false
    • 4、not a git repository (or any of the parent directories): .git
    • 5、Installing requirements 卡住
    • 6、no module 'xformers'. Processing without...
    • 7、Stable diffusion model failed to load
    • 8、A tensor with NaNs was produced in Unet

一、前言

最近对 stable diffusion 很感兴趣,就打算安装学习一下,下面是安装的过程。

折腾了三个晚上,这里记录一下。

如果电脑分多个用户,请务必在管理员用户中安装,还有就是保存网络通畅,能避免一些问题。

二、安装python环境

stable diffusion运行需要安装python环境,因为是国外的网站,下载会比较慢,最好提前下载好。

因为后续的软件(stable diffusion webui)要求安装3.10.6版本的python,所以这里就安装这个版本

在这里插入图片描述

下载地址:https://www.python.org/downloads/release/python-3106/

在这里插入图片描述

选择适合自己的版本,我的window11 64位的系统,选择这个:

在这里插入图片描述

下载下来后是这样的

在这里插入图片描述

新建一个空文件夹,路径不要有中文字符,我这里是:

E:\environment\Python\python3.10.6

在这里插入图片描述

然后右击击这个文件,选择以 管理员的身份运行

在这里插入图片描述

选好之后选择下一步

在这里插入图片描述

在这里插入图片描述

等待下载结束
在这里插入图片描述

接着 window + x

在这里插入图片描述

在这里插入图片描述

出现了python 的版本号就说明安装成功了。

1、已经安装python环境,但非3.10.6版本(可以不看)

我以前安装过python3.10.4版本,如果不需要使用以前的版本,在打开原版本的安装程序时就会提示,选择这个卸载即可

在这里插入图片描述

如果卸载后安装文件夹不是空的,手动删除其余文件即可。

如果原来的版本还需要使用,在安装3.10.6版本时如何保留原来的版本?

和初次安装一样,不过在这一步时不勾选这个选项即可

在这里插入图片描述

这个是环境变量,我们后续手动修改。

右击此电脑,选择属性

在这里插入图片描述

选择高级系统设置

在这里插入图片描述

选择环境变量

在这里插入图片描述

找到 Path 这个变量,点击编辑
在这里插入图片描述

找到原来的python环境安装根目录,改为python3.10.6版本的环境根目录,再点击确定

在这里插入图片描述

ctrl + x,选择

在这里插入图片描述

输入 python 查看版本号

在这里插入图片描述

可以看到把python的版本切换到3.10.6了,需要切回原来的版本就在这里把路径改为原版本的根目录。

三、安装stable diffusion

stable diffusion是开源出来一堆源代码,比较难用,一般下载由 AUTOMATIC1111 大神开发的Stable Diffusion WebUI。

这是他的用户页面:

在这里插入图片描述

如果打不开 github 的小伙伴可以下载个 steam++

在这里插入图片描述

安装请自行百度,没什么坑。

Stable Diffusion WebUI 下载地址如下:

https://github.com/AUTOMATIC1111/stable-diffusion-webui?tab=readme-ov-file

这里的 master 是作者开发的分支
在这里插入图片描述

切换为发行版本

在这里插入图片描述

选择一个版本,这里选择最新的 v1.10.1 版

在这里插入图片描述

不过看路径都是一样的。

这里选择用 git 下载,也建议用 git ,我以前安装过了,这里偷个懒,git 的安装不难,请自行百度。

接着新建一个空的文件夹,不要有中文,我这里是

E:\software\StableDiffusionWebui

下载成功是这样的

在这里插入图片描述

命令如下:

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

也可以直接下载压缩包

在这里插入图片描述

下载下来是这样的文件

在这里插入图片描述

不过这样下载下来后面会报 git 相关的错,别问我是怎么知道的。

四、运行

在安装的根目录找到 webui-user.bat 文件,文件如下:

在这里插入图片描述

双击打开会出现一个黑窗口

在这里插入图片描述

第一次打开会比较慢,因为要下载很多的文件

五、启动报错

这里记录我安装过程中踩过的坑。

1、Torch is not able to use GPU

启动报错如下:

RuntimeError: Torch is not able to use GPU; add --skip-torch-cuda-test to COMMANDLINE_ARGS variable to disable this check

在这里插入图片描述

其实后面也给出了解决办法,就是在启动文件 webui-user.bat 中加上 --skip-torch-cuda-test 参数

--skip-torch-cuda-test

在这里插入图片描述

保存退出。

但是我有显卡,不想用这种方式解决,没有独立显卡或者使用A卡的小伙伴可以用这种方式解决。我在后面去掉了这个参数。

对于N卡用户需要安装 cuda,有显卡的应该都安装了驱动了吧(/滑稽)

我在安装 cuda 前先更新了驱动
在这里插入图片描述

再查看本机的显卡适合安装哪个版本的 cuda ,ctrl + x 选择 Window 终端(管理员),使用如下命令:

nvidia-smi

我在安装前更新了驱动,这是我的

在这里插入图片描述

可以看到我适合 12.6 版本的 cuda ,然后在这里下载,地址如下:

https://developer.nvidia.com/cuda-toolkit-archive

在这里插入图片描述

找到 12.6 版本的 cuda ,下载下来是这样的

在这里插入图片描述

双击打开,这里的路径默认就好

在这里插入图片描述

等待下载完成

在这里插入图片描述

等待下载完成,然后同意并继续

在这里插入图片描述

这里默认就好

在这里插入图片描述

勾选,点击 NEXT

在这里插入图片描述

等待安装完成

在这里插入图片描述

这是“Nsight Visual Studio版本摘要”,点击下一步确认

在这里插入图片描述

然后关闭即可

在这里插入图片描述

然后查看cuda是否安装成功,打开控制台,输入如下命令:

nvcc -V

在这里插入图片描述

然后看看能不能检测到 cuda ,随便找个目录,我是在这里:

D:\software\StableDiffusionHand\stable-diffusion-webui\venv\Scripts\

新建 txt 文件,这里为 test.txt

在这里插入图片描述

打开加入如下代码

import torchprint(torch.cuda.is_available())  # 应该返回True

在这里插入图片描述

保存退出,再将 txt 后缀名改为 py

在这里插入图片描述

接着使用

cmd

打开黑窗口

在这里插入图片描述

接着使用 根目录\venv\Scripts\python.exe 执行,根据自己情况修改,我的 pyhon.exe 路径是

D:\software\StableDiffusionHand\stable-diffusion-webui\venv\Scripts\python.exe

执行 test.py 文件,命令如下:

E:\software\StableDiffusionWebui\stable-diffusion-webui\venv\Scripts\python.exe E:\software\StableDiffusionWebui\stable-diffusion-webui\venv\Scripts\test.py

在这里插入图片描述

可以看到已经检测到了 cuda ,然后再次重启。

2、Installing open_clip 卡住

在这里插入图片描述

这个应该是网络的问题,我使用公司的网络时没有遇到这个错。

3、报错提示 “git” clone --config core.filemode=false

如果出现如下图所示的错:

在这里插入图片描述

打开控制台,输入如下命令:

git config --global http.sslverify "false"

在这里插入图片描述

然后重启。

4、not a git repository (or any of the parent directories): .git

使用 git 下载就没有遇到这个问题

我一开始是使用压缩包下载的这里做个记录

启动报错:

fatal: not a git repository (or any of the parent directories): .git

在这里插入图片描述

在根目录空白处右击选择 Git Bash Here ,然后输入如下命令:

git init

在这里插入图片描述

如果报错

ambiguous argument ‘HEAD’: unknown revision or path not in the working tree.

在这里插入图片描述

这个死活解决不了,就删了用 git 下载,就没有出现这个问题。

5、Installing requirements 卡住

启动时卡在 Installing requirements

在这里插入图片描述

进入这个目录,使用这里的 python.exe

在这里插入图片描述

使用

cmd

进入控制台

在这里插入图片描述

再使用

activate

进入虚拟环境

在这里插入图片描述

然后使用目录当前目录的 pyhon.exe 下载根目录的 requirements_versions.txt 文件,根据自己情况修改,我的 pyhon.exe 路径是

D:\software\StableDiffusionHand\stable-diffusion-webui\venv\Scripts\python.exe

requirements_versions.txt 文件路径是

D:\software\StableDiffusionHand\stable-diffusion-webui\requirements_versions.txt

所以我的命令如下:

D:\software\StableDiffusionHand\stable-diffusion-webui\venv\Scripts\python.exe -m pip install -r D:\software\StableDiffusionHand\stable-diffusion-webui\requirements_versions.txt

在这里插入图片描述

等待下载完成,网络好的情况下下载很快的

在这里插入图片描述

下好之后,如果再次重启报错:

Can’t load tokenizer for ‘openai/clip-vit-large-patch14’. If you were trying to load it from ‘https://huggingface.co/models’, make sure you don’t have a local directory with the same name. Otherwise, make sure ‘openai/clip-vit-large-patch14’ is the correct path to a directory containing all relevant files for a CLIPTokenizer tokenizer.

在这里插入图片描述

这是缺少 clip-vit-large-patch14 文件,虽然再最后面已经给出了对应下载地址,但试了一下下载不了

可以到这里下载

在这里插入图片描述

对应 git 的下载命令如下:

git clone https://www.modelscope.cn/AI-ModelScope/clip-vit-large-patch14.git

或者这里下载文件

在这里插入图片描述

这里先演示用 git 下载的方式,先到根目录下新建 openai 文件夹

在这里插入图片描述

在这里插入图片描述

git 的命令如下:

git clone https://www.modelscope.cn/AI-ModelScope/clip-vit-large-patch14.git

或者和我第一次那样下载,在根目录新建 openai 文件夹,进入 openai 后新建 clip-vit-large-patch14 文件夹

在这里插入图片描述

接着将下载的文件放入

在这里插入图片描述

然后重新启动

在这里插入图片描述

成功加载模型

在这里插入图片描述

当然,模型也需要单独下载,启动没模型会报模型加载失败的错,模型如何下载可以看 7 。

6、no module ‘xformers’. Processing without…

小伙伴们在 5 应该注意到这个问题了吧,不过这个错误应该可以不理会,我本机没处理一样使用。。。证据如下:

在这里插入图片描述

回到错误:

no module ‘xformers’. Processing without…
no module ‘xformers’. Processing without…
No module ‘xformers’. Proceeding without it.

在这里插入图片描述

后面尝试一下解决,打开 launch_utils.py 文件

在这里插入图片描述

使用 COMMANDLINE_ARGS 搜索,在460行中加上如下命令:

--xformers

在这里插入图片描述

再次重启。

7、Stable diffusion model failed to load

启动报如下错:

在这里插入图片描述

就是没模型,加上就好,模型的后缀为 safetensors ,大小一般 2 - 11 G。

我是在这里下载模型的,下载好后放到这个目录就好了

在这里插入图片描述

接着重启

在这里插入图片描述

8、A tensor with NaNs was produced in Unet

这个错误是在图生图遇到的,具体如下:

modules.devices.NansException: A tensor with NaNs was produced in Unet. This could be either because there’s not enough precision to represent the picture, or because your video card does not support half type. Try setting the “Upcast cross attention layer to float32” option in Settings > Stable Diffusion or using the --no-half commandline argument to fix this. Use --disable-nan-check commandline argument to disable this check.

在这里插入图片描述

可以在 webui-user.bat 文件中加入

--no-half --disable-nan-check

解决

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/413142.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vben:对话框组件

本文将介绍如何在vben admin vue 框架中&#xff0c;创建对话框组件&#xff0c;并成功应用的代码。代码即插即用。 结果如下图所示&#xff0c; 一、创建对话框组件 创建 myModal/index.vue <template><div><BasicModalregister"registerModal"v-…

hive学习(五)

一、hive的DML操作 1.load&#xff08;向表中装载数据&#xff09; hive> load data [local] inpath 路径 [overwrite] into table 表名 [partition (partcol1val1,…)];特殊说明 1&#xff09;local&#xff1a;标识从本地加载数据到Hive表&#xff0c;若没有local的话从…

红石电路(我的世界)

红石电路&#xff08;Redstone circuits&#xff09;为玩家建造的&#xff0c;可以用于控制或激活其他机械的结构。 电路本身既可以被设计为用于响应玩家的手动激活&#xff0c;也可以让其自动工作——或是反复输出信号&#xff0c;或是响应非玩家引发的变化&#xff0c;例如生…

shell脚本--正则表达式

一、正则表达式的类型 在Linux中,有两种流行的正则表达式引擎: POSIX基础正则表达式(basic regular expression,BRE)引擎 POSIX扩展正则表达式(extended regular expression,ERE)引擎 POSIX BRE引擎通常出现在依赖正则表达式进行文本过滤的编程语言中。它为常见模式提供…

STM32基于HAL库使用串口+DMA 不定长接收数据 学习记录

我这些博客都只是记录一下自己学习的内容&#xff0c;以及记录一些思考过的问题和疑惑的东西 这里的代码借鉴了一位博主的博客 地址&#xff1a;[] 这里cubemx串口基础配置部分参考这一篇博客 &#xff08;只配置了串口中断接收和printf重定向&#xff09; 这一篇博客我们需要开…

分布式计算架构详解以及任务调度方式

信息技术领域重要分支—分布式计算。分布式计算通过将任务分配到多个物理的计算资源上进行处理&#xff0c;以来提高计算效率和资源利用率。今天主讲分布式计算架构的关键组成以及在云服务器背景下任务调度的不同方式&#xff0c;然后再综合来看这些调度策略是怎样适应云环境的…

C# 三种定时器的用法

目录 1.System.Timers.Timer 2.System.Windows.Forms.Timer 3.System.Threading.Timer 4.简单的封装 这里介绍三种常用的定时器&#xff0c;方便查阅资料或直接复制使用。 1.System.Timers.Timer System.Timers.Timer 类定义了一个计时器&#xff0c;该计时器按固定间隔触…

线性表之数组

数组&#xff08;Array&#xff09;是 C/C 中最基础和重要的数据结构之一&#xff0c;它提供了一种有效存储和访问固定大小元素集合的方式。关于数组的定义和使用相信大家都已经熟练掌握&#xff0c;本文将着重为大家剖析数组的物理结构和逻辑结构。 1. 数组的物理结构 数组的…

大语言模型-GPT3-Language Models are Few-Shot Learners

一、背景信息&#xff1a; GPT3是于2020 年由OpenAI 发布的预训练语言模型。 GPT3在自然语言处理&#xff08;NLP&#xff09;任务中表现出色&#xff0c;可以生成连贯的文本、回答问题、进行对话等。 GPT3的网络架构继续沿用GPT1、GPT2的是多层Transformer Decoder改的结构。…

MySQL的安装配置以及可视化工具的安装

一、MySQL 的安装配置 1、找到官网 MySQL :: Download MySQL Installer (Archived Versions)https://downloads.mysql.com/archives/installer/ 2、下载 3、安装 接下来只需要一直 next 下去就好 此时我们的MySQL就安装完成了&#xff0c;有些人的电脑在点击完这个finish以后…

Linux内核6.12新特性:panic之后扫码显示故障信息

Linux 内核 6.12 版本即将引入一项有趣的功能——在内核Panic时显示一个可选的二维码。这一功能将允许用户通过扫描二维码直接访问内核Panic信息的日志&#xff0c;从而更容易地诊断问题所在。 这不是 Linux 第一次尝试使用二维码。早在2014年&#xff0c;就有过关于在内核Pani…

HarmonyOS(52) 使用安全控件SaveButton保存图片

SaveButton使用简介 前言SaveButton简介约束与限制 实现点击事件全部源码 参考资料&#xff1a; 前言 在HarmonyOS(50) 截图保存功能实现一文中简单介绍了截图保存功能&#xff0c;本篇博文介绍一个更简单的保存图片控件SaveButton. SaveButton简介 SaveButton允许用户通过点…

EasyCVR中的H.265技术:助力实现大规模高效流畅的视频监控应用

随着视频监控技术的不断发展和用户对视频质量要求的不断提高&#xff0c;高效能、低延迟的视频编码技术成为视频监控系统中的重要支撑。TSINGSEE青犀视频旗下的EasyCVR视频汇聚平台凭借其强大的视频处理能力和对H.265技术的支持&#xff0c;在视频监控系统中展现出显著的应用优…

运用Premiere自学视频剪辑,这些岗位你能胜任!

随着短视频的兴起和火热&#xff0c;短视频后期制作越来越受到人们的重视&#xff0c;甚至衍生出很多岗位的高薪工作。如大家所了解的&#xff0c;Adobe premiere正是一款视频后期剪辑和制作工具&#xff0c;其功能强大&#xff0c;应用也十分广泛&#xff0c;是从事后期工作者…

Mysql常见问题汇总【持续更新】

文章目录 Invalid default value for CREATE_TIME 或则 启动时 sql_mode 报错1130错误码&#xff0c;MySQL不能通过ip连接第一种命令方式图形化界面 mysql给用户授管理员权限mysql 新建用户时&#xff0c;主机名选择区别Mysql常用命令大全 Invalid default value for CREATE_T…

四大消息队列:Kafka、ActiveMQ、RabbitMQ、RocketMQ对比

四大消息队列&#xff1a;Kafka、ActiveMQ、RabbitMQ、RocketMQ对比 1. 社区活跃度2. 持久化消息3. 技术实现4. 高并发性能5. RabbitMQ与Kafka对比 &#x1f496;The Begin&#x1f496;点点关注&#xff0c;收藏不迷路&#x1f496; 在软件开发中&#xff0c;消息队列&#xf…

基础算法(1)——双指针

1. 概念 常见的双指针有两种形式&#xff0c;一种是对撞指针&#xff0c;一种是快慢指针 1.1 对撞指针 一般用于顺序结构中&#xff0c;也称为左右指针 对撞指针从两端向中间移动&#xff0c;一个指针从最左端开始&#xff0c;另一个从最右端开始&#xff0c;逐渐往中间逼近…

.net dataexcel winform控件 更新 日志

增加 列宽度调整时动态显示列象素大小 更改列的宽度可以使用 column.Width属性进行修改

【持续更新】Mχ Plaayer Pro 1.86.0安卓知名播放器最新免费高级修改版

Mχ Plaayer Pro MOD 版本免费 APK&#xff0c;专为安卓手机和平板打造。这是一款功能强大的视频播放器&#xff0c;具备先进的硬件加速技术和字幕支持功能。 • 硬件加速 - 新增 HW 解码器帮助更多视频格式实现硬件加速。 • 多核心解码 - Mχ Plaayer 是首款支持多核心解码的…

基于STM32的RFID高速收费系统(论文+源码+实物)

1系统方案设计 本文基于STM32的RFID高速收费系统&#xff0c;其可以实现小车和货车两种车型收费&#xff0c;当车辆超过了规定的重量后&#xff0c;出现声光报警提示&#xff0c;并且启动杆不会抬起&#xff0c;只有当车辆重量低于设置值时&#xff0c;启动杆才会自动抬起&…