🚀 潜在整合モデル (LCM): SDXL
潜在整合モデル (LCM) は、Simian Luo、Yiqin Tan らによる Latent Consistency Models: Synthesizing High-Resolution Images with Few-Step Inference で提案されました。また、Simian Luo、Suraj Patil、Daniel Gu が同じアプローチを成功させ、SDXL 用の LCM を作成しました。
このチェックポイントは、stable-diffusion-xl-base-1.0
の LCM 蒸留バージョンで、推論ステップ数をわずか 2 - 8 ステップに減らすことができます。
🚀 クイックスタート
LCM SDXL は、🤗 Hugging Face Diffusers ライブラリのバージョン v0.23.0 以降でサポートされています。モデルを実行するには、まず Diffusers ライブラリの最新バージョンと、peft
、accelerate
、transformers
をインストールします。
pip install --upgrade pip
pip install --upgrade diffusers transformers accelerate peft
✨ 主な機能
- 推論ステップ数を大幅に削減できる(2 - 8 ステップ)。
- テキストから画像、画像から画像、インペインティング、ControlNet、T2I Adapter などの機能に対応。
📦 インストール
上記のクイックスタートで示したコマンドを実行することで、必要なライブラリをインストールできます。
pip install --upgrade pip
pip install --upgrade diffusers transformers accelerate peft
💻 使用例
基本的な使用法
テキストから画像
モデルは、ベースパイプライン stabilityai/stable-diffusion-xl-base-1.0
でロードできます。次に、スケジューラを LCMScheduler
に変更し、推論ステップ数を 2 から 8 ステップに減らすことができます。guidance_scale
を無効にするか、1.0 から 2.0 の値を使用するようにしてください。
from diffusers import UNet2DConditionModel, DiffusionPipeline, LCMScheduler
import torch
unet = UNet2DConditionModel.from_pretrained("latent-consistency/lcm-sdxl", torch_dtype=torch.float16, variant="fp16")
pipe = DiffusionPipeline.from_pretrained("stabilityai/stable-diffusion-xl-base-1.0", unet=unet, torch_dtype=torch.float16, variant="fp16")
pipe.scheduler = LCMScheduler.from_config(pipe.scheduler.config)
pipe.to("cuda")
prompt = "a close-up picture of an old man standing in the rain"
image = pipe(prompt, num_inference_steps=4, guidance_scale=8.0).images[0]

画像から画像
対応しています!詳細ドキュメントは後日公開予定です。
インペインティング
対応しています!詳細ドキュメントは後日公開予定です。
ControlNet
対応しています!詳細ドキュメントは後日公開予定です。
T2I Adapter
対応しています!詳細ドキュメントは後日公開予定です。
📚 ドキュメント
情報テーブル
属性 |
详情 |
ライブラリ名 |
diffusers |
ベースモデル |
stabilityai/stable-diffusion-xl-base-1.0 |
タグ |
text-to-image |
ライセンス |
openrail++ |
推論 |
false |
引用情報
Latent Consistency Model (LCM) は、Simian Luo、Yiqin Tan らによる Latent Consistency Models: Synthesizing High-Resolution Images with Few-Step Inference で提案されました。
📄 ライセンス
このプロジェクトは、openrail++ ライセンスの下で公開されています。