使用 LCM LoRA 4 步完成 SDXL 推理

文章介绍了一种新的方法LCMLoRA,通过只训练少量适配器(LoRA层)而非整个模型,显著加速了StableDiffusion和SDXL的图像生成过程,特别是在GPU上实现了10倍以上的速度提升。该技术可用于多种模型和硬件,推动了图像生成的易用性和效率提升。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

LCM 模型 (Latent Consistency Model) 通过将原始模型蒸馏为另一个需要更少步数 (4 到 8 步,而不是原来的 25 到 50 步) 的版本以减少用 Stable Diffusion (或 SDXL) 生成图像所需的步数。蒸馏是一种训练过程,其主要思想是尝试用一个新模型来复制源模型的输出。蒸馏后的模型要么尺寸更小 (如 DistilBERT 或最近发布的 Distil-Whisper),要么需要运行的步数更少 (本文即是这种情况)。一般来讲,蒸馏是一个漫长且成本高昂的过程,需要大量数据、耐心以及一些 GPU 运算。

但以上所述皆为过往,今天我们翻新篇了!

今天,我们很高兴地公开一种新方法,其可以从本质上加速 Stable Diffusion 和 SDXL,效果跟用 LCM 蒸馏过一样!有了它,我们在 3090 上运行 任何 SDXL 模型,不需要 70 秒,也不需要 7 秒,仅需要约 1 秒就行了!在 Mac 上,我们也有 10 倍的加速!听起来是不是很带劲?那继续往下读吧!

目录

  • 方法概述

  • 快有啥用?

  • 快速推理 SDXL LCM LoRA 模型

    • 生成质量

    • 引导比例及反向提示

    • 与标准 SDXL 模型的生成质量对比

    • 其他模型的 LCM LoRA

    • Diffusers 全集成

  • 测试基准

  • 已公开发布的 LCM LoRA 及 LCM 模型

  • 加分项:将 LCM LoRA 与常规 SDXL LoRA 结合起来

  • 如何训练 LCM 模型及 LCM LoRA

  • 资源

  • 致谢

方法概述

到底用了啥技巧?

在使用原始 LCM 蒸馏时,每个模型都需要单独蒸馏。而 LCM LoRA 的核心思想是只对少量适配器 (即 LoRA 层) 进行训练,而不用对完整模型进行训练。推理时,可将生成的 LoRA 用于同一模型的任何微调版本,而无需对每个版本都进行蒸馏。如果你已经迫不及待地想试试这种方法的实际效果了,可以直接跳到下一节试一下推理代码。如果你想训练自己的 LoRA,流程如下:

  1. 从 Hub 中选择一个教师模型。如: 你可以使用 SDXL (base),或其任何微调版或 dreambooth 微调版,随你喜欢。

  2. 在该模型上 训练 LCM LoRA 模型。LoRA 是一种参数高效的微调 (PEFT),其实现成本比全模型微调要便宜得多。有关 PEFT 的更详细信息,请参阅 此博文 或 diffusers 库的 LoRA 文档。

  3. 将 LoRA 与任何 SDXL 模型和 LCM 调度器一起组成一个流水线,进行推理。就这样!用这个流水线,你只需几步推理即可生成高质量的图像。

欲知更多详情,请 下载我们的论文。

快有啥用?

Stable Diffusion 和 SDXL 的快速推理为新应用和新工作流打开了大门,仅举几例:

  • 更易得: 变快后,生成工具可以被更多人使用,即使他们没有最新的硬件。

  • 迭代更快: 无论从个人还是商业角度来看,在短时间内生成更多图像或进行更多尝试对于艺术家和研究人员来说都非常有用。

  • 可以在各种不同的加速器上进行生产化部署,包括 CPU。

  • 图像生成服务会更便宜。

为了衡量我们所说的速度差异,在 M1 Mac 上用 SDXL (base) 生成一张 1024x1024 图像大约需要一分钟。而用 LCM LoRA,我们只需约 6 秒 (4 步) 即可获得出色的结果。速度快了一个数量级,我们再也无需等待结果,这带来了颠覆性的体验。如果使用 4090,我们几乎可以得到实时响应 (不到 1 秒)。有了它,SDXL 可以用于需要实时响应的场合。

快速推理 SDXL LCM LoRA 模型

在最新版的 diffusers 中,大家可以非常容易地用上 LCM LoRA:

from diffu
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值