Buckets:
| # パイプライン | |
| ## ModularPipeline[[diffusers.ModularPipeline]] | |
| #### diffusers.ModularPipeline[[diffusers.ModularPipeline]] | |
| ```python | |
| diffusers.ModularPipeline(blocks: diffusers.modular_pipelines.modular_pipeline.ModularPipelineBlocks | None = None, pretrained_model_name_or_path: str | os.PathLike | None = None, components_manager: diffusers.modular_pipelines.components_manager.ComponentsManager | None = None, collection: str | None = None, workflow: str | None = None, modular_config_dict: dict[str, typing.Any] | None = None, config_dict: dict[str, typing.Any] | None = None, **kwargs) | |
| ``` | |
| [ソース](https://github.com/huggingface/diffusers/blob/main/src/diffusers/modular_pipelines/modular_pipeline.py#L1700) | |
| **パラメータ:** | |
| blocks : パイプラインで使用されるブロックである ModularPipelineBlocks | |
| すべての Modular パイプラインの基底クラス。 | |
| #### from_pretrained[[diffusers.ModularPipeline.from_pretrained]] | |
| ```python | |
| from_pretrained(pretrained_model_name_or_path: str | os.PathLike | None, trust_remote_code: bool | None = None, components_manager: diffusers.modular_pipelines.components_manager.ComponentsManager | None = None, collection: str | None = None, workflow: str | None = None, **kwargs) | |
| ``` | |
| [ソース](https://github.com/huggingface/diffusers/blob/main/src/diffusers/modular_pipelines/modular_pipeline.py#L1925) | |
| **パラメータ:** | |
| pretrained_model_name_or_path (`str` または `os.PathLike`、省略可) : 事前学習済みパイプライン設定へのパスです。まず `modular_model_index.json` から設定を読み込もうとし、標準的な非モジュラーリポジトリとの互換性のために、失敗した場合は `model_index.json` にフォールバックします。pretrained_model_name_or_path にパイプライン設定が含まれていない場合、初期化時に None に設定されます。 | |
| trust_remote_code (`bool`, 省略可能) : パイプラインの読み込み時にリモートコードを信頼するかどうか。`pretrained_model_name_or_path` 内のカスタムコードに基づいてパイプラインブロックを作成する場合は、True に設定する必要があります。 | |
| components_manager (`ComponentsManager`、省略可) : 異なるパイプラインにまたがる複数のコンポーネントを管理し、オフローディング戦略を適用するための ComponentsManager インスタンス。 | |
| collection (`str`, 任意) -- ComponentsManager でコンポーネントを整理するためのコレクション名。 | |
| workflow (`str`, 省略可) : パイプラインブロックによって宣言されたワークフローの名前。指定した場合、ブロックはそのワークフローの実行ブロックに剪定されるため、パイプラインは、そのワークフローが使用するコンポーネントのみを期待し、`load_components()` もそのコンポーネントのみを読み込みます。 | |
| Hugging Face HubのリポジトリからModularPipelineを読み込みます。 | |
| #### get_component_spec[[diffusers.ModularPipeline.get_component_spec]] | |
| ```python | |
| get_component_spec(name: str) | |
| ``` | |
| [ソース](https://github.com/huggingface/diffusers/blob/main/src/diffusers/modular_pipelines/modular_pipeline.py#L2401) | |
| **戻り値:** | |
| - 指定されたコンポーネント名に対応するComponentSpecオブジェクトのコピー | |
| #### load_components[[diffusers.ModularPipeline.load_components]] | |
| ```python | |
| load_components(names: list[str] | str | None = None, workflow: str | None = None, **kwargs) | |
| ``` | |
| [ソース](https://github.com/huggingface/diffusers/blob/main/src/diffusers/modular_pipelines/modular_pipeline.py#L2489) | |
| **パラメータ:** | |
| names : list of component names to load. If None, will load all components with default_creation_method == "from_pretrained". If provided as a list or string, will load only the specified components. | |
| workflow : パイプラインブロックによって宣言されたワークフローの名前。指定した場合、そのワークフローの実行ブロックが使用するコンポーネントのみが読み込まれます。`names` と併用することはできません。 | |
| - ****kwargs** : `from_pretrained()`に渡す追加の引数。以下のような値を指定できます。 - 読み込むすべてのコンポーネントに適用される単一の値。例: dtype=torch.bfloat16 - 辞書。例: dtype={"unet": torch.bfloat16, "default": torch.float32} - kwargsに異なる読み込みフィールドが渡された場合、ComponentSpecをオーバーライドする可能性があります。例: `pretrained_model_name_or_path`、`variant`、`revision` など - kwargsに異なる読み込みフィールドが渡された場合、ComponentSpecをオーバーライドする可能性があります。例: `pretrained_model_name_or_path`、`variant`、`revision` など | |
| スペックから選択されたコンポーネントを読み込みます。 | |
| #### register_components[[diffusers.ModularPipeline.register_components]] | |
| ```python | |
| register_components(**kwargs) | |
| ``` | |
| [ソース](https://github.com/huggingface/diffusers/blob/main/src/diffusers/modular_pipelines/modular_pipeline.py#L2186) | |
| **パラメータ:** | |
| - ****kwargs** : キーがコンポーネント名、値がコンポーネントオブジェクトであるキーワード引数。例: register_components(unet=unet_model, text_encoder=encoder_model) | |
| コンポーネントを、それに対応する仕様とともに登録します。 | |
| このメソッドは、以下を担当します: | |
| 1. コンポーネントのオブジェクトをローダーの属性として設定します(例: self.unet = unet)。 | |
| 2. `save_pretrained` 時に `modular_model_index.json` として保存される設定辞書を更新します(from_pretrained コンポーネントのみ対象) | |
| 3. コンポーネントマネージャーがアタッチされている場合、コンポーネントを追加します(from_pretrainedコンポーネントのみ対象) | |
| このメソッドは、次の場合に呼び出されます: | |
| - コンポーネントはまず__init__で初期化されます: | |
| - from_pretrained によって __init__ 時に読み込まれないコンポーネントは None として登録されます。 | |
| - __init__ 時に from_pretrained 以外のコンポーネントが作成され、オブジェクト自体として登録されます | |
| - コンポーネントは`update_components()`メソッドで更新されます。例: loader.update_components(unet=unet) または loader.update_components(guider=guider_spec) | |
| - (from_pretrained) コンポーネントは`load_components()`メソッドで読み込まれます。例えば、loader.load_components(names=["unet"])で特定のコンポーネントを読み込み、loader.load_components()でデフォルトのすべてのコンポーネントを読み込みます。 | |
| 注: | |
| - コンポーネントに None を登録すると、属性は None に設定されますが、spec は設定辞書と同期され、`save_pretrained` 実行時に `modular_model_index.json` として保存されます。 | |
| - このメソッドの外側、例えば`update_components()`メソッド内で、新しいコンポーネントに合わせてcomponent_specsが更新されます。 | |
| #### save_pretrained[[diffusers.ModularPipeline.save_pretrained]] | |
| ```python | |
| save_pretrained(save_directory: str | os.PathLike, safe_serialization: bool = True, variant: str | None = None, max_shard_size: int | str | None = None, push_to_hub: bool = False, **kwargs) | |
| ``` | |
| [ソース](https://github.com/huggingface/diffusers/blob/main/src/diffusers/modular_pipelines/modular_pipeline.py#L2026) | |
| **パラメータ:** | |
| save_directory (`str` または `os.PathLike`) : パイプラインを保存するディレクトリ。存在しない場合は作成されます。 | |
| safe_serialization (`bool`、*任意*、デフォルトは`True`) : モデルを`safetensors`で保存するか、`pickle`を用いた従来の PyTorch の方法で保存するかどうかを指定します。 | |
| variant (`str`, *任意*) : 指定した場合、重みは`pytorch_model.<variant>.bin`の形式で保存されます。 | |
| max_shard_size (`int` または `str`、デフォルトは `None`) : シャーディングされる前のチェックポイントの最大サイズ。シャーディング後の各チェックポイントは、このサイズ未満になります。文字列で指定する場合は、数字の後に単位(`"5GB"` など)を続ける必要があります。整数で指定する場合は、単位はバイトです。 | |
| push_to_hub (`bool`, *任意*, デフォルトは `False`) : パイプラインを保存した後、Hugging Face モデルハブにプッシュするかどうか。 | |
| - ****kwargs** : 追加のキーワード引数: - `overwrite_modular_index` (`bool`、*省略可能*、デフォルトは `True`): 保存された各コンポーネントの読み込み仕様を、Hub にプッシュする場合は `repo_id`、それ以外の場合は `save_directory` を指すように、`modular_model_index.json` を更新するかどうか。読み込まれていないコンポーネントは保存されず、常に記録された読み込み仕様を保持します。保存対象のコンポーネントについても記録された仕様を保持する場合は `False` を渡します(意図的に他のリポジトリを参照するインデックスなど)。ただし、load id を持たないコンポーネント(`update_components` で追加されたカスタムモデルなど)は、記録されたソースがないため、引き続き書き換えられます。 - `repo_id` (`str`、*省略可能*): パイプラインをプッシュするリポジトリの ID。デフォルトは `save_directory` の最後のコンポーネントです。 - `commit_message` (`str`、*省略可能*): Hub へのプッシュ操作のコミットメッセージ。 - `private` (`bool`、*省略可能*): リポジトリを非公開にするかどうか。 - `create_pr` (`bool`、*省略可能*、デフォルトは `False`): 直接プッシュする代わりに Pull Request を作成するかどうか。 - `token` (`str`、*省略可能*): 認証に使用する Hugging Face トークン。 | |
| パイプラインとそのすべてのコンポーネントをディレクトリに保存し、[from_pretrained()](/docs/diffusers/main/ja/api/modular_diffusers/pipeline#diffusers.ModularPipeline.from_pretrained)クラスメソッドを使って再読み込みできるようにします。 | |
| #### へ[[diffusers.ModularPipeline.to]] | |
| ```python | |
| to(*args, **kwargs) | |
| ``` | |
| [ソース](https://github.com/huggingface/diffusers/blob/main/src/diffusers/modular_pipelines/modular_pipeline.py#L2651) | |
| **パラメータ:** | |
| dtype (`torch.dtype`、*任意*) : 指定された[`dtype`](https://pytorch.org/docs/stable/tensor_attributes.html#torch.dtype)を持つパイプラインを返します | |
| device (`torch.Device`, *任意*) : 指定された [`device`](https://pytorch.org/docs/stable/tensor_attributes.html#torch.device) を持つパイプラインを返します | |
| silence_dtype_warnings (`str`、*任意*、デフォルトは`False`) : 対象の`dtype`が対象の`device`と互換性がない場合、警告を省略するかどうか。 | |
| **戻り値:** [DiffusionPipeline](/docs/diffusers/main/ja/api/pipelines/overview#diffusers.DiffusionPipeline) | |
| パイプラインは、指定された`dtype`および/または`dtype`に変換されました。 | |
| Performs Pipeline dtype and/or device conversion. A torch.dtype and torch.device are inferred from the arguments of `self.to(*args, **kwargs).` | |
| > [!TIP] > パイプラインがすでに正しい torch.dtype と torch.device を持っている場合、そのまま返されます。 | |
| それ以外の場合、> 返される pipeline は、指定された torch.dtype と torch.device を持つ self のコピーです。 | |
| `to`を呼び出す方法には、次のものがあります。 | |
| - `to(dtype, silence_dtype_warnings=False) → DiffusionPipeline` は、指定された [`dtype`](https://pytorch.org/docs/stable/tensor_attributes.html#torch.dtype) を持つパイプラインを返します | |
| - `to(device, silence_dtype_warnings=False) → DiffusionPipeline` を呼び出すと、指定した [`device`](https://pytorch.org/docs/stable/tensor_attributes.html#torch.device) を持つパイプラインが返されます。 | |
| - `to(device=None, dtype=None, silence_dtype_warnings=False) → DiffusionPipeline` は、指定された [`device`](https://pytorch.org/docs/stable/tensor_attributes.html#torch.device) と [`dtype`](https://pytorch.org/docs/stable/tensor_attributes.html#torch.dtype) を持つパイプラインを返します。 | |
| #### unload_components[[diffusers.ModularPipeline.unload_components]] | |
| ```python | |
| unload_components(names: list[str] | str) | |
| ``` | |
| [ソース](https://github.com/huggingface/diffusers/blob/main/src/diffusers/modular_pipelines/modular_pipeline.py#L2595) | |
| **パラメータ:** | |
| names : 読み込みを解除するコンポーネント名、またはコンポーネント名のリスト。 | |
| 選択したコンポーネントをアンロードし、そのメモリを解放します。 | |
| コンポーネント属性は`None`にリセットされ、ComponentsManagerがアタッチされている場合は、コンポーネントがそこから削除されます。コンポーネントの仕様は変更されないため、後で`load_components()`を呼び出してコンポーネントを再度読み込むことができます。 | |
| #### update_components[[diffusers.ModularPipeline.update_components]] | |
| ```python | |
| update_components(**kwargs) | |
| ``` | |
| [ソース](https://github.com/huggingface/diffusers/blob/main/src/diffusers/modular_pipelines/modular_pipeline.py#L2408) | |
| **パラメータ:** | |
| - ****kwargs** : 更新するコンポーネントオブジェクトまたは設定値: - コンポーネントオブジェクト: `AutoModel.from_pretrained()` または `ComponentSpec.load()` で読み込まれたモデルには、読み込み情報が自動的にタグ付けされます。重みを持たない ConfigMixin オブジェクト(スケジューラやガイダーなど)は、そのまま直接渡すことができます。 - 設定値: 設定を更新するための単純な値(例: `requires_safety_checker=False`) | |
| パイプラインがインスタンス化された後で、コンポーネントおよび設定値と仕様を更新します。 | |
| このメソッドを使用すると、以下を行うことができます: | |
| 1. 既存のコンポーネントを新しいコンポーネントに置き換えます(例:`self.unet`または`self.text_encoder`の更新) | |
| 2. 設定値を更新します(例:`self.requires_safety_checker` フラグの変更) | |
| パイプラインの属性としてコンポーネントと設定値を更新するだけでなく、このメソッドは以下も更新します: | |
| - `_component_specs` および `_config_specs` 内の対応する仕様 | |
| - `save_pretrained` 時に `modular_model_index.json` として保存される `config` ディクショナリ | |
| 例: | |
| ```python | |
| # Update pre-trained model | |
| pipeline.update_components(unet=new_unet_model, text_encoder=new_text_encoder) | |
| # Update configuration values | |
| pipeline.update_components(requires_safety_checker=False) | |
| ``` | |
| 注: | |
| - `AutoModel.from_pretrained()` または `ComponentSpec.load()` で読み込まれたコンポーネントには | |
| シリアライズ用に保存されたスペックを読み込みます。Hubへの参照がないカスタムコンポーネントやローカルで読み込まれたコンポーネントについては、`save_pretrained()`の実行中に`modular_model_index.json`のエントリが自動的に更新されます。 | |
| - 重みを持たないConfigMixinオブジェクト(スケジューラーやガイダーなど)は、そのまま直接渡すことができます。 | |
Xet Storage Details
- Size:
- 16.1 kB
- Xet hash:
- 6048831dfd940e615b82c81aeec1cfb1a4728a3e8fa71607331caa046137e07d
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.