メインコンテンツへスキップ
Hugging Face Diffusers は、画像やオーディオ、さらには分子の3D構造まで生成できる、最先端の事前学習済み拡散モデル向けの定番ライブラリです。W&B インテグレーションを使うと、その使いやすさを損なうことなく、豊富で柔軟な実験管理、メディアの可視化、パイプラインアーキテクチャ、設定管理を、インタラクティブな一元管理ダッシュボードで利用できます。

たった2行で高度なロギング

たった2行のコードを追加するだけで、実験に関連するすべてのプロンプト、ネガティブプロンプト、生成されたメディア、設定をログできます。ロギングを開始するための2行のコードを以下に示します。
実験結果のログ記録

Get started

  1. diffuserstransformersacceleratewandb をインストールします。
    • コマンドライン:
    • ノートブック:
  2. autolog を使用して W&B Run を初期化し、サポートされているすべてのパイプライン呼び出しの入力と出力を自動的にトラッキングします。 autolog() 関数は init パラメーター付きで呼び出すことができ、このパラメーターには wandb.init() に必要なパラメーターを含む辞書を指定します。 autolog() を呼び出すと、W&B Run が初期化され、サポートされているすべてのパイプライン呼び出しの入力と出力が自動的にトラッキングされます。
    • 各パイプライン呼び出しは、Workspace 内のそれぞれ専用のにトラッキングされ、その呼び出しに関連付けられた設定は、その run の設定内にあるワークフローのリストに追加されます。
    • プロンプト、ネガティブプロンプト、生成されたメディアは wandb.Table にログされます。
    • seed やパイプラインアーキテクチャを含む、実験 に関連するその他すべての設定は、その run の config セクションに保存されます。
    • 各パイプライン呼び出しで生成されたメディアも、run 内のメディアパネルにログされます。
    サポートされているパイプライン呼び出しの一覧を確認できます。このインテグレーションの新機能をリクエストしたい場合や、関連する bug を報告したい場合は、W&B GitHub issues page で issue を作成してください。

オートロギング

以下は、autolog が実際にどのように動作するかを示す、簡単なエンドツーエンドの例です。
  • 1 回の実験の結果:
    実験結果のログ
  • 複数の実験の結果:
    実験結果のログ
  • 実験の設定:
    実験設定のログ
IPython Notebook 環境でパイプラインの呼び出し後にコードを実行する場合は、wandb.Run.finish() を明示的に呼び出す必要があります。Python スクリプトを実行する場合は不要です。

複数パイプラインのワークフローをトラッキングする

このセクションでは、典型的な Stable Diffusion XL + Refiner ワークフローを例に、autolog を示します。このワークフローでは、StableDiffusionXLPipeline によって生成された latent を、対応する Refiner でさらに精緻化します。
  • Stable Diffusion XL + Refiner の実験例:
    Stable Diffusion XL の実験管理

参考資料