メインコンテンツへスキップ
W&B Model Registry を使用して、モデルバージョンを整理・管理します。

Registry のコレクションに説明を追加する

"""
レジストリ内のコレクションに説明を追加する。
"""
import wandb

# レジストリとコレクションの詳細を定義する
collection_type = "<collection_type>"
registry_name = "<registry_name>"
collection_name = "<collection_name>"

# レジストリのフルパスを構築する
registry_path = f"wandb-registry-{registry_name}/{collection_name}"

# W&B APIを初期化する
api = wandb.Api()

# artifactコレクションを取得する
collection = api.artifact_collection(
  type_name = collection_type, 
  name = registry_path
  )

# コレクションオブジェクトに説明を追加する
collection.description = "<description>"

# 更新されたコレクションを保存する
collection.save()

新しいレジストリを作成する

"""
W&B に新しい Registry を作成します。Registry が存在しない場合、W&B が作成します。
"""
import wandb

# W&B API を初期化する
api = wandb.Api()

# 新しい Registry を作成する
registry = api.create_registry(
    name="<registry_name>",
    visibility="<visibility>",  # 例: "public" または "private"
)

レジストリを削除する

"""
W&B からレジストリを削除する。
"""
import wandb

# レジストリとコレクションの詳細を定義する
registry_name = "<registry_name>"
collection_name = "<collection_name>"

# レジストリのフルパスを構築する
registry_path = f"wandb-registry-{registry_name}/{collection_name}"

# W&B API を初期化する
api = wandb.Api()

# 削除するレジストリを取得する
fetched_registry = api.registry("<registry_name>")

# レジストリを削除する
fetched_registry.delete()
"""
W&B のartifactを作成し、registryのcollectionにリンクします。
collectionが存在しない場合、W&B が自動的に作成します。
"""
import wandb

# artifactオブジェクトを作成する
artifact = wandb.Artifact(name = "<artifact_name>", type = "<artifact_type>")

# registryとcollectionの名前を定義する
registry_name = "<registry_name>"
collection_name = "<collection_name>"
target_path = f"wandb-registry-{registry_name}/{collection_name}"

# runを初期化する
with wandb.init(entity = "<entity>", project = "<project>") as run:
  # artifactをcollectionにリンクする。collectionが存在しない場合、W&B が作成する。
  run.link_artifact(artifact = artifact, target_path = target_path)

レジストリコレクション内のアーティファクトの特定のバージョンを取得する

"""
レジストリコレクションからアーティファクトの特定バージョンを取得する。
"""

import wandb

# レジストリ、コレクション、アーティファクトのバージョン詳細を定義する
registry = "<registry_name>"
collection = "<collection_name>"
version = "<version>"

# バージョンを含む完全なアーティファクト名を構築する
artifact_name = f"wandb-registry-{registry}/{collection}:{version}"

# W&B APIを初期化する
api = wandb.Api()

# 指定したレジストリコレクションとバージョンからアーティファクトを取得する
artifact = api.artifact(name = artifact_name)
"""
W&B レジストリコレクションを作成し、artifact をリンクします。
"""
import wandb

# artifact オブジェクトを作成する
artifact = wandb.Artifact(name = "<artifact_name>", type = "<artifact_type>")

registry_name = "<registry_name>"
collection_name = "<collection_name>"
registry_path = f"wandb-registry-{registry_name}/{collection_name}"

# run を初期化する
with wandb.init(entity = "<entity>", project = "<project>") as run:

  # artifact をコレクションにリンクする。コレクションが存在しない場合、W&B が自動的に作成する。
  run.link_artifact(artifact = artifact, target_path = registry_path)

レジストリ 内のコレクションにタグを追加する

"""
Registry 内のコレクションにタグを追加する。
"""
import wandb

# Registry とコレクションの詳細を定義する
collection_name = "<collection_name>"
collection_type = "<collection_type>"
registry_name = "<registry_name>"

# Registry の完全なパスを構築する
registry_path = f"wandb-registry-{registry_name}/{collection_name}"

# artifact コレクションを取得する
collection = wandb.Api().artifact_collection(
  type_name = collection_type, 
  name = registry_path
  )

collection.tags = ["<tag>"]
collection.save()

レジストリ 内のコレクションからタグを削除する

"""
レジストリ内のコレクションからタグを削除する。
"""
import wandb

# レジストリとコレクションの詳細を定義する
collection_name = "<collection_name>"
collection_type = "<collection_type>"
registry_name = "<registry_name>"

# レジストリのフルパスを構築する
registry_path = f"wandb-registry-{registry_name}/{collection_name}"

# artifact コレクションを取得する
collection = wandb.Api().artifact_collection(
  type_name = collection_type, 
  name = registry_path
  )

collection.tags.remove("<tag>")
collection.save()