Stable Diffuse 之 本地环境部署/安装包下载搭建过程简单记录

news2025/1/18 9:07:52

Stable Diffuse 之 本地环境部署/安装包下载搭建过程简单记录

目录

Stable Diffuse 之 本地环境部署/安装包下载搭建过程简单记录

一、简单介绍

二、注意事项

三、环境搭建

git 下载和安装

python 下载和安装

stable-diffusion-webui 下载和安装

测试 stable diffuse webui 文生图功能

附录:Stable Diffusion 一些基础介绍

1、Latent diffusion的主要组成部分

2、为什么Latent Diffusion快速有效

3、Stable Diffusion的推理过程


一、简单介绍

Stable Diffusion是一个文本到图像的潜在扩散模型,由CompVis、Stability AI和LAION的研究人员和工程师创建。它使用来自LAION-5B数据库子集的512x512图像进行训练。使用这个模型,可以生成包括人脸在内的任何图像,因为有开源的预训练模型,所以我们也可以在自己的机器上运行它,如下图所示。

Stable Diffusion是一个AI 绘图软件 (开源模型),可本地部署,可切换多种模型,且新的模型和开源库每天都在更新发布,最重要的是免费,没有绘图次数限制。

Github 网址:GitHub - AUTOMATIC1111/stable-diffusion-webui: Stable Diffusion web UI

二、注意事项

1、电脑的显存至少2G以上

2、最好 python 3.10.x 及以上合适版本

三、环境搭建

这里操作案例环境:win 10

git 下载和安装

1、下载 git ,选择对应版本下载即可

git 下载地址:Git - Downloads

2、安装 git ,操作简单这里不再赘述,安装成功后,cmd 中 git --version 检测是否安装成功

能看到安装版本,说明安装及环境配置成功,如下图

python 下载和安装

1、在 python 官网下载对应版本,这里使用 3.10.9 版本

python 官网下载地址:Download Python | Python.org

2、下载好后,安装 python ,记得包 path 添加到环境变量中

3、在cmd ,测试是否安装成功,python --version

能看到安装版本,说明安装及环境配置成功,如下图

stable-diffusion-webui 下载和安装

1、打开 github 网址,搜索找到 stable-diffusion-webui

stable-diffusion-webui github 地址:GitHub - AUTOMATIC1111/stable-diffusion-webui: Stable Diffusion web UI

2、获取下载地址,在 git 中 clone 克隆下来

3、下载好后,文件夹文件如下图

4、找到 webui-user.bat,运行 webui-user.bat

(安装过程较长,可能需要魔法上网)

5、中间可能出现,需要升级一下 Python 的 pip ,根据提示操作即可

6、重复第4步骤,再次运行 webui-user.bat

中间可能会有 一些安装包安装(clip 、git clone 等)不上,魔法上网可以处理,

7、安装结束之后,会自动打开网页

测试 stable diffuse webui 文生图功能

1、运行 webui-user.bat

2、打开的网页中,输入一些简单的提示词,效果如下

Vincent van Gogh’s painting of Emma Watson; prompt2: John Sargent’s painting of Emma Watson

3、每次的处理过程后台也会有进度

附录:Stable Diffusion 一些基础介绍

Stable Diffusion是一种机器学习模型,它经过训练可以逐步对随机高斯噪声进行去噪以获得感兴趣的样本,例如生成图像。

扩散模型有一个主要的缺点就是去噪过程的时间和内存消耗都非常昂贵。这会使进程变慢,并消耗大量内存。主要原因是它们在像素空间中运行,特别是在生成高分辨率图像时。

Latent diffusion通过在较低维度的潜空间上应用扩散过程而不是使用实际的像素空间来减少内存和计算成本。所以Stable Diffusion引入了Latent diffusion的方式来解决这一问题计算代价昂贵的问题。

1、Latent diffusion的主要组成部分

Latent diffusion有三个主要组成部分:

1)自动编码器(VAE)

自动编码器(VAE)由两个主要部分组成:编码器和解码器。编码器将把图像转换成低维的潜在表示形式,该表示形式将作为下一个组件U_Net的输入。解码器将做相反的事情,它将把潜在的表示转换回图像。

在Latent diffusion训练过程中,利用编码器获得正向扩散过程中输入图像的潜表示(latent)。而在推理过程中,VAE解码器将把潜信号转换回图像。

2)U-Net

U-Net也包括编码器和解码器两部分,两者都由ResNet块组成。编码器将图像表示压缩为低分辨率图像,解码器将低分辨率解码回高分辨率图像。

为了防止U-Net在下采样时丢失重要信息,通常在编码器的下采样的ResNet和解码器的上采样ResNet之间添加了捷径的连接。

在Stable Diffusion的U-Net中添加了交叉注意层对文本嵌入的输出进行调节。交叉注意层被添加到U-Net的编码器和解码器ResNet块之间。

3)Text-Encoder

文本编码器将把输入文字提示转换为U-Net可以理解的嵌入空间,这是一个简单的基于transformer的编码器,它将标记序列映射到潜在文本嵌入序列。从这里可以看到使用良好的文字提示以获得更好的预期输出。

2、为什么Latent Diffusion快速有效

Latent Diffusion之所以快速有效,是因为它的U-Net是在低维空间上工作的。与像素空间扩散相比,这降低了内存和计算复杂度。例如,一个(3,512,512)的图像在潜在空间中会变成(4,64,64),内存将会减少64倍。

3、Stable Diffusion的推理过程

1)首先,模型将潜在空间的随机种子和文本提示同时作为输入。然后使用潜在空间的种子生成大小为64×64的随机潜在图像表示,通过CLIP的文本编码器将输入的文本提示转换为大小为77×768的文本嵌入。

2)然后,使用U-Net 在以文本嵌入为条件的同时迭代地对随机潜在图像表示进行去噪。 U-Net 的输出是噪声的残差,用于通过scheduler 程序算法计算去噪的潜在图像表示。 scheduler 算法根据先前的噪声表示和预测的噪声残差计算预测的去噪图像表示。

许多不同的scheduler 算法可以用于这个计算,每一个都有它的优点和缺点。对于Stable Diffusion,建议使用以下其中之一:

  • PNDM scheduler (默认)

  • DDIM scheduler

  • K-LMS scheduler

去噪过程重复约50次,这样可以逐步检索更好的潜在图像表示。一旦完成,潜在图像表示就会由变分自编码器的解码器部分进行解码。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【数据分享】2006-2021年我国省份级别的燃气相关指标(免费获取\20多项指标)

《中国城市建设统计年鉴》中细致地统计了我国城市市政公用设施建设与发展情况,在之前的文章中,我们分享过基于2006-2021年《中国城市建设统计年鉴》整理的2006—2021年我国省份级别的市政设施水平相关指标、2006-2021年我国省份级别的各类建设用地面积数…

使用栈检查括号的合法性 C 实现

使用栈检查括号的合法性 思路讲解:首先从数组数组0下标开始,如果是左括号直接无脑压入栈,直到出现右括号开始判断合法与否。遇到右括号分两种情况,第一种是空栈的情况,也就是说我们第一个字符就是右括号,那…

WPF CommunityToolkit.Mvvm Messenger通讯

文章目录 环境WeakReferenceMessenger方法介绍无回调订阅发送Token区分有回调订阅发送 环境 CommunityToolkit.Mvvm Messenger 十月的寒流: 如何使用 CommunityToolkit.Mvvm 中的 Messenger 来进行 ViewModel 之间的通信 WeakReferenceMessenger 我这里只讲简单的弱Messenger…

Unity 之 Start 与 Awake 的区别

文章目录 在Unity中,Awake和Start都是用于脚本中的生命周期方法,用于控制游戏对象在不同阶段的初始化和行为。它们之间的区别在于调用的时间和用途。 Awake: Awake 是一个在游戏对象被实例化时首先调用的方法。它在对象被加载到场景中但在启用之前调用。…

找到自制电子杂志的方法了,快来看看?

终于找到自制电子杂志的方法了,这真是令人兴奋啊!现在,我们可以利用这个方法来创造属于自己的电子杂志,将我们的想法和创意以独特的方式展现给世界。 1.需要一个电子杂志制作工具 市面上有许多专门用于制作电子杂志的工具&#x…

消灭怪物的最大数量【力扣1921】

一、题目分析 需要满足的条件: 只能在每分钟的开始使用武器武器能杀死距离城市最近的怪兽怪兽到达城市就会输掉游戏 游戏最优策略:我们可以在每分钟的开始都使用一次武器,用来杀死距离城市最近的怪兽。这样可以在力所能及的范围内&#xf…

文件及Java中File类详解

目录 一, 文件 1,什么是文件 2,路径 二, File类 1,File类的构造方法 签名 说明 2,File类的方法 修饰符及返回值类型 方法签名 说明 2.1,get方法的使用 2.2,普通文件的创建以及删除 2.3,普通目录文件的创建以及删除 3,代码示例 示例1 示例2 一, 文件 1,什么是文…

聊聊每日站会

这是鼎叔的第七十四篇原创文章。行业大牛和刚毕业的小白,都可以进来聊聊。 欢迎关注本专栏和微信公众号《敏捷测试转型》,星标收藏,大量原创思考文章陆续推出。 每日站会是一线敏捷团队自己的会议,快速同步成员为达成迭代目标所…

对象模型和this指针(个人学习笔记黑马学习)

1、成员变量和成员函数 #include <iostream> using namespace std; #include <string>//成员变量和成员函数分开存储class Person {int m_A;//非静态成员变量 属于类的对象上的static int m_B;//静态成员变量 不属于类的对象上void func() {} //非静态成员函数 不…

必读干货!独立站新手卖家常见十大问题解答

新手卖家入局跨境电商独立站&#xff0c;会考虑到很多问题&#xff0c;从网站到产品再到售卖最终的发货。而且卖家普遍对独立站存在认知不全的问题&#xff0c;门槛高、推广难、转化难是最初印象。 那独立站该怎么开始&#xff0c;如何下手&#xff1f;今天整理并解答独立站新…

【大模型AIGC系列课程 3-3】低成本的领域私域大模型训练方法

重磅推荐专栏: 《大模型AIGC》 本专栏致力于探索和讨论当今最前沿的技术趋势和应用领域,包括但不限于ChatGPT和Stable Diffusion等。我们将深入研究大型模型的开发和应用,以及与之相关的人工智能生成内容(AIGC)技术。通过深入的技术解析和实践经验分享,旨在帮助读者更好地…

读余华小说《兄弟》

上部读完的一些笔记和思考&#xff0c;下部 TODO 时间&#xff1a;上世纪6、70年代 地点&#xff1a;刘镇 人物&#xff1a;故事中的兄弟指的是&#xff1a;宋钢(兄)&#xff0c;李光头&#xff08;弟&#xff09;&#xff0c;如下为简单的人物和命运图 一些故事&#xff1a;…

【Golang】函数篇

1、golang函数基本定义与使用 func 函数名 (形参列表) (返回值类型列表) {函数体return 返回值列表 }其中func用于表明这是一个函数&#xff0c;剩下的东西与其他语言的函数基本一致&#xff0c;在定义与使用的时候注意函数名、参数、返回值书写的位置即可。下面使用一个例子…

linux 下安装配置nexus

一、安装包获取方式 方式一 1、直接把下载好的安装包上传到服务器中 方式二 2、通过wget安装Nexus压缩包 ①、可以使用以下命令进行安装Nexus的最新版本 wget https://download.sonatype.com/nexus/3/latest-unix.tar.gz②、也可以点击官网复制想要下载的Nexus压缩包进行安装…

腾讯云免费SSL证书申请流程_2023更新教程

2023腾讯云免费SSL证书申请流程&#xff0c;一个腾讯云账号可以申请50张免费SSL证书&#xff0c;免费SSL证书为DV证书&#xff0c;仅支持单一域名&#xff0c;申请腾讯云免费SSL证书3分钟即可申请成功&#xff0c;免费SSL证书品牌为TrustAsia亚洲诚信&#xff0c;腾讯云百科分享…

jupyter notebook 魔术命令介绍和简单使用

在Jupyter notebook中&#xff0c;“魔法命令”是特殊的命令&#xff0c;不是Python语言的一部分&#xff0c;但可以使您的生活更轻松。这些命令前面有%符号。 魔法命令很有用&#xff0c;可以直接嵌入到python代码中&#xff0c;并解决常见问题&#xff0c;例如列出当前目录中…

分布式session的4种解决方案

分布式session的4种解决方案 1、cookie和session cookie和session都是用来跟踪用户身份信息的会话方式。 cookie存储的数据保存在本地客户端&#xff0c;用户获取容易&#xff0c;但安全性不高&#xff0c;存储数据小。 session存储的数据保存在服务器&#xff0c;用户不易获取…

Ubuntu中安装clion并把clion添加到桌面快捷方式

Clion的安装&#xff1a; CLion是由大名鼎鼎的JetBrains公司出品的一款面向C和C的集成开发工具。下载地址。 下载后解压出来&#xff0c;然后进入到解压后的文件夹里面&#xff0c;执行 ./clion.sh 便可以运行软件&#xff1a; cd bin/ ./clion.sh 激活使用的话&…

亚马逊庭院类目或迎来显著增长;倩碧使用TikTok全新搜索广告功能

夏季即将结束&#xff0c;但Jungle Scout Cobalt数据显示&#xff0c;亚马逊的Patio, Lawn & Garden类目仍将迎来显著的季节性增木 除了夏季销售的飙升&#xff0c;Generators & Portable Power发电机和便携式电源子类别的销售一般会在初秋和假日季节会迎来大幅增长&a…

820. 单词的压缩编码

820. 单词的压缩编码 原题链接&#xff1a;完成情况&#xff1a;解题思路&#xff1a;参考代码&#xff1a;__820单词的压缩编码__存储后缀__820单词的压缩编码__字典前缀树 原题链接&#xff1a; 820. 单词的压缩编码 https://leetcode.cn/problems/short-encoding-of-word…