# 設定

[SchedulerMixin](/docs/diffusers/v0.43.0/ja/api/schedulers/overview#diffusers.SchedulerMixin) 由来のスケジューラと [ModelMixin](/docs/diffusers/v0.43.0/ja/api/models/overview#diffusers.ModelMixin) 由来のモデルは、[ConfigMixin](/docs/diffusers/v0.43.0/ja/api/configuration#diffusers.ConfigMixin) を継承し、それぞれの `__init__` メソッドに渡されたすべてのパラメータを JSON 設定ファイルに保存します。

> [!TIP]
> プライベートモデルや[ゲート付き](https://huggingface.co/docs/hub/models-gated#gated-models)モデルを使用するには、`hf auth login`でログインしてください。

## ConfigMixin[[diffusers.ConfigMixin]]

#### diffusers.ConfigMixin[[diffusers.ConfigMixin]]

```python
diffusers.ConfigMixin()
```

[ソース](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/configuration_utils.py#L87)

すべての設定クラスの基底クラスです。すべての設定パラメータは`self.config`の下に保存されます。また、[ConfigMixin](/docs/diffusers/v0.43.0/ja/api/configuration#diffusers.ConfigMixin)を継承するクラスの読み込み、ダウンロード、保存を行うための[from_config()](/docs/diffusers/v0.43.0/ja/api/configuration#diffusers.ConfigMixin.from_config)および[save_config()](/docs/diffusers/v0.43.0/ja/api/configuration#diffusers.ConfigMixin.save_config)メソッドも提供します。

クラス属性:
- **config_name** (`str`) -- [save_config()](/docs/diffusers/v0.43.0/ja/api/configuration#diffusers.ConfigMixin.save_config) を呼び出す際に設定を保存するファイル名（親クラスで上書きされるべきです）。
- **ignore_for_config** (`list[str]`) -- 設定に保存すべきでない属性のリスト（サブクラスで上書きする必要があります）。
- **has_compatibles** (`bool`) -- クラスに互換性のあるクラスがあるかどうか（サブクラスでオーバーライドすべき）。
- **_deprecated_kwargs** (`list[str]`) -- 非推奨のキーワード引数です。なお、`init` 関数は、少なくとも 1 つの引数が非推奨である場合のみ `kwargs` 引数を持つべきです（サブクラスでオーバーライドされるべきです）。

#### load_config[[diffusers.ConfigMixin.load_config]]

```python
load_config(pretrained_model_name_or_path: str | os.PathLike, return_unused_kwargs = False, return_commit_hash = False, **kwargs)
```

[ソース](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/configuration_utils.py#L322)

**パラメータ:**

pretrained_model_name_or_path (`str` または `os.PathLike`、*省略可能*) : 以下のいずれかです。 - Hub にホストされている事前学習済みモデルの *model id*（例: `google/ddpm-celebahq-256`）を表す文字列。 - [save_config()](/docs/diffusers/v0.43.0/ja/api/configuration#diffusers.ConfigMixin.save_config) で保存されたモデルの重みを格納した *ディレクトリ*（例: `./my_model_directory`）へのパス。

cache_dir (`str | os.PathLike`、*任意*) : 標準のキャッシュを使用しない場合、ダウンロードした事前学習済みモデルの構成がキャッシュされるディレクトリのパス。

force_download (`bool`, *任意*, デフォルトは `False`) : モデルの重みと設定ファイルの(再)ダウンロードを強制するかどうか。キャッシュされたバージョンが存在する場合でも、それを上書きします。

proxies (`dict[str, str]`、*省略可*) : プロトコルまたはエンドポイントごとに使用するプロキシサーバーの辞書です。例えば、`{'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}` のように指定します。これらのプロキシは、各リクエストで使用されます。

output_loading_info(`bool`, *optional*, デフォルトは `False`) : 欠落キー、予期しないキー、エラーメッセージを含む辞書を返すかどうか。

local_files_only (`bool`、*任意*、デフォルトは`False`) : ローカルのモデルの重みと設定ファイルのみを読み込むかどうかを指定します。`True`に設定すると、モデルは Hub からダウンロードされません。

token (`str` または *bool*、*省略可能*) : リモートファイルの HTTP ベアラ認証に使用するトークン。`True` の場合、`diffusers-cli login` で生成されたトークン（`~/.huggingface` に保存）が使用されます。

revision (`str`、*任意*、デフォルトは`"main"`) : 使用する特定のモデルバージョンです。ブランチ名、タグ名、コミット ID、または Git で許可されている任意の識別子を使用できます。

subfolder (`str`、*任意*、デフォルトは `""`) : Hub またはローカル上のより大きなモデルリポジトリ内での、モデルファイルのサブフォルダの場所。

return_unused_kwargs (`bool`, *任意*, デフォルトは `False) : 設定の未使用のキーワード引数を返すかどうか。

return_commit_hash (`bool`, *optional*, defaults to `False) : Whether the `commit_hash` of the loaded configuration are returned.

**戻り値:** `dict`

JSON設定ファイルに保存されているすべてのパラメータの辞書。

モデルまたはスケジューラーの設定を読み込みます。

#### from_config[[diffusers.ConfigMixin.from_config]]

```python
from_config(config: diffusers.configuration_utils.FrozenDict | dict[str, typing.Any] = None, return_unused_kwargs = False, **kwargs)
```

[ソース](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/configuration_utils.py#L221)

**パラメータ:**

config (`dict[str, Any]`) : Python クラスがインスタンス化される設定辞書です。互換性のあるクラスの設定ファイルのみを読み込むようにしてください。

return_unused_kwargs (`bool`, *任意*, デフォルトは `False`) : Python クラスによって消費されない kwargs を返すかどうかを指定します。

kwargs (残りのキーワード引数の辞書、*任意*) : 設定オブジェクト（読み込み後）を更新し、Python クラスを初期化するために使用できます。`**kwargs` は、基盤となるスケジューラ/モデルの `__init__` メソッドに直接渡され、最終的に `config` 内の同名の引数を上書きします。

**戻り値:** [ModelMixin](/docs/diffusers/v0.43.0/ja/api/models/overview#diffusers.ModelMixin)または[SchedulerMixin](/docs/diffusers/v0.43.0/ja/api/schedulers/overview#diffusers.SchedulerMixin)

設定辞書からインスタンス化されたモデルまたはスケジューラーオブジェクト。

設定辞書からPythonクラスをインスタンス化します。

例:

```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[[diffusers.ConfigMixin.save_config]]

```python
save_config(save_directory: str | os.PathLike, push_to_hub: bool = False, **kwargs)
```

[ソース](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/configuration_utils.py#L177)

**パラメータ:**

save_directory (`str` または `os.PathLike`) : 設定 JSON ファイルを保存するディレクトリ（存在しない場合は作成されます）。

push_to_hub (`bool`、*任意*、デフォルトは`False`) : モデルを保存した後に Hugging Face Hub にプッシュするかどうかを指定します。`repo_id` でプッシュ先のリポジトリを指定できます（指定しない場合、`save_directory` の名前があなたのネームスペース内でデフォルトとして使用されます）。

kwargs (`dict[str, Any]`、*省略可*) : [push_to_hub()](/docs/diffusers/v0.43.0/ja/api/schedulers/overview#diffusers.utils.PushToHubMixin.push_to_hub) メソッドに渡される追加のキーワード引数。

`save_directory` で指定されたディレクトリに設定オブジェクトを保存し、[from_config()](/docs/diffusers/v0.43.0/ja/api/configuration#diffusers.ConfigMixin.from_config) クラスメソッドを使用して再読み込みできるようにします。

#### to_json_file[[diffusers.ConfigMixin.to_json_file]]

```python
to_json_file(json_file_path: str | os.PathLike)
```

[ソース](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/configuration_utils.py#L647)

**パラメータ:**

json_file_path (`str` または `os.PathLike`) : 設定インスタンスのパラメータを保存する JSON ファイルへのパス。

設定インスタンスのパラメータを JSON ファイルに保存します。

#### to_json_string[[diffusers.ConfigMixin.to_json_string]]

```python
to_json_string()
```

[ソース](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/configuration_utils.py#L602)

**戻り値:** `str`

JSON形式で、設定インスタンスを構成するすべての属性を含む文字列。

設定インスタンスをJSON文字列にシリアライズします。

