Buckets:

mishig's picture
|
download
raw
5.43 kB
# パイプラインとモデルの共有
[PushToHubMixin](/docs/diffusers/main/ja/api/schedulers/overview#diffusers.utils.PushToHubMixin) を使用して、パイプライン、モデル、スケジューラーを Hub に共有できます。このミックスインは:
1. Hub にリポジトリを作成します
2. モデル、スケジューラー、またはパイプラインのファイルを保存し、後で再読み込みできるようにします
3. これらのファイルを含むフォルダを Hub にアップロードします
アクセストークンである[token](https://huggingface.co/settings/tokens)で、Hugging Faceアカウントにログインしてください。
```py
from huggingface_hub import notebook_login
notebook_login()
```
```bash
hf auth login
```
短いID(`"my-controlnet-model"`)を指定してユーザーネームスペースにプッシュするか、`"your-org/my-controlnet-model"`を指定して組織にプッシュします。
## モデル
モデルを Hub にプッシュするには、[push_to_hub()](/docs/diffusers/main/ja/api/schedulers/overview#diffusers.utils.PushToHubMixin.push_to_hub) を呼び出し、モデルのリポジトリ ID を指定します。
```py
from diffusers import ControlNetModel
controlnet = ControlNetModel(
block_out_channels=(32, 64),
layers_per_block=2,
in_channels=4,
down_block_types=("DownBlock2D", "CrossAttnDownBlock2D"),
cross_attention_dim=32,
conditioning_embedding_out_channels=(16, 32),
)
controlnet.push_to_hub("my-controlnet-model")
```
[push_to_hub()](/docs/diffusers/main/ja/api/schedulers/overview#diffusers.utils.PushToHubMixin.push_to_hub) メソッドは、モデルの `config.json` ファイルを保存し、重みは自動的に [safetensors ファイル](./other-formats#safetensors) として保存されます。
[ControlNetModel.from_pretrained()](/docs/diffusers/main/ja/api/models/overview#diffusers.ModelMixin.from_pretrained) を使用して、モデルを再度読み込みます。
```py
model = ControlNetModel.from_pretrained("your-namespace/my-controlnet-model")
```
## スケジューラー
Hub にスケジューラをプッシュするには、[push_to_hub()](/docs/diffusers/main/ja/api/schedulers/overview#diffusers.utils.PushToHubMixin.push_to_hub) を呼び出し、スケジューラのリポジトリ ID を指定します。
```py
from diffusers import DDIMScheduler
scheduler = DDIMScheduler(
beta_start=0.00085,
beta_end=0.012,
beta_schedule="scaled_linear",
clip_sample=False,
set_alpha_to_one=False,
)
scheduler.push_to_hub("my-ddim-scheduler")
```
[push_to_hub()](/docs/diffusers/main/ja/api/schedulers/overview#diffusers.utils.PushToHubMixin.push_to_hub) メソッドは、スケジューラーの `scheduler_config.json` ファイルを指定されたリポジトリに保存します。
[from_pretrained()](/docs/diffusers/main/ja/api/schedulers/overview#diffusers.SchedulerMixin.from_pretrained)でスケジューラを再度読み込みます。
```py
scheduler = DDIMScheduler.from_pretrained("your-namespace/my-ddim-scheduler")
```
## パイプライン
To push a pipeline to the Hub, load it with [from_pretrained()](/docs/diffusers/main/ja/api/pipelines/overview#diffusers.DiffusionPipeline.from_pretrained), then call [push_to_hub()](/docs/diffusers/main/ja/api/schedulers/overview#diffusers.utils.PushToHubMixin.push_to_hub) with a repository id.
```py
import torch
from diffusers import DiffusionPipeline
pipeline = DiffusionPipeline.from_pretrained(
"Qwen/Qwen-Image", dtype=torch.bfloat16, device_map="cuda" # or "mps", "xpu", "cpu"
)
pipeline.push_to_hub("your-namespace/my-qwen-image")
```
The [push_to_hub()](/docs/diffusers/main/ja/api/schedulers/overview#diffusers.utils.PushToHubMixin.push_to_hub) method saves each component to a subfolder in the repository. Load the pipeline again with [DiffusionPipeline.from_pretrained()](/docs/diffusers/main/ja/api/pipelines/overview#diffusers.DiffusionPipeline.from_pretrained).
```py
pipeline = DiffusionPipeline.from_pretrained("your-namespace/my-qwen-image")
```
## プライバシー
`private=True` を [push_to_hub()](/docs/diffusers/main/ja/api/schedulers/overview#diffusers.utils.PushToHubMixin.push_to_hub) に設定すると、モデル、スケジューラー、またはパイプラインのファイルを非公開にできます。
```py
controlnet.push_to_hub("my-controlnet-model-private", private=True)
```
`create_pr=True` を渡すことで、デフォルトブランチに直接プッシュする代わりに、既存の Hub リポジトリに対してプルリクエストを開くことができます。
モデルとパイプラインは、`fp16` などの名前付き重みファイルを使用する場合、push 時に `variant=` を受け入れます。スケジューラーは `variant` を使用しません。
Private リポジトリは、あなた自身にのみ表示されます。他のユーザーはリポジトリをクローンできず、検索結果にも表示されません。ユーザーが Private リポジトリの URL を保有していても、`404 - Sorry, we can't find the page you are looking for` が返されます。Private リポジトリからモデルを読み込むには、[ログイン](https://huggingface.co/docs/huggingface_hub/quick-start#login)している必要があります。

Xet Storage Details

Size:
5.43 kB
·
Xet hash:
e98aee59e46a023fb77fb92c2f63485d8fb8d2e169c6fce483efa0e7473da4d4

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.