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

二、Stable Diffusion v2安装

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下载源码:

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 
### Windows本地安装和配置 Stable Diffusion #### 一、准备工作 为了顺利在 Windows 操作系统上完成 Stable Diffusion本地部署,需先确认已满足如下条件: - 已安装 Python 版本不低于 3.8[^2]。 - 安装 Git 工具以便于从 GitHub 获取项目源码。 #### 二、整合安装方法 对于希望简化安装流程的用户而言,可以选择通过官方提供的整合来进行一键式安装。这种方式能够极大程度减少因环境配置不当而导致的问题发生概率[^1]。 然而具体到 Stable Diffusion 这个项目,并未提及存在专门针对其设计的一键安装方案。因此下面主要围绕基于命令行的手动安装方式进行说明。 #### 三、手动安装过程 ##### 1. 下载并设置工作目录 打开命令提示符或 PowerShell 终端,在期望创建项目的文件夹位置执行克隆仓库操作。如果是 AMD 显卡,则推荐采用支持 DirectML 的分支版本来提高性能表现: ```bash git clone https://github.com/lshqqytiger/stable-diffusion-webui-directml.git cd stable-diffusion-webui-directml ``` 如果使用的是 NVIDIA 或其他类型的 GPU ,则应选择默认主线版本: ```bash git clone https://github.com/AUTOMATIC1111/stable-diffusion-web-ui.git cd stable-diffusion-web-ui ``` ##### 2. 创建虚拟环境与依赖项安装 继续在同一终端窗口中运行以下指令以建立独立的工作空间以及加载必要的库文件: ```bash python -m venv venv .\venv\Scripts\activate pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu117 pip install -r requirements.txt ``` 这里需要注意 PyTorch 及其扩展模块的具体版本号可能依据个人硬件情况有所不同,请参照官方网站获取最适配的选择指南。 ##### 3. 启动服务 当上述步骤完成后即可尝试启动应用程序: ```bash webui-user.bat ``` 此时浏览器会自动跳转至 `http://localhost:7860` 地址处显示图形界面,标志着整个搭建环节圆满结束。
评论 33
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值