Hub documentation
Hugging Faceでの🧨 diffusersの使用方法
Hugging Faceでの🧨 diffusersの使用方法
Diffusersは、画像、音声、さらには分子の3D構造を生成するための最先端の事前学習済み拡散モデル向けの定番ライブラリです。シンプルな推論ソリューションを探している場合でも、独自の拡散モデルをトレーニングしたい場合でも、Diffusersは両方をサポートするモジュール化されたツールボックスです。このライブラリは、パフォーマンスよりも使いやすさ、簡単さよりもシンプルさ、抽象化よりもカスタマイズ性を重視して設計されています。
HubでのDiffusersの探索
Hubには10,000を超えるdiffusers互換のパイプラインがあり、モデルページの左側でフィルタリングすることで検索できます。拡散モデルシステムは、テキストエンコーダー、UNet、VAE、スケジューラーなどの複数のコンポーネントで構成されることが一般的です。これらは単独のモデルではありませんが、パイプラインの抽象化により、推論や学習に簡単に使用できます。
さまざまなタスク向けの拡散パイプラインを見つけることができます:
- 自然言語のプロンプトから画像を生成します(テキストから画像へ)。
- 自然言語のプロンプトを使用して画像を変換する(image-to-image)。
- 自然言語の説明から動画を生成します(テキストから動画へ)。
ブラウザ内ウィジェットのおかげで、モデルをダウンロードせずにブラウザ上で直接試すことができます。

Diffusersリポジトリのファイル
Diffusersのモデルリポジトリには、画像のエンコードと潜在変数のデコードを行う変分オートエンコーダ、テキストエンコーダ、transformerモデルなど、必要なモデルのサブコンポーネントがすべて含まれています。これらのサブコンポーネントは、複数のフォルダからなるレイアウトに整理されています。

各サブフォルダーには、Transformersモデルと同様に、各コンポーネントの重みと設定(該当する場合)が含まれています。
重みは通常、safetensorsファイルとして保存され、設定は通常、モデルアーキテクチャに関する情報が含まれたjsonファイルです。
既存のパイプラインの使用
すべてのdiffusersのパイプラインは、1行のコードで利用できます!生成を実行するには、DiffusionPipelineから始めることをお勧めします:
from diffusers import DiffusionPipeline
pipeline = DiffusionPipeline.from_pretrained("stabilityai/stable-diffusion-xl-base-1.0")UNetなどの特定のpipelineコンポーネントを読み込みたい場合は、次のように行います。
from diffusers import UNet2DConditionModel
unet = UNet2DConditionModel.from_pretrained("stabilityai/stable-diffusion-xl-base-1.0", subfolder="unet")パイプラインとモデルの共有
すべてのpipeline クラス、model クラス、scheduler クラスは、Hub と完全に互換性があります。具体的には、from_pretrained()メソッドを使用して Hub から簡単に読み込むことができ、push_to_hub()メソッドを使用して他の人と共有できます。
詳細については、ドキュメントをご参照ください。