Hub 文档

在 Hugging Face Hub 上使用 🧨 Diffusers

Hugging Face's logo
加入 Hugging Face 社区

并获得增强的文档体验

开始使用

在 Hugging Face 上使用 🧨 Diffusers

Diffusers 是最先进的预训练扩散模型库,可用于生成图像、音频甚至分子的 3D 结构。无论您是寻找简单的推理解决方案,还是想训练自己的扩散模型,Diffusers 都是一个模块化工具箱,支持这两种情况。该库的设计侧重于易用性而非性能、简单性而非复杂性,以及可定制性而非抽象性。

在 Hub 中探索 Diffusers

Hub 上有超过 10,000 个与 diffusers 兼容的管道,您可以通过在模型页面左侧进行筛选来找到它们。扩散系统通常由多个组件组成,例如文本编码器、UNet、VAE 和调度器。尽管它们不是独立的模型,但管道抽象使其易于用于推理或训练。

您可以找到适用于许多不同任务的扩散管道:

如果您想在不下载模型的情况下测试它们,可以直接在浏览器中试用模型,这要归功于内置浏览器小部件!

Diffusers 存储库文件

Diffusers 模型存储库包含所有必需的模型子组件,例如用于编码图像和解码潜变量的变分自编码器、文本编码器、Transformer 模型等。这些子组件以多文件夹布局组织。

每个子文件夹都包含每个组件的权重和配置(如果适用),类似于 Transformers 模型。

权重通常存储为 safetensors 文件,配置通常是包含模型架构信息的 json 文件。

使用现有管道

所有 diffusers 管道都只需一行代码即可使用!要运行生成,我们建议始终从 DiffusionPipeline 开始。

from diffusers import DiffusionPipeline

pipeline = DiffusionPipeline.from_pretrained("stabilityai/stable-diffusion-xl-base-1.0")

如果您想加载特定的管道组件(例如 UNet),可以通过以下方式进行:

from diffusers import UNet2DConditionModel

unet = UNet2DConditionModel.from_pretrained("stabilityai/stable-diffusion-xl-base-1.0", subfolder="unet")

分享您的管道和模型

所有管道类模型类调度器类都与 Hub 完全兼容。更具体地说,它们可以使用 from_pretrained() 方法轻松地从 Hub 加载,并可以使用 push_to_hub() 方法与他人共享。

欲了解更多详情,请查阅文档

其他资源

< > 在 GitHub 上更新