Stable Diffusion XL搭建

news/2024/7/10 21:38:10 标签: stable diffusion

本文参考:Stable Diffusion XL1.0正式发布了,赶紧来尝鲜吧-云海天教程

Stable Diffision最新模型SDXL 1.0使用全教程 - 知乎

1、SDXL与SD的区别

(1)分辨率得到了提升

原先使用SD生成图片,一般都是生成512*512(模型就是基于这个分辨率进行训练的)的图然后再进行放大,以达到高清出图的效果。

这次SDXL1.0直接使用1024*1024的图片训练底模

(2)SDXL1.0由base模型和refiner模型共同组成

SDXL由文生图的base模型和图生图进行优化放大的refiner模型组成,所以生图过程中会先运行基础模型,然后再运行细化模型。基础模型设置全局组成,而细化模型则添加了更多的细节。

2、安装的硬软件环境

硬件:如果希望在GPU上运行,则需要GPU显存在16G以上,否则很难运行。

软件:python需要在3.10以上。

3、下载Stable Diffusion WebUI源码到本地

执行命令:git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git

将代码从GitHub下载到了本地

4、 切换到支持SDXL的版本

支持SDXL的webUI版本需要v1.5.0以上。

在stable-diffusion-webui目录下运行:

git checkout -b v1.6.0

5、启动WebUI服务

python launch.py  --listen --port 12346 --theme dark --xformers --enable-insecure-extension-access

首次执行该命令后,会自动下载相关算法源码到repositories中,以及相关模型到对应的目录下。

如果运行成功则直接跳到第8步,否则按照6-9步依次手工处理相关问题。

 

6、repositories安装错误处理

如果出错,则需要手工下载这些代码放到指定目录。以下过程仅针对启动不成功时需要手工安装的步骤:

(1)下载stablediffusion源码

提示错误:“Command: "git" clone "https://github.com/Stability-AI/stablediffusion.git" "/xxx/stable-diffusion-webui/repositories/stable-diffusion-stability-ai"”

则手工再执行git clone https://github.com/Stability-AI/stablediffusion.git ,(如果下载还是不成功则从git中下载zip文件,放到相应目录后解压,该方法适用以下的其他源码。)然后更名为stable-diffusion-stability-ai。

(2)下载k-diffusion源码

手工执行git clone https://github.com/crowsonkb/k-diffusion.git或手工下载zip包

(3)下载CodeFormer源码

手工执行git clone https://github.com/sczhou/CodeFormer.git或手工下载zip包

7、py的requirements_versions.txt安装错误处理

报错信息:

处理方法:

pip3 install -r requirements_versions.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

直接官网下载不通的话,建议换成清华大学的数据源进行安装。

8、下载SDXL大模型

(1)首先考虑直接从HuggingFace中下载模型

SDXL大模型涉及stable-diffusion-xl-base和stable-diffusion-xl-refiner两部分,链接地址为:

https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/resolve/main/sd_xl_base_1.0.safetensors

https://huggingface.co/stabilityai/stable-diffusion-xl-refiner-1.0/resolve/main/sd_xl_refiner_1.0.safetensors

这两个文件是底模,大约7个G每个文件,下载到GPU服务器后,需要放到stable-diffusion-webui/models/Stable-diffusion文件夹中

针对base模型,如果直接使用stablebilityai的stable-diffusion-xl-base-1.0模型,自己使用时效果可能没那么好,我则从c站下载自己喜欢style的基模,比如:https://civitai.com/models/139565/realistic-stock-photo

这个是真实电影感比较强的SDXL1.0的base模型。

而refiner模型则还是使用huggingface提供的refiner模型。

(2)如果HuggingFace和civitai无法连通,可以从https://aliendao.cn/下载对应模型。

9、下载VAE模型

(1)首先下载vaeapprox-sdxl.pt模型(必选

WebUI启动过程中可能会出现如下类似错误:

Downloading VAEApprox model to: /xxx/stable-diffusion-webui/models/VAE-approx/vaeapprox-sdxl.pt

TimeoutError: [Errno 60] Operation timed out    

During handling of the above exception, another exception occurred:

这是因为缺少一个vaeapprox-sdxl.pt模型,一般自动下载会很容易失败,推荐大家去GitHub上手动下载,链接地址为:

https://github.com/AUTOMATIC1111/stable-diffusion-webui/releases/tag/v1.0.0-pre

下载后放到stable-diffusion-webui/models/VAE-approx/目录下即可

(2)安装VAE模型(可选

https://huggingface.co/stabilityai/sdxl-vae/resolve/main/sdxl_vae.safetensors

下载后放到stable-diffusion-webui/models/VAE目录下即可。

10、使用WebUI的SDXL功能

webui通过以下命令执行成功后,

python launch.py --listen --port 12346 --theme dark --xformers --enable-insecure-extension-access

然后chrome浏览器中输入<服务器ip>:12346后即打开了SD的WebUI服务如下:

注意点1的位置:选择SDXL的base模型

注意点2的位置:选择SDXL的refiner模型,该模型会在base模型运行进展到80%(Refiner的Switch at参数)时切换为refiner模型继续执行。

注意点3的位置:将分辨率从默认的512*512调整为1024*1024,这个是SDXL和SD的显著差异之一。

根据以下prompt我们生成测试图片,

prompt及相关参数信息:

photograph close up portrait of Embraced couple enjoying in a movie in theatre , cinematic 4k epic detailed 4k epic detailed photograph shot on kodak detailed bokeh cinematic hbo dark moody
Steps: 35, Sampler: DPM++ 2M Karras, CFG scale: 7, Seed: 1847092677, Size: 1024x1024, Model hash: 2d44ce378d, Model: realisticStockPhoto_v10, Refiner: sd_xl_refiner_1.0 [7440042bbd], Refiner switch at: 0.8, Version: v1.6.0

图片达到了电影感的效果:

此生成过程耗时1分32秒,占用12.9G的显存。

如果进展到这里都没有问题,那么请开始SDXL的旅程吧!!


http://www.niftyadmin.cn/n/5085112.html

相关文章

爱德华、书客、柏曼的护眼台灯谁的护眼能力更好?三款护眼台灯真实测评

为人父母以后最大的感受就是希望孩子能够健康成长&#xff0c;而且现在生活水平也变好了&#xff0c;都想尽可能给孩子最好的&#xff0c;什么学习专用的书桌啊、柜子啊、学习用品等等。但是随着孩子慢慢步入更高的年级&#xff0c;作业也在不断增加&#xff0c;孩子完成作业的…

Linux CentOS8安装gitlab_ce步骤

1 下载安装包 wget --content-disposition https://packages.gitlab.com/gitlab/gitlab-ce/packages/el/8/gitlab-ce-15.0.2-ce.0.el8.x86_64.rpm/download.rpm2 安装gitlab yum install policycoreutils-python-utilsrpm -Uvh gitlab-ce-15.0.2-ce.0.el8.x86_64.rpm3 更新配…

k8s中如何使用gpu、gpu资源讲解、nvidia gpu驱动安装

前言 环境&#xff1a;centos7.9、k8s 1.22.17、docker-ce-20.10.9 gpu资源也是服务器中常见的一种资源&#xff0c;gpu即显卡&#xff0c;一般用在人工智能、图文识别、大模型等领域&#xff0c;其中nvidia gpu是nvidia公司生产的nvidia类型的显卡&#xff0c;amd gpu则是adm…

el-data-picker限制日期可选范围

<el-date-pickerclass"date"v-model"date"type"date"change"dateChange"value-format"yyyy-MM-dd"format"yyyy-MM-dd"placeholder"选择日期":picker-options"datePickerOptions"></…

【算法系列 | 10】深入解析查找算法之—线性查找

序言 心若有阳光&#xff0c;你便会看见这个世界有那么多美好值得期待和向往。 决定开一个算法专栏&#xff0c;希望能帮助大家很好的了解算法。主要深入解析每个算法&#xff0c;从概念到示例。 我们一起努力&#xff0c;成为更好的自己&#xff01; 今天第10讲&#xff0c;讲…

深入解析Spring Cloud Gateway的GlobalFilter

文章目录 摘要引言GlobalFilter的作用使用GlobalFilter默认的GlobalFilter自定义GlobalFilter 示例代码配置GlobalFilter配置文件方式代码方式 高级用法&#xff1a;重写GlobalFilter思路代码实现 结论参考文献 摘要 本文将详细介绍Spring Cloud Gateway中的GlobalFilter&…

如何防止内部员工数据外泄?

首先&#xff0c;数据对于企业的价值和意义无需多说&#xff0c;数据价值的发挥和利用以数据安全为基础。当数据创造价值的同时&#xff0c;也面临着被窃取泄露、滥用、非法利用的风险&#xff0c;进而对个人、组织甚至整个社会、国家的利益产生严重威胁和损害。近年来&#xf…

【TensorFlow2 之011】TF 如何使用数据增强提高模型性能?

一、说明 亮点&#xff1a;在这篇文章中&#xff0c;我们将展示数据增强技术作为提高模型性能的一种方式的好处。当我们没有足够的数据可供使用时&#xff0c;这种方法将非常有益。 教程概述&#xff1a; 无需数据增强的训练什么是数据增强&#xff1f;使用数据增强进行训练可视…