🚀 KOALA-700M-LLaVA-Caption模型
KOALA是一个快速文本到图像的模型。它通过压缩SDXL的U-Net并从SDXL中提炼知识,在减少模型大小的同时,保持了不错的生成质量。KOALA-700M在NVIDIA 4090 GPU上生成1024x1024图像不到1.5秒,速度是SDXL的两倍多,可作为资源有限时SDM和SDXL之间的不错替代方案。
🚀 快速开始
你可以使用🤗 Diffusers库 进行推理。以下是一个使用25个去噪步骤的推理代码示例:
import torch
from diffusers import StableDiffusionXLPipeline
pipe = StableDiffusionXLPipeline.from_pretrained("etri-vilab/koala-700m-llava-cap", torch_dtype=torch.float16)
pipe = pipe.to("cuda")
prompt = "A portrait painting of a Golden Retriever like Leonard da Vinci"
negative = "worst quality, low quality, illustration, low resolution"
image = pipe(prompt=prompt, negative_prompt=negative).images[0]
✨ 主要特性
- 高效的U-Net架构:KOALA模型使用简化的U-Net架构,与前代模型Stable Diffusion XL (SDXL) 相比,模型大小分别减少了54%和69%。
- 基于自注意力的知识蒸馏:KOALA的核心技术专注于自注意力特征的蒸馏,这对保持图像生成质量至关重要。
📦 模型卡片
模型 |
链接 |
koala-700m |
https://huggingface.co/etri-vilab/koala-700m |
koala-700m-llava-cap |
https://huggingface.co/etri-vilab/koala-700m-llava-cap |
koala-1b |
https://huggingface.co/etri-vilab/koala-1bm |
koala-1b-llava-cap |
https://huggingface.co/etri-vilab/koala-1b-llava-cap |
📚 详细文档
摘要
简而言之
我们提出了一个名为KOALA的快速文本到图像模型,通过压缩SDXL的U-Net并将SDXL的知识提炼到我们的模型中。KOALA-700M在NVIDIA 4090 GPU上可以在不到1.5秒的时间内生成1024x1024的图像,速度比SDXL快两倍多。KOALA-700M可以在资源有限的情况下作为SDM和SDXL之间的不错替代方案。
完整摘要
由于其生成性能和开源性质,Stable diffusion是社区中文本到图像 (T2I) 合成的主要方法。最近,Stable Diffusion XL (SDXL) 作为Stable diffusion的继任者,因其在1024x1024更高分辨率和更大模型下的显著性能提升而受到广泛关注。然而,其增加的计算成本和模型大小要求终端用户使用更高端的硬件(如更大VRAM的GPU),导致更高的运营成本。为了解决这个问题,在这项工作中,我们提出了一种通过提炼SDXL知识获得的高效潜在扩散模型用于文本到图像合成。为此,我们首先对SDXL中的去噪U-Net进行了深入分析,它是模型的主要瓶颈,然后基于分析设计了一个更高效的U-Net。其次,我们探索了如何有效地将SDXL的生成能力提炼到一个高效的U-Net中,并最终确定了四个关键因素,其中核心是自注意力是最重要的部分。通过我们高效的U-Net和基于自注意力的知识蒸馏策略,我们构建了我们的高效T2I模型,称为KOALA-1B和-700M,同时将模型大小分别减少到原始SDXL模型的54%和69%。特别是,KOALA-700M比SDXL快两倍多,同时仍保持了不错的生成质量。我们希望由于其平衡的速度 - 性能权衡,我们的KOALA模型可以作为资源受限环境中具有成本效益的SDXL替代方案。
架构
有两种压缩的U-Net类型,KOALA-1B和KOALA-700M,它们通过减少残差块和Transformer块来实现。
U-Net比较
U-Net |
SDM-v2.0 |
SDXL-Base-1.0 |
KOALA-1B |
KOALA-700M |
参数 |
865M |
2,567M |
1,161M |
782M |
检查点大小 |
3.46GB |
10.3GB |
4.4GB |
3.0GB |
Transformer块 |
[1, 1, 1, 1] |
[0, 2, 10] |
[0, 2, 6] |
[0, 2, 5] |
中间块 |
✓ |
✓ |
✓ |
✗ |
延迟 |
1.131s |
3.133s |
1.604s |
1.257s |
- Tx表示Transformer块,CKPT表示训练的检查点文件。
- 我们在NVIDIA 4090 GPU (24GB) 上使用FP16精度和25个去噪步骤测量延迟。
- SDM-v2.0使用768x768分辨率,而SDXL和KOALA模型使用1024x1024分辨率。
不同GPU上的延迟和内存使用比较
我们使用各种消费级GPU(NVIDIA 3060Ti (8GB)、2080Ti (11GB) 和4090 (24GB))测量了768x768分辨率的SDM-v2.0和1024x1024分辨率的其他模型的推理时间。我们使用25个去噪步骤和FP16/FP32精度。OOM表示内存不足。请注意,SDXL-Base无法在8GB GPU上运行。
模型描述
用途
直接使用
该模型仅用于研究目的。可能的研究领域和任务包括:
- 艺术作品生成及在设计和其他艺术过程中的应用。
- 教育或创意工具中的应用。
- 生成模型的研究。
- 对可能生成有害内容的模型进行安全部署。
- 探索和理解生成模型的局限性和偏差。
超出范围的使用
该模型未经过训练以真实反映人物或事件,因此使用该模型生成此类内容超出了该模型的能力范围。
局限性和偏差
- 文本渲染:模型在图像中渲染长而清晰的文本时面临挑战。
- 复杂提示:KOALA有时在处理涉及多个属性的复杂提示时会遇到困难。
- 数据集依赖:当前的局限性部分归因于训练数据集(LAION-aesthetics-V2 6+)的特性。
📄 许可证
如果你使用了该模型,请引用以下文献:
@misc{Lee@koala,
title={KOALA: Self-Attention Matters in Knowledge Distillation of Latent Diffusion Models for Memory-Efficient and Fast Image Synthesis},
author={Youngwan Lee and Kwanyong Park and Yoorhim Cho and Yong-Ju Lee and Sung Ju Hwang},
year={2023},
eprint={2312.04005},
archivePrefix={arXiv},
primaryClass={cs.CV}
}