Stable Diffusion Windows本地部署超详细教程(手动+自动+整合包三种方式)

一、 Stable Diffusion简介

    2022年作为AIGC(Artificial Intelligence Generated Content)时代的元年,各个领域的AIGC技术都有一个迅猛的发展,给工业界、学术界、投资界甚至竞赛界都注入了新的“AI活力”与“AI势能”。

   其中在AI绘画领域,Stable Diffusion当仁不让地成为了开源社区中持续繁荣的AI绘画核心模型,并且快速破圈,让AIGC的ToC可能性比肩移动互联网时代的产品,每个人都能感受到AI带来的力量与影响。Stable Diffusion由CompVis研究人员创建的主要用于**文本生成图像**的深度学习模型,与初创公司StabilityAI、Runway合作开发,并得到EleutherAI和LAION的支持,它主要用于根据文本的描述产生详细图像,也就是常说的**txt2img**的应用场景中:通过给定文本提示词(text prompt),该模型会输出一张匹配提示词的图片。例如输入文本提示词:A cute cat,Stable Diffusion会输出一张带有可爱猫咪的图片(如下图)。

    Stable Diffusion(简称SD)是AI绘画领域的一个核心模型,与Midjourney不同的是,Stable Diffusion是一个完全开源的项目(模型、代码、训练数据、论文、生态等全部开源),可拓展性强、 出图效率高、 数据安全保障,这使得其能快速构建强大繁荣的上下游生态,并且吸引了越来越多的AI绘画爱好者加入其中,与AI行业从业者一起推动AIGC领域的发展与普惠。可以说,AI绘画的ToC普惠在AIGC时代的早期就已经显现,这是之前的传统深度学习时代从未有过的。

    Stable Diffusion模型基于一个扩散过程,逐步从噪声中恢复出图像信息。在训练阶段,模型会学习如何逐步将噪声转化为真实的图像数据;而在生成阶段,模型则可以从随机噪声出发,通过反向的扩散过程,生成出与训练数据分布相似的图像。Stable Diffusion主要由变分自编码器(VAE)、U-Net和一个文本编码器三个部分组成。在前向扩散过程中,高斯噪声被迭代地应用于压缩的潜在表征。每个去噪步骤都由一个包含残差神经网络(ResNet)的U-Net架构完成,通过从前向扩散往反方向去噪而获得潜在表征。最后,VAE解码器通过将表征转换回像素空间来生成输出图像。

   我们可以通过官方网站 [Stability AI](https://stability.ai/ "Stability AI"),以及[Dream Studio](https://beta.dreamstudio.ai/dream%C2%A0 "Dream Studio")、[Replicate](https://replicate.com/ "Replicate")、[Playground AI](https://playgroundai.com/ "Playground AI")[、Baseten](https://www.baseten.co/ "、Baseten")等网站在线体验Stable Diffusion的巨大威力。但是,一方面国外的网站访问毕竟还是不方便(经常需要科学上网,你懂的),另一方面也不想让自己的一些“幼稚”想法被他们“窃取”。相比于集成在网络平台的SD或者其他AI绘画平台来说,自部署平台没有生成数量的限制,不用花钱,不用被NSFW约束,生成时间快,不用排队,自由度高,而且功能完整,插件丰富,可以调试和个性化的地方也更多;更稳定,也更容易让SD变成生产力或者商业化使用。既然这样,那就自力更生,在本机上自己部署一个,可以随心所欲地玩图、玩图...。

二、Stable Diffusion v2安装

这份完整版的SD整合包已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费

在这里插入图片描述

1. 安装前的准备
   现有深度学习训练和部署环境在硬件上一般基于Nvidia GPU,在底层需要显卡驱动和CUDA工具包(需要包含配套版本的cuDNN),在应用软件层面需要Python编译和解释器,以及基于Python的深度学习框架(如Pytorch、TensorFlow等)。同时,为了方便代码自动下载和程序模块化管理,通常还需要安装git和conda软件。笔者(Sheex2012)主机配备了RTX 4070Ti 12G显卡,并事先安装了CUDA 12.1,Python 3.11.6,git 2.44,Pytorch 2.1.2,能够满足Stable Diffusion环境要求。本文重点聚焦Stable Diffusion推理程序的部署,硬件需求确认和基础软件的安装这里不再赘述。
2. 下载和部署Stable Diffusion
     我们从Stability.AI的github官方开源[Stability.AI Stablediffusion](https://github.com/Stability-AI/stablediffusion "Stability.AI Stablediffusion")下载源码:
git clone https://github.com/Stability-AI/stablediffusion.git

当然,也可以从网页上以下载源码ZIP包,解压缩到本地。

     源码下载完成后,接下来需要安装项目的依赖项:
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple  

然后从huggingface下载预训练模型v2-1_768-ema-pruned.ckpt,并存放到checkpoints文件夹中。

3. 运行Stable Diffusion
     部署完成后,运行下述脚本,生成图片:
python ./scripts/txt2img.py --prompt "a professional photograph of an astronaut riding a horse" --ckpt ./checkpoints/v2-1_768-ema-pruned.ckpt --config ./configs/stable-diffusion/v2-inference-v.yaml --H 768 --W 768
    可是,报错了:
No module named 'ldm'
    这个应该是目录结构的问题,将ldm拷贝/移动到script文件夹,再来一次,不出意外,还是有点小意外,内存不够了:
torch.cuda.OutOfMemoryError: CUDA 

这份完整版的SD整合包已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值