Stability-AI/generative-modelsView GitHub Homepage for Latest Official Releases
Stability AI开发的生成式AI模型库,包含Stable Diffusion XL、Stable Video Diffusion等多种图像和视频生成模型
MITPythongenerative-modelsStability-AI 26.3k Last Updated: May 20, 2025
Stability AI 生成式模型项目详细介绍
项目概述
Stability AI的生成式模型库是一个开源项目,提供了多种先进的AI生成模型,包括图像生成、视频生成和多视角合成等功能。该项目采用模块化设计,支持多种扩散模型的训练和推理。
核心特性
1. 模块化架构
- 配置驱动方式:通过调用
instantiate_from_config()
函数构建和组合子模块 - 清理后的扩散模型类:从
LatentDiffusion
重构为DiffusionEngine
- 统一条件处理:
GeneralConditioner
类处理所有类型的条件输入
2. 改进的模型架构
- 去噪器框架:支持连续时间和离散时间模型
- 独立的采样器:将引导器与采样器分离
- 清理的自编码模型:优化的编码器架构
支持的模型
SDXL (Stable Diffusion XL) 系列
- SDXL-base-1.0:基础模型,支持1024x1024分辨率图像生成
- SDXL-refiner-1.0:细化模型,用于图像后处理
- SDXL-Turbo:快速生成模型
SVD (Stable Video Diffusion) 系列
- SVD:图像到视频模型,生成14帧576x1024分辨率视频
- SVD-XT:扩展版本,支持25帧生成
SV3D (Stable Video 3D) 系列
- SV3D_u:基于单图像的轨道视频生成
- SV3D_p:支持相机路径指定的3D视频生成
SV4D (Stable Video 4D) 系列
- SV4D:视频到4D扩散模型,用于新视角视频合成
- 生成40帧(5个视频帧 × 8个相机视角)576x576分辨率
技术架构
去噪器框架
- 连续时间模型:支持更灵活的时间采样
- 离散时间模型:传统扩散模型的特殊情况
- 可配置组件:
- 损失函数权重 (
denoiser_weighting.py
) - 网络预条件 (
denoiser_scaling.py
) - 噪声级别采样 (
sigma_sampling.py
)
- 损失函数权重 (
安装和使用
环境要求
- Python 3.10+
- PyTorch 2.0+
- CUDA支持的GPU
安装步骤
git clone https://github.com/Stability-AI/generative-models.git
cd generative-models
# 创建虚拟环境
python3 -m venv .pt2
source .pt2/bin/activate
# 安装依赖
pip3 install -r requirements/pt2.txt
pip3 install .
pip3 install -e git+https://github.com/Stability-AI/datapipelines.git@main#egg=sdata
快速开始
文本生成图像 (SDXL)
# 下载模型权重到 checkpoints/ 文件夹
# 运行Streamlit演示
streamlit run scripts/demo/sampling.py --server.port <your_port>
图像生成视频 (SVD)
# 下载SVD模型
# 运行简单的视频采样
python scripts/sampling/simple_video_sample.py --input_path <path/to/image.png>
多视角合成 (SV3D)
# SV3D_u (轨道视频)
python scripts/sampling/simple_video_sample.py --input_path <path/to/image.png> --version sv3d_u
# SV3D_p (指定相机路径)
python scripts/sampling/simple_video_sample.py --input_path <path/to/image.png> --version sv3d_p --elevations_deg 10.0
4D视频合成 (SV4D)
python scripts/sampling/simple_video_sample_4d.py --input_path assets/sv4d_videos/test_video1.mp4 --output_folder outputs/sv4d
训练配置
支持的训练类型
- 像素级扩散模型:直接在像素空间训练
- 潜在扩散模型:在潜在空间训练,需要预训练的VAE
- 条件生成模型:支持文本、类别等多种条件
训练示例
# MNIST条件生成训练
python main.py --base configs/example_training/toy/mnist_cond.yaml
# 文本到图像训练
python main.py --base configs/example_training/txt2img-clipl.yaml
数据处理
数据管道
- 支持大规模训练的数据管道
- WebDataset格式的tar文件
- Map-style数据集支持
数据格式
example = {
"jpg": x,
"txt": "a beautiful image"
}
模型许可证
- SDXL-1.0:CreativeML Open RAIL++-M 许可证
- SDXL-0.9:研究许可证
- SVD系列:研究用途许可证
水印检测
项目使用invisible-watermark库在生成图像中嵌入不可见水印:
# 安装水印检测环境
python -m venv .detect
source .detect/bin/activate
pip install "numpy>=1.17" "PyWavelets>=1.1.1" "opencv-python>=4.1.0.25"
pip install --no-deps invisible-watermark
# 检测水印
python scripts/demo/detect.py <filename>
技术特点
1. 高质量生成
- SDXL支持1024x1024高分辨率图像生成
- SVD支持高质量视频生成
- SV3D/SV4D支持多视角和4D视频合成
2. 灵活的条件控制
- 支持文本、图像、向量等多种条件输入
- 分类器无关引导(Classifier-free Guidance)
- 可配置的条件dropout率
3. 先进的采样技术
- 多种数值求解器
- 可配置的采样步数和离散化方法
- 支持引导包装器
4. 研究友好
- 详细的技术报告和论文
- 开源代码和模型权重
- 活跃的社区支持
应用场景
- 艺术创作:文本生成艺术图像
- 内容制作:图像生成视频内容
- 3D建模:多视角图像生成
- 研究开发:扩散模型算法研究
- 教育培训:AI生成技术学习
项目优势
- 模块化设计:易于扩展和定制
- 高性能:优化的训练和推理代码
- 多模态支持:图像、视频、3D等多种生成任务
- 持续更新:定期发布新模型和功能
- 社区活跃:丰富的文档和示例代码
这个项目代表了当前生成式AI领域的最先进技术,为研究者和开发者提供了强大的工具来探索和应用生成式AI技术。