稳定扩散是一种潜在文本转图像扩散模型,能够根据任何文本输入生成逼真的图像。
Stable-Diffusion-v1-5 检查点以 Stable-Diffusion-v1-2 的权重初始化,并在512x512分辨率下对"laion-aesthetics v2 5+"进行595k步的微调,同时将文本条件设置降低10%,以改善无需分类器的引导采样。
您可以使用🧨Diffusers库和RunwayML GitHub仓库来使用此模型。
from diffusers import StableDiffusionPipeline
import torch
from openmind import is_torch_npu_available
if is_torch_npu_available():
device = "npu:0"
else:
device = "cpu"
model_id = "./stable_diffusion_v1_5"
pipe = StableDiffusionPipeline.from_pretrained(model_id, torch_dtype=torch.float16)
pipe = pipe.to(device)
generator = torch.Generator(device=device).manual_seed(1234)
prompt = "a photo of an astronaut riding a horse on mars"
image = pipe(prompt, generator=generator).images[0]
image.save("astronaut_rides_horse.png")为了获取更详细的指导、用例和 JAX 中的示例,请遵循此处的指示。
下载权重文件
遵循此处的指示。
开发者: Robin Rombach, Patrick Esser
模型类型: 基于扩散的文本到图像生成模型
语言: 英语
许可证: CreativeML OpenRAIL M 许可证是一种Open RAIL M 许可证,由BigScience和RAIL 创议在负责任人工智能许可领域合作成果的改编版。请参见关于 BLOOM Open RAIL 许可证的论文,我们的许可证基于此。
模型描述: 这是一个可以根据文本提示生成和修改图像的模型。它是一种潜在扩散模型,使用了固定的预训练文本编码器(CLIP ViT-L/14),如Imagen 论文中所述。
引用方式:
@InProceedings{Rombach_2022_CVPR,
author = {Rombach, Robin and Blattmann, Andreas and Lorenz, Dominik and Esser, Patrick and Ommer, Bj\"orn},
title = {High-Resolution Image Synthesis With Latent Diffusion Models},
booktitle = {Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},
month = {June},
year = {2022},
pages = {10684-10695}
}该模型仅用于研究目的。可能的研究领域和任务包括
以下描述了禁止的使用方式。
注意:本节内容源自DALLE-MINI 模型卡,但同样适用于 Stable Diffusion v1。
模型不应用于故意创建或传播对人们产生敌意或疏远环境的图像。这包括生成人们预见到会感到不安、困扰或冒犯的图像;或传播历史上或当前的刻板印象的内容。
模型未经过训练以生成事实或真实的人物或事件表示,因此使用模型生成此类内容超出了模型的能力范围。
使用模型生成对个人残忍的内容属于滥用。这包括但不限于:
尽管图像生成模型的性能令人印象深刻,但它们也可能强化或加剧社会偏见。 Stable Diffusion v1 在LAION-2B(en)的子集上进行训练,该数据集主要限于英文描述的图像。 来自使用其他语言的文化和社区的文字和图像很可能没有得到充分的考虑。这影响了模型的总体输出,因为白人和西方文化通常被视为默认设置。此外,模型使用非英语提示生成内容的能力比使用英语提示时要差得多。
该模型打算与 Diffusers 中的安全检查器一起使用。
安全检查器通过检查模型输出与已知硬编码的 NSFW 概念是否匹配来工作。
这些概念故意隐藏,以减少反向工程过滤器的可能性。
具体而言,检查器会在图像生成后将有害概念在 CLIPTextModel 的嵌入空间中的类概率进行比较。将概念与生成的图像一起传递到模型中,并与每个 NSFW 概念的手工程度权重进行比较。
训练数据 模型开发者使用了以下数据集来训练模型:
训练过程 Stable Diffusion v1-5 是一个潜在扩散模型,它结合了自动编码器和在自动编码器潜在空间中训练的扩散模型。在训练过程中,
目前提供了六个 Stable Diffusion 检查点,以下是它们的训练过程。
stable-diffusion-v1-1:在 laion2B-en 的 256x256 分辨率上训练了 237,000 步。在 laion-high-resolution(来自 LAION-5B 的 170M 个分辨率 >= 1024x1024 的例子)上以 512x512 分辨率训练了 194,000 步。
stable-diffusion-v1-2:从 stable-diffusion-v1-1 中恢复。在 "laion-improved-aesthetics"(laion2B-en 的一个子集,过滤为原始大小 >= 512x512、美学评分 > 5.0 且水印概率 < 0.5 的图像)上以 512x512 分辨率训练了 515,000 步。
stable-diffusion-v1-3:从 stable-diffusion-v1-2 中恢复 - 在 "laion-improved-aesthetics" 上以 512x512 分辨率训练了 195,000 步,并降低了 10% 的文本条件,以提高无分类器指导采样。
stable-diffusion-v1-4:从 stable-diffusion-v1-2 中恢复 - 在 "laion-aesthetics v2 5+" 上以 512x512 分辨率训练了 225,000 步,并降低了 10% 的文本条件,以提高无分类器指导采样。
stable-diffusion-v1-5:从 stable-diffusion-v1-2 中恢复 - 在 "laion-aesthetics v2 5+" 上以 512x512 分辨率训练了 595,000 步,并降低了 10% 的文本条件,以提高无分类器指导采样。
stable-diffusion-inpainting:从 stable-diffusion-v1-5 中恢复 - 然后,在 “laion-aesthetics v2 5+” 上以 512x512 分辨率进行 440,000 步的修复训练和 10% 的文本条件降低。对于修复,UNet 有 5 个额外的输入通道(4 个用于编码的遮罩图像,1 个用于遮罩本身),这些权重在恢复非修复检查点后初始化为零。在训练过程中,我们生成合成遮罩,并在 25% 的情况下遮盖一切。
硬件: 32 x 8 x A100 GPUs
优化器: AdamW
梯度累加: 2
批次: 32 x 8 x 2 x 4 = 2048
学习率: 在前 10,000 步预热到 0.0001,然后保持不变
采用不同无分类器指导系数(1.5、2.0、3.0、4.0、5.0、6.0、7.0、8.0)和50步PNDM/PLMS采样步骤的评估显示了检查点的相对改进:

在512x512分辨率下,使用50步PLMS采样和COCO2017验证集中的10000个随机提示进行评估。未针对FID分数进行优化。
Stable Diffusion v1 预估排放量 基于这些信息,我们使用Lacoste等人(2019)提出的机器学习影响计算器预估以下CO2排放量。我们利用硬件类型、运行时间、云服务提供商和计算区域来估计碳影响。
@InProceedings{Rombach_2022_CVPR,
author = {Rombach, Robin and Blattmann, Andreas and Lorenz, Dominik and Esser, Patrick and Ommer, Bj\"orn},
title = {High-Resolution Image Synthesis With Latent Diffusion Models},
booktitle = {Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},
month = {June},
year = {2022},
pages = {10684-10695}
}本模型卡片由Robin Rombach与Patrick Esser撰写,基于DALL-E Mini模型卡片制作。