潜在一致性模型
论文官方仓库:潜在一致性模型:通过少步推理合成高分辨率图像。
论文官方仓库:LCM-LoRA:通用的稳定扩散加速模块。
项目主页:https://latent-consistency-models.github.io
体验我们的演示:
LCM 社区:加入我们的 LCM Discord 频道 参与讨论。欢迎开发者贡献代码。
重大新闻 🔥🔥!!
- (🤖新) 2023/12/1 Pixart-α X LCM 发布,这是一个高质量图像生成模型。查看这里。
- (❤️新) 2023/11/10 训练脚本已发布!! 查看这里。
- (🤯新) 2023/11/10 免训练加速方法 LCM-LoRA 诞生! 查看我们的技术报告这里和 Hugging Face 博客这里。
- (⚡️新) 2023/11/10 LCM 有重大更新! 我们发布了 3个 LCM-LoRA (SD-XL, SSD-1B, SD-V1.5),查看这里。
- (🚀新) 2023/11/10 LCM 有重大更新! 我们发布了 2个全参数微调的 LCM (SD-XL, SSD-1B),查看这里。
新闻
- (🔥新) 2023/11/10 我们现在支持使用 C# 和 ONNX Runtime 进行 LCM 推理! 感谢 @saddam213! 查看链接这里。
- (🔥新) 2023/11/01 实时潜在一致性模型发布!! Github 链接在此。感谢 @radames 制作的非常酷的 Huggingface🤗 演示 实时图像到图像, 实时文本到图像。Twitter/X 链接。
- (🔥新) 2023/10/28 我们为 LCM 支持了图像到图像功能! 请参考"🔥 图像到图像演示"。
- (🔥新) 2023/10/25 我们在 🧨 Diffusers 库中现在有官方 LCM Pipeline 和 LCM Scheduler 了! 查看新的"使用方法"。
- (🔥新) 2023/10/24 用于本地使用的简单 Streamlit UI:查看链接。感谢 @akx。
- (🔥新) 2023/10/24 我们现在支持 SD-Webui 和 ComfyUI 了!! 感谢 @0xbitches。查看链接:SD-Webui 和 ComfyUI。
- (🔥新) 2023/10/23 现在也支持在 Windows/Linux CPU 上运行! 感谢 @rupeshs。查看链接。
- (🔥新) 2023/10/22 现在支持 Google Colab 了。感谢 @camenduru。查看链接:Colab
- (🔥新) 2023/10/21 我们现在支持本地 gradio 演示了。LCM 可以在本地运行!! 请参考"本地 gradio 演示"。
- (🔥新) 2023/10/19 我们在 🤗 Hugging Face Space 上提供了 LCM 的演示。在此体验。
- (🔥新) 2023/10/19 我们在 🤗 Hugging Face 上提供了 LCM 模型 (Dreamshaper_v7)。在此下载。
- (🔥新) 2023/10/19 LCM 已集成到 🧨 Diffusers 库中。请参考"使用方法"。
🔥 图像到图像演示 (Image-to-Image):
我们现在支持图像到图像功能了! 在这里体验令人印象深刻的图像到图像演示:Replicate,SD-webui,ComfyUI,Colab
本地图像到图像的 gradio 演示即将推出!
🔥 本地 gradio 演示 (文本到图像):
要在本地运行模型,你可以下载 "local_gradio" 文件夹:
- 安装 Pytorch (CUDA)。MacOS 系统可以下载 "MPS" 版本的 Pytorch。请参考:https://pytorch.org。如果你使用 Intel GPU,还需安装 Intel Extension for Pytorch。
- 安装主要库:
pip install diffusers transformers accelerate gradio==3.48.0
- 启动 gradio:(对于 MacOS 用户,需要在 app.py 中设置 device="mps";对于 Intel GPU 用户,在 app.py 中设置
device="xpu"
)
python app.py
已发布的演示和模型
我们的 Hugging Face 演示和模型已发布! 潜在一致性模型已在 🧨 diffusers 中得到支持。
LCM 模型下载:LCM_Dreamshaper_v7
LCM模型已上传到始智AI(wisemodel) 中文用户可在此下载,下载链接。
通过将无分类器引导蒸馏到模型的输入中,LCM 可以在非常短的推理时间内生成高质量图像。我们在768 x 768分辨率、CFG比例w=8、批量大小=4的设置下,使用A800 GPU比较推理时间。
使用方法
我们现在在🧨 Diffusers库中有官方的LCM Pipeline和LCM Scheduler!旧的使用方法将被弃用。
要自己运行模型,你可以利用🧨 Diffusers库:
- 安装库:
pip install --upgrade diffusers # 确保使用至少0.22版本的diffusers
pip install transformers accelerate
- 运行模型:
from diffusers import DiffusionPipeline
import torch
pipe = DiffusionPipeline.from_pretrained("SimianLuo/LCM_Dreamshaper_v7")
# 为节省GPU内存,可以使用torch.float16,但可能会影响图像质量。
pipe.to(torch_device="cuda", torch_dtype=torch.float32)
prompt = "自画像油画,一个美丽的金发赛博格,8k"
# 可以设置为1~50步。LCM支持快速推理,甚至<=4步。推荐:1~8步。
num_inference_steps = 4
images = pipe(prompt=prompt, num_inference_steps=num_inference_steps, guidance_scale=8.0, lcm_origin_steps=50, output_type="pil").images
更多信息,请查看官方文档: 👉 https://huggingface.co/docs/diffusers/api/pipelines/latent_consistency_models#latent-consistency-models
使用方法(已弃用)
我们现在在🧨 Diffusers库中有官方的LCM Pipeline和LCM Scheduler!旧的使用方法将被弃用。但你仍可以通过在from_pretrained(...)
中添加revision="fb9c5d1"
来使用旧的方法。
要自己运行模型,你可以利用🧨 Diffusers库:
- 安装库:
pip install diffusers transformers accelerate
- 运行模型:
from diffusers import DiffusionPipeline
import torch
pipe = DiffusionPipeline.from_pretrained("SimianLuo/LCM_Dreamshaper_v7", custom_pipeline="latent_consistency_txt2img", custom_revision="main", revision="fb9c5d")
# 为节省GPU内存,可以使用torch.float16,但可能会影响图像质量。
pipe.to(torch_device="cuda", torch_dtype=torch.float32)
prompt = "自画像油画,一个美丽的金发赛博格,8k"
# 可以设置为1~50步。LCM支持快速推理,甚至<=4步。推荐:1~8步。
num_inference_steps = 4
images = pipe(prompt=prompt, num_inference_steps=num_inference_steps, guidance_scale=8.0, lcm_origin_steps=50, output_type="pil").images
我们的贡献者:
BibTeX
LCM:
@misc{luo2023latent,
title={Latent Consistency Models: Synthesizing High-Resolution Images with Few-Step Inference},
author={Simian Luo and Yiqin Tan and Longbo Huang and Jian Li and Hang Zhao},
year={2023},
eprint={2310.04378},
archivePrefix={arXiv},
primaryClass={cs.CV}
}
LCM-LoRA:
@article{luo2023lcm,
title={LCM-LoRA: A Universal Stable-Diffusion Acceleration Module},
author={Luo, Simian and Tan, Yiqin and Patil, Suraj and Gu, Daniel and von Platen, Patrick and Passos, Apolin{\'a}rio and Huang, Longbo and Li, Jian and Zhao, Hang},
journal={arXiv preprint arXiv:2311.05556},
year={2023}
}