本地部署 Stable Diffusion AI 模型实战指南
本文介绍如何在本地 Python 环境中使用 diffusers 库运行 Stable Diffusion 模型,实现文生图(Text-to-Image)功能。我们将涵盖环境搭建、模型加载、推理配置及完整代码示例。
1. 环境准备
diffusers 目前对 Python 3.12 的支持尚不完善,建议使用 Python 3.10 或 3.11 版本创建虚拟环境以避免依赖冲突。
1.1 创建虚拟环境
# 使用 3.10 版本的 python 创建 venv
/opt/homebrew/opt/[email protected]/libexec/bin/python3 -m venv .venv
# 激活 venv (Mac/Linux)
source .venv/bin/activate
# Windows 用户请使用:.venv\Scripts\activate
1.2 安装依赖
安装核心库及其依赖项:
pip install diffusers accelerate transformers torch torchvision torchaudio
注意:如果是在 NVIDIA GPU 环境下,请确保已安装对应版本的 CUDA Toolkit 和 cuDNN,以便 PyTorch 能调用 GPU 加速。
2. 模型下载与选择
模型文件通常存储在 Hugging Face 或 Civitai 等社区平台。diffusers 支持多种格式的模型文件。
2.1 模型来源
- Hugging Face: 官方预训练模型仓库,如
runwayml/stable-diffusion-v1-5。 - Civitai: 提供大量微调后的 CheckPoint 和 LoRA 模型,适合特定风格生成。
2.2 下载方式
推荐使用 Git LFS 克隆模型仓库:
git lfs install
git clone [email protected]:<MODEL_ID>
# 例如:git clone [email protected]:stabilityai/stable-diffusion-xl-base-1.0
或者直接从网页下载 .safetensors 格式的单文件模型。
2.3 模型类型选择
选择模型时需关注以下属性:
- 基础架构: SD 1.5 生成 512x512 图片;SDXL 1.0 及以上支持 1024x1024 及以上分辨率。
- 速度优化: Turbo 系列可显著减少推理步数,提升生成速度。
- 风格: 根据需求选择写实、动漫或艺术风格。
3. 加载模型
根据模型文件格式不同,加载方式有所区别。
3.1 单文件加载
如果是下载的 .safetensors 单文件模型:
from diffusers import StableDiffusionXLPipeline
pipe = StableDiffusionXLPipeline.from_single_file()


