AWS Trainium & Inferentia 文档
Stable Diffusion XL Turbo
加入 Hugging Face 社区
并获得增强的文档体验
开始使用
Stable Diffusion XL Turbo
概述
SDXL Turbo 是一种对抗性时间蒸馏 Stable Diffusion XL (SDXL) 模型,能够在最少 1 步内运行推理(查看 🤗diffusers
了解更多详情)。
在 optimum-neuron
中,您可以
- 使用
NeuronStableDiffusionXLPipeline
类进行编译和运行推理。
在这里,我们将使用 Optimum CLI 编译 stabilityai/sdxl-turbo
模型。
导出到 Neuron
optimum-cli export neuron --model stabilityai/sdxl-turbo --batch_size 1 --height 512 --width 512 --auto_cast matmul --auto_cast_type bf16 sdxl_turbo_neuron/
文本到图像
现在我们可以使用预编译的模型在 Inf2 上从文本提示生成图像
from optimum.neuron import NeuronStableDiffusionXLPipeline
pipe = NeuronStableDiffusionXLPipeline.from_pretrained("sdxl_turbo_neuron/", data_parallel_mode="all")
prompt = ["Self-portrait oil painting, a beautiful cyborg with golden hair, 8k"] * 2
images = pipe(prompt=prompt, guidance_scale=0.0, num_inference_steps=1).images
Inf2 实例包含一个或多个 Neuron 设备,每个 Neuron 设备包括 2 个 NeuronCore-v2。默认情况下,我们将 LCM 的整个管道加载到两个 Neuron 核。这意味着当批处理大小可被 2 整除时,您可以充分利用两个核的计算能力。
您希望我们在 🤗Optimum-neuron
中支持其他扩散功能吗?请向 Optimum-neuron
Github 仓库 提交问题或在 HuggingFace 社区论坛 上与我们讨论,谢谢 🤗!