Stable Diffusion概述
定义与原理
Stable Diffusion是一种开源的潜在扩散模型(latent diffusion model),可根据任何文本提示生成高质量、超写实的图像 (CompVis/stable-diffusion: A latent text-to-image diffusion model)。
该模型利用CLIP ViT-L/14的文本嵌入(text embeddings)来对扩散过程进行条件控制,从而使生成的图像与文本提示高度相关 (CompVis/stable-diffusion: A latent text-to-image diffusion model)。
发展历程
- Stable Diffusion 1.x 由CompVis团队于2022年首次发布,实现了开源社区在文本到图像生成领域的重大突破 (CompVis/stable-diffusion: A latent text-to-image diffusion model, CompVis/stable-diffusion - Hugging Face)。
- Stable Diffusion v2 在2023年发布,提供了更多模型权重选择及更高级的推理API,由Stability AI主导维护 (Stability-AI/stablediffusion: High-Resolution Image ... - GitHub)。
- Stable Diffusion 3 Medium(SD3)是最新迭代版本,拥有20亿参数,并已在Hugging Face Diffusers中集成,支持Dreambooth和LoRA微调脚本 (Diffusers welcomes Stable Diffusion 3 - Hugging Face)。
Stable Diffusion项目介绍
官方仓库
- 项目地址:https://github.com/CompVis/stable-diffusion (CompVis/stable-diffusion: A latent text-to-image diffusion model)
- 主要内容:包括扩散模型定义、采样脚本示例、Checkpoint 文件说明及社区Diffusers集成指南 (CompVis/stable-diffusion: A latent text-to-image diffusion model)。
环境与依赖
- 编程语言:Python ≥3.8
- 深度学习框架:PyTorch ≥1.13,同时需要对应版本的CUDA和cuDNN支持 (Stable Diffusion Windows本地部署超详细教程(手动+自动+整合包三 ...)。
- 辅助工具:Git(用于拉取仓库)、Conda或Virtualenv(用于环境管理) (Stable Diffusion Windows本地部署超详细教程(手动+自动+整合包三 ...)。
- 模型权重:需从Hugging Face或官方Release下载
.ckpt
文件,并置于models/ldm/stable-diffusion-v1/
目录下 (CompVis/stable-diffusion: A latent text-to-image diffusion model)。
部署指南:本地环境
硬件要求
- GPU:建议NVIDIA显卡(RTX 20系列及以上),显存≥8GB方可流畅运行基本分辨率生成 (Stable Diffusion Windows本地部署超详细教程(手动+自动+整合包三 ...)。
- CPU和内存:多核CPU和≥16GB内存可加快启动及预处理速度。
软件安装步骤
克隆仓库
git clone https://github.com/CompVis/stable-diffusion.git cd stable-diffusion
创建并激活环境
conda create -n sd python=3.10 -y conda activate sd
安装依赖
pip install -r requirements.txt
其中包含
torch
、torchvision
、transformers
等核心包 (本地部署Stable Diffusion教程,详细教学,已安装成功 - 知乎专栏)。下载模型权重
- 从Hugging Face模型卡页面获取下载链接,并放入
models/ldm/stable-diffusion-v1/
目录 (CompVis/stable-diffusion - Hugging Face)。
- 从Hugging Face模型卡页面获取下载链接,并放入
运行与测试
python scripts/txt2img.py --prompt "一只在月光下飞翔的猫头鹰" --plms --n_samples 1 --n_iter 1 --ddim_steps 50
执行成功后,可在outputs/
目录查看生成结果 (CompVis/stable-diffusion: A latent text-to-image diffusion model)。
Stable Diffusion Web UI (AUTOMATIC1111)
项目简介
- 项目地址:https://github.com/AUTOMATIC1111/stable-diffusion-webui (Stable Diffusion web UI - GitHub)
- 核心技术:基于Gradio实现的Web界面,集成Txt2Img、Img2Img、Inpainting、ControlNet等多种功能模块 (Stable Diffusion web UI - GitHub)。
安装部署流程
克隆Web UI仓库
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git cd stable-diffusion-webui
- 下载并放置模型
将.ckpt
文件复制到models/Stable-diffusion/
目录中 (Stable Diffusion web UI - GitHub)。 运行启动脚本
- Windows:双击
webui-user.bat
Linux/macOS:
./webui.sh
支持
--autolaunch
、--medvram
等参数以优化体验 (How to update AUTOMATIC1111 Stable Diffusion webui - Reddit)。
- Windows:双击
界面功能与实践
- 提示词管理:支持提示词分组与正负提示。
- 扩展插件:AnimateDiff、ControlNet、LoRA微调等多种社区扩展,可通过
extensions/
目录一键安装 (AnimateDiff for AUTOMATIC1111 Stable Diffusion WebUI - GitHub)。 - 批量生成与可视化调整:结合CFG尺度、步数等参数,实时预览并导出多张高清图像。
国内外资源清单
应用资源
资源名称 | 链接与说明 |
---|---|
CompVis/stable-diffusion | 官方模型库与采样脚本 (CompVis/stable-diffusion: A latent text-to-image diffusion model) |
AUTOMATIC1111 Web UI | 强大本地Web界面工具 (Stable Diffusion web UI - GitHub) |
Hugging Face Diffusers | Python SDK与示例笔记本 (Stable Diffusion with Diffusers - Hugging Face) |
AnimateDiff 插件 | 为Web UI添加GIF/视频生成功能 (AnimateDiff for AUTOMATIC1111 Stable Diffusion WebUI - GitHub) |
学习资源
- 官方论文:《High-Resolution Image Synthesis with Latent Diffusion Models》 (High-Resolution Image Synthesis with Latent Diffusion Models)
- Hugging Face博客:Stable Diffusion原理与Diffusers教程 (Stable Diffusion with Diffusers - Hugging Face, The Stable Diffusion Guide - Hugging Face)
- 中文教程:知乎专栏(部署与使用实操) (本地部署Stable Diffusion教程,详细教学,已安装成功 - 知乎专栏, 从零开始,手把手教你Window本地化部署stable diffusion AI绘图- 知乎);CSDN博客(Windows快速部署) (Stable Diffusion Windows本地部署超详细教程(手动+自动+整合包三 ..., Stable Diffusion 本地部署教程原创 - CSDN博客)
- 社区论坛:Reddit r/StableDiffusion、GitHub Issues、国内AI绘画QQ群/Discord。
实操建议与最佳实践
- 性能优化:启用
--medvram
和--lowvram
参数,可在显存有限时生成更高分辨率图像 (How to update AUTOMATIC1111 Stable Diffusion webui - Reddit)。 - 安全与合规:使用
––disable-safe-unpickle
选项防止不安全模型加载风险,并遵守模型许可证(如AGPL-3.0)。 - 微调扩展:通过LoRA或Dreambooth脚本,可在Web UI中一键微调自定义风格模型 (Using LoRA for Efficient Stable Diffusion Fine-Tuning - Hugging Face)。