Diffusers 文档

配置

Hugging Face's logo
加入 Hugging Face 社区

并获得增强的文档体验

开始使用

配置

来自 SchedulerMixin 的调度器和来自 ModelMixin 的模型都继承自 ConfigMixin,它将所有传递给其各自 __init__ 方法的参数存储在一个 JSON 配置文件中。

要使用私有或封闭模型,请使用 huggingface-cli login 登录。

ConfigMixin

diffusers.ConfigMixin

< >

( )

所有配置类的基类。所有配置参数都存储在 self.config 下。还提供 from_config()save_config() 方法,用于加载、下载和保存继承自 ConfigMixin 的类。

类属性

  • config_name (str) — 调用 save_config() 时应存储配置的文件名(应由父类覆盖)。
  • ignore_for_config (List[str]) — 不应保存在配置中的属性列表(应由子类覆盖)。
  • has_compatibles (bool) — 类是否具有兼容类(应由子类覆盖)。
  • _deprecated_kwargs (List[str]) — 已弃用的关键字参数。请注意,只有在至少一个参数被弃用时,init 函数才应具有 kwargs 参数(应由子类覆盖)。

load_config

< >

( pretrained_model_name_or_path: typing.Union[str, os.PathLike] return_unused_kwargs = False return_commit_hash = False **kwargs ) dict

参数

  • pretrained_model_name_or_path (stros.PathLike, 可选) — 可以是:

    • Hub 上托管的预训练模型的模型ID字符串(例如 google/ddpm-celebahq-256)。
    • 包含使用 save_config() 保存的模型权重的目录路径(例如 ./my_model_directory)。
  • cache_dir (Union[str, os.PathLike], 可选) — 预训练模型配置下载后缓存的目录路径,如果未使用标准缓存。
  • force_download (bool, 可选, 默认为 False) — 是否强制(重新)下载模型权重和配置文件,如果存在缓存版本则覆盖。
  • proxies (Dict[str, str], 可选) — 要按协议或端点使用的代理服务器字典,例如 {'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}。代理用于每个请求。
  • output_loading_info(bool, 可选, 默认为 False) — 是否同时返回包含缺失键、意外键和错误消息的字典。
  • local_files_only (bool, 可选, 默认为 False) — 是否仅加载本地模型权重和配置文件。如果设置为 True,则不会从 Hub 下载模型。
  • token (strbool, 可选) — 用于远程文件的 HTTP bearer 授权令牌。如果为 True,则使用从 diffusers-cli login 生成的令牌(存储在 ~/.huggingface 中)。
  • revision (str, 可选, 默认为 "main") — 要使用的特定模型版本。它可以是分支名称、标签名称、提交ID或Git允许的任何标识符。
  • subfolder (str, 可选, 默认为 "") — 模型文件在 Hub 或本地较大模型仓库中的子文件夹位置。
  • return_unused_kwargs (bool, 可选, 默认为 False) — 是否返回配置中未使用的关键字参数。
  • return_commit_hash (bool, 可选, 默认为 False) — 是否返回加载配置的 commit_hash

返回

字典

存储在 JSON 配置文件中的所有参数的字典。

加载模型或调度器配置。

from_config

< >

( config: typing.Union[diffusers.configuration_utils.FrozenDict, typing.Dict[str, typing.Any]] = None return_unused_kwargs = False **kwargs ) ModelMixinSchedulerMixin

参数

  • config (Dict[str, Any]) — 从中实例化 Python 类的配置字典。确保仅加载兼容类的配置文件。
  • return_unused_kwargs (bool, 可选, 默认为 False) — 是否返回未被 Python 类使用的 kwargs。
  • kwargs (剩余的关键字参数字典, 可选) — 可用于更新配置对象(加载后)并初始化 Python 类。**kwargs 直接传递给底层调度器/模型的 __init__ 方法,并最终覆盖 config 中同名的参数。

返回

ModelMixinSchedulerMixin

从配置字典实例化的模型或调度器对象。

从配置字典实例化 Python 类。

示例

>>> from diffusers import DDPMScheduler, DDIMScheduler, PNDMScheduler

>>> # Download scheduler from huggingface.co and cache.
>>> scheduler = DDPMScheduler.from_pretrained("google/ddpm-cifar10-32")

>>> # Instantiate DDIM scheduler class with same config as DDPM
>>> scheduler = DDIMScheduler.from_config(scheduler.config)

>>> # Instantiate PNDM scheduler class with same config as DDPM
>>> scheduler = PNDMScheduler.from_config(scheduler.config)

save_config

< >

( save_directory: typing.Union[str, os.PathLike] push_to_hub: bool = False **kwargs )

参数

  • save_directory (stros.PathLike) — 配置文件 JSON 文件保存的目录(如果不存在则会创建)。
  • push_to_hub (bool, 可选, 默认为 False) — 保存模型后是否将其推送到 Hugging Face Hub。您可以使用 repo_id 指定要推送到的仓库(默认为您的命名空间中 save_directory 的名称)。
  • kwargs (Dict[str, Any], 可选) — 传递给 push_to_hub() 方法的附加关键字参数。

将配置对象保存到 save_directory 中指定的目录,以便可以使用 from_config() 类方法重新加载它。

to_json_file

< >

( json_file_path: typing.Union[str, os.PathLike] )

参数

  • json_file_path (stros.PathLike) — 保存配置实例参数的 JSON 文件路径。

将配置实例的参数保存到 JSON 文件。

to_json_string

< >

( ) str

返回

字符串

包含所有构成配置实例的属性的 JSON 格式字符串。

将配置实例序列化为 JSON 字符串。

< > 在 GitHub 上更新