メインコンテンツへスキップ
W&B Model 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()

# アーティファクトコレクションを取得する
collection = api.artifact_collection(
  type_name = collection_type, 
  name = registry_path
  )

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

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

新しいレジストリを作成

"""
W&B に新しいレジストリを作成します。レジストリが存在しない場合、W&B が作成します。
"""
import wandb

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

# 新しいレジストリを作成する
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 のアーティファクトを作成し、レジストリ内のコレクションにリンクします。
コレクションが存在しない場合、W&B が自動的に作成します。
"""
import wandb

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

# レジストリ名とコレクション名を定義する
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:
  # アーティファクトをコレクションにリンクする。コレクションが存在しない場合、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 レジストリコレクションを作成し、アーティファクトをリンクします。
"""
import wandb

# アーティファクトオブジェクトを作成する
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:

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

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

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

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

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

# アーティファクトコレクションを取得する
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}"

# アーティファクトコレクションを取得する
collection = wandb.Api().artifact_collection(
  type_name = collection_type, 
  name = registry_path
  )

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