メインコンテンツへスキップ

オブジェクトの公開 (Publishing)

Weave のシリアライズレイヤーは、オブジェクトを保存し、バージョンを管理します。
import weave
# 'intro-example' プロジェクトへのトラッキングを初期化します
weave.init('intro-example')
# リストを保存し、'cat-names' という名前を付けます
weave.publish(['felix', 'jimbo', 'billie'], 'cat-names')
名前を指定してオブジェクトを保存すると、そのオブジェクトが存在しない場合は最初のバージョンが作成されます。

オブジェクトの取得

weave.publish は Ref を返します。任意の Ref に対して .get() を呼び出すことで、オブジェクトを取得できます。Ref を構築してから、オブジェクトを取得することも可能です。
weave.init('intro-example')
cat_names = weave.ref('cat-names').get()

オブジェクトの削除

オブジェクトのバージョンを削除するには、オブジェクトの Ref に対して .delete() を呼び出します。
weave.init('intro-example')
cat_names_ref = weave.ref('cat-names:v1')
cat_names_ref.delete()
削除されたオブジェクトにアクセスしようとすると、エラーが発生します。削除されたオブジェクトへの参照を含むオブジェクトを解決すると、削除されたオブジェクトの代わりに DeletedRef オブジェクトが返されます。

Ref スタイル

Weave オブジェクト Ref の完全修飾 URI は以下のようになります。
weave://<entity>/<project>/object/<object_name>:<object_version>
  • entity: wandb の Entities (ユーザー名または Teams)
  • project: wandb の Projects
  • object_name: オブジェクト名
  • object_version: バージョンハッシュ、v0, v1… のような文字列、または “:latest” のような エイリアス。すべてのオブジェクトは “:latest” エイリアス を持ちます。
Ref はいくつかの異なるスタイルで構築できます。
  • weave.ref(<name>): weave.init(<project>) が呼び出されている必要があります。“:latest” バージョンを参照します。
  • weave.ref(<name>:<version>): weave.init(<project>) が呼び出されている必要があります。
  • weave.ref(<fully_qualified_ref_uri>): weave.init を呼び出さずに構築できます。