artifact をコレクションにリンクする
始める前に、次の点を確認してください。
- コレクションで許可されている artifact のタイプ。コレクションのタイプの詳細については、コレクションを作成する内の「コレクションのタイプ」を参照してください。
- コレクションが属するレジストリがすでに存在していること。レジストリが存在することを確認するには、Registry App にアクセスして検索し、そのレジストリの名を確認してください。
- Python SDK
- W&B Registry
- Artifact ブラウザ
wandb.Run.link_artifact() または
wandb.Artifact.link() を使用して、artifact version をコレクションにプログラムからリンクできます。次の表は、artifact version をコレクションにリンクするために使用できるメソッドと、各メソッドの使用時に W&B が記録する内容をまとめたものです。宛先コレクションのパスを
target_path パラメーターに渡します。パスは、wandb-registry- 接頭辞、Registry 名、コレクション名で構成されます。run からアーティファクトをリンクする
アクティブな run 中にアーティファクト バージョンを作成してリンクするには、wandb.Run.link_artifact() を使用します。W&B は、リンクする前にドラフト アーティファクトを run の出力としてログします。アーティファクト バージョンを作成してリンクするには、次の手順に従います。wandb.init()で run を初期化します。Artifactオブジェクトを作成し、1 つ以上のファイルを追加します。wandb.Run.link_artifact()を呼び出して、リンク先のコレクションを指定します。
<>) で囲まれた値は、ご自身の値に置き換えてください。アーティファクトを作成してリンクする
wandb.Artifact.link() を使用すると、run を明示的に初期化しなくても、ドラフト アーティファクトを作成してリンクできます。リンク前にアーティファクトを保存する必要がある場合は、W&B が必要に応じて自動的に run を作成します。アーティファクト バージョンを作成してリンクするには、次の手順に従います。Artifactオブジェクトを作成し、1 つ以上のファイルを追加します。wandb.Artifact.link()を呼び出し、リンク先のコレクションを指定します。
<>) 内の値を実際の値に置き換えてください。既存のアーティファクトをリンクする
wandb.Api().artifact() で取得したアーティファクトに対して wandb.Artifact.link() を使用すると、新しい run を作成せずに、既存のコミット済みアーティファクトバージョンをリンクできます。wandb.Api()で Public API クライアントを作成します。wandb.Api.artifact()でアーティファクトバージョンを取得します。wandb.Artifact.link()を呼び出し、リンク先のコレクションを指定します。
Registry 内のリンクされた artifact を表示する
- W&B Registry にアクセスします。
- artifact をリンクした registry の名を選択します。
- collection の名を選択します。
- collection の artifact がメトリクスをログしている場合は、Show metrics をクリックして、バージョン間でメトリクスを比較します。
- artifact バージョンの一覧から、アクセスしたいバージョンを選択します。バージョン番号は
v0から始まり、リンクされた各 artifact バージョンに段階的に割り当てられます。 - artifact バージョンの詳細を表示するには、そのバージョンをクリックします。このページのタブから、そのバージョンのメタデータ (ログされたメトリクスを含む) 、リネージ、利用状況情報を表示できます。
Full name of a linked artifact
トラブルシューティング
個人アカウントから Artifacts をログする
artifact をレジストリにリンクする場合は、チーム entity でその artifact をログしてください。
チーム entity を確認する
team-awesome です。
次の手順でチーム名を確認できます。
- チームの W&B プロフィールページにアクセスします。
- サイトの URL をコピーします。形式は
https://wandb.ai/<team>です。ここで<team>はチーム名であり、同時にチームの entity でもあります。
チーム entity でログする
-
wandb.init()で run を初期化するときに、entity としてチームを指定します。run の初期化時にentityを指定しない場合、run にはデフォルトの entity が使用されます。これはチーム entity の場合もあれば、そうでない場合もあります。 -
wandb.Run.log_artifact()を使用するか、Artifact object を作成してから次のようにファイルを追加して、アーティファクト を run にログします。アーティファクト をログする方法については、アーティファクト を構築するを参照してください。 - アーティファクト が個人の entity にログされている場合は、組織内の entity に再度ログする必要があります。
W&B App UI で Registry のパスを確認する
- https://wandb.ai/registry/ の W&B Registry にアクセスします。
- アーティファクト をリンクする対象のレジストリをクリックします。
- 空のコレクションをクリックします。空のコレクションが存在しない場合は、新しいコレクションを作成します。
- 表示されたコードスニペット内で、
.link_artifact()にあるtarget_pathフィールドを特定します。 - (任意) コレクションを削除します。

target_path パラメーターを含むコードブロックが表示されます。
一時コレクションの名を、アーティファクト をリンクする先のコレクションの名に置き換えてください。
