许可协议: mit
前置模型:
- warp-diffusion/wuerstchen-prior
标签:
- 文本生成图像
- wuerstchen
Würstchen - 概述
Würstchen是一种扩散模型,其文本条件模型在高度压缩的图像潜在空间中运行。为何这一点至关重要?数据压缩能大幅降低训练和推理的计算成本。在1024x1024分辨率图像上训练的成本远高于32x32分辨率。通常其他方案采用4倍至8倍的空间压缩率,而Würstchen通过创新设计实现了42倍的空间压缩——这一突破源于常规方法在超过16倍压缩后难以忠实重建细节图像。该模型采用两阶段压缩架构(Stage A和Stage B):Stage A是VQGAN,Stage B是扩散自编码器(详见论文)。第三阶段模型Stage C则在这个高压缩潜在空间中训练,其计算资源消耗仅为当前顶尖模型的零头,从而实现更低成本、更快速的推理。
Würstchen - 解码器
解码器包含Stage A和Stage B,负责将图像嵌入(由前置模型Stage C生成或从真实图像提取)解码回像素空间。具体流程:Stage B先将图像嵌入解码至VQGAN空间,再由Stage A(VQGAN架构)解码到像素空间,二者共同实现42倍空间压缩。
注意: 重建过程存在信息损失。当前Stage B的重建结果常缺失细节,尤其在面部、手部等区域较为明显。我们正致力于未来版本中提升重建质量!
图像尺寸
模型训练分辨率介于1024x1024至1536x1536之间,但在1024x2048等比例下也表现良好。值得注意的是,前置模型Stage C能快速适应新分辨率,因此在2048x2048分辨率上微调的计算成本极低。

运行方式
需配合前置模型使用:https://huggingface.co/warp-ai/wuerstchen-prior
import torch
from diffusers import AutoPipelineForText2Image
device = "cuda"
dtype = torch.float16
pipeline = AutoPipelineForText2Image.from_pretrained(
"warp-diffusion/wuerstchen", torch_dtype=dtype
).to(device)
caption = "拟人化猫咪穿着消防员制服"
output = pipeline(
prompt=caption,
height=1024,
width=1024,
prior_guidance_scale=4.0,
decoder_guidance_scale=0.0,
).images
图像采样耗时
下图展示了A100显卡上不同批量大小(num_images_per_prompt
)的推理耗时对比(左图为torch>2.0原生性能,右图为启用torch.compile
优化后):

模型详情
-
开发者: Pablo Pernias, Dominic Rampas
-
模型类型: 基于扩散的文本生成图像模型
-
支持语言: 英语
-
许可证: MIT
-
模型描述: 本模型可根据文本提示生成和修改图像,其架构遵循Würstchen论文中的Stage C设计,采用固定预训练文本编码器(CLIP ViT-bigG/14)。
-
资源链接: GitHub仓库, 论文。
-
引用格式:
@inproceedings{
pernias2024wrstchen,
title={W\"urstchen: An Efficient Architecture for Large-Scale Text-to-Image Diffusion Models},
author={Pablo Pernias and Dominic Rampas and Mats Leon Richter and Christopher Pal and Marc Aubreville},
booktitle={The Twelfth International Conference on Learning Representations},
year={2024},
url={https://openreview.net/forum?id=gU58d5QeGv}
}
环境影响
Würstchen v2 碳排放估算
基于Machine Learning Impact计算器(参见Lacoste等(2019)),结合硬件类型、运行时长、云服务商及区域数据估算:
- 硬件类型: A100 PCIe 40GB
- 使用时长: 24602小时
- 云服务商: AWS
- 计算区域: 美国东部
- 碳排放量(功耗×时间×电网碳强度系数): 2275.68千克CO2当量