クラス wandb.Artifact
データセットとモデルのバージョン管理のための柔軟で軽量な構成要素。 空の W&B アーティファクトを作成します。add で始まるメソッドでアーティファクトの内容を追加します。アーティファクトに必要なファイルがすべて揃ったら、run.log_artifact() を呼び出してログします。
引数
str
アーティファクトの人間が読みやすい名前。W&B アプリ UI またはプログラムで特定のアーティファクトを識別するために名前を使用します。
use_artifact Public API でアーティファクトをインタラクティブに参照できます。名前には文字、数字、アンダースコア、ハイフン、ドットを含めることができます。名前は project 全体で一意である必要があります。str
アーティファクトのタイプ。アーティファクトのタイプを使用して、アーティファクトを整理および区別します。文字、数字、アンダースコア、ハイフン、ドットを含む任意の string を使用できます。一般的なタイプには
dataset または model が含まれます。アーティファクトを W&B Model Registry にリンクする場合は、タイプ string に model を含めます。一部のタイプは内部使用のために予約されており、ユーザーが設定できないことに注意してください。そのようなタイプには job および wandb- で始まるタイプが含まれます。str | None
アーティファクトの説明。モデルまたはデータセットのアーティファクトの場合、標準化されたチームモデルまたはデータセットカードのドキュメントを追加します。アーティファクトの説明を
Artifact.description 属性でプログラム的に、または W&B アプリ UI でプログラム的に表示します。W&B は W&B アプリ で説明を Markdown としてレンダリングします。dict[str, Any] | None
アーティファクトに関する追加情報。メタデータを key-value ペアの辞書として指定します。合計 100 個を超えるキーを指定することはできません。
bool
既存のアーティファクトを変更するには、代わりに
Artifact.new_draft() メソッドを使用します。str | None
非推奨。
str | None
説明は提供されていません。
Literal['MD5', 'XXH128']
アーティファクトに使用するダイジェストアルゴリズム。デフォルトは MD5 です。XXH128 に設定した場合、アーティファクトはすでに MD5 を使用しているコレクションの一部でない限り、XXH128 アルゴリズムを使用してハッシュされます。0.29.0 より前の SDK バージョンでの
artifact.verify() の呼び出しは、常に XXH128 アーティファクトで失敗します。プロパティ
list[str]
アーティファクトのバージョンに割り当てられた、意味的にわかりやすい 1 つ以上の参照名、または識別用の「ニックネーム」のリストです。エイリアスは変更可能な参照で、プログラムから参照できます。
アーティファクトのエイリアスは、W&B アプリ UI またはプログラムから変更できます。
詳細については、新しいアーティファクトのバージョンを作成する
を参照してください。
ArtifactCollection
このアーティファクトの取得元のコレクションです。コレクションは、アーティファクトのバージョンを順序付けたグループです。
このアーティファクトがリンク先のコレクションから取得された場合は、
そのコレクションを返します。それ以外の場合は、アーティファクトのバージョンの
作成元のコレクションを返します。アーティファクトの作成元のコレクションは、
ソースシーケンスと呼ばれます。
str
このアーティファクトのコミット時に返されたハッシュです。
str
アーティファクトの作成日時を示すタイムスタンプです。
str | None
アーティファクトの説明です。
str
アーティファクトの論理ダイジェストです。ダイジェストは、アーティファクトの内容のチェックサムです。アーティファクトのダイジェストが
現在の
latest バージョンと同じ場合、log_artifact は no-op になります。ArtifactDigestAlgorithm
アーティファクトのダイジェストの計算に使用されるダイジェストアルゴリズムです。
str
アーティファクト コレクションが属する entity の名前です。アーティファクトがリンクの場合、リンクされたアーティファクトの entity になります。
int
ファイル数 (参照を含む) です。
int | None
このアーティファクトのソース run で履歴メトリクスがログされた、最も近いステップです。
str | None
アーティファクトの ID です。
bool
アーティファクトがリンクアーティファクトかどうかを示すブール値のフラグです。True: アーティファクトは、ソースアーティファクトへのリンクアーティファクトです。
False: アーティファクトはソースアーティファクトです。
list[Artifact]
ソースアーティファクトにリンクされているすべてのアーティファクトのリストを返します。このアーティファクトがリンクアーティファクト (
artifact.is_link == True) の場合は、
空のリストを返します。結果は最大 500 件です。str | None
このアーティファクトが現在のコレクションにリンクされた時刻です。リンクされたアーティファクトでのみ有効で、それ以外の場合は
None を返します。ArtifactManifest
アーティファクトのマニフェストです。マニフェストにはアーティファクトのすべての内容が記載されており、アーティファクトがログされた後は
変更できません。
dict
ユーザー定義のアーティファクトのメタデータです。アーティファクトに関連付けられた構造化データです。
str
アーティファクトの名前とバージョンです。
{collection}:{alias} 形式の string です。アーティファクトがログまたは保存される前に
取得した場合、名前にはエイリアスが含まれません。
アーティファクトがリンクの場合は、リンクされたアーティファクトの名前になります。str
アーティファクト コレクションが属する project の名前です。アーティファクトがリンクの場合、リンクされたアーティファクトの project になります。
str
アーティファクトの entity/project/name です。アーティファクトがリンクの場合、修飾名はリンクされたアーティファクト パスの
修飾名になります。
int
アーティファクトの合計サイズ (バイト単位) です。このアーティファクトで追跡されるすべての参照を含みます。
Artifact
ソースアーティファクト (最初にログされた元のアーティファクト) を返します。このアーティファクトがソースアーティファクト (
artifact.is_link == False) の場合は、
自身を返します。ArtifactCollection
アーティファクトのソースコレクションです。ソースコレクションとは、アーティファクトのログ元のコレクションです。
str
ソースアーティファクトの entity の名前です。
str
ソースアーティファクトの名前とバージョンです。
{source_collection}:{alias} 形式の string です。アーティファクトが
保存される前はバージョンが確定していないため、名前のみが含まれます。str
ソースアーティファクトの project の名。
str
ソースアーティファクトの source_entity/source_project/source_name。
str
ソースアーティファクトのバージョン。
v{number} 形式の string。str
アーティファクトの状態。“PENDING”、“COMMITTED”、“DELETED” のいずれか。
list[str]
このアーティファクトのバージョンに割り当てられた 1 つ以上のタグのリスト。
timedelta | None
アーティファクトの TTL ポリシー。TTL ポリシーの期間が経過すると、アーティファクトはまもなく削除されます。
None に設定すると、アーティファクトは TTL ポリシーを無効化し、チームのデフォルト TTL が存在する場合でも削除対象になりません。
チーム管理者がデフォルト TTL を定義し、アーティファクトに custom ポリシーが設定されていない場合、アーティファクトはチームのデフォルトから TTL ポリシーを継承します。str
アーティファクトのタイプ。一般的なタイプには
dataset や model があります。str
アーティファクトが最後に更新された時刻。
The URL of the artifact.
アーティファクトの URL を構築します。
str | None
非推奨。
str
アーティファクトのバージョン。
v{number} 形式の string。
リンクアーティファクトの場合、バージョンはリンクされたコレクションのものになります。メソッド
メソッド Artifact.add()
obj をアーティファクトに追加します。
WBValue
追加するオブジェクト。現在、Bokeh、JoinedTable、PartitionedTable、Table、Classes、ImageMask、BoundingBoxes2D、Audio、Image、Video、Html、Object3D のいずれかをサポートしています
StrPath
アーティファクト内にオブジェクトを追加するパス。
bool
True の場合、該当する場合は同じファイルパスを持つ既存のオブジェクトを上書きします。
ArtifactFinalizedError: 現在のアーティファクトのバージョンは確定済みのため、変更できません。代わりに、新しいアーティファクトのバージョンをログしてください。
メソッド Artifact.add_dir()
str
ローカルディレクトリのパス。
str | None
アーティファクト内のサブディレクトリ名。指定した名は、W&B アプリ UI でアーティファクトの
type によってネストされて表示されます。デフォルトはアーティファクトのルートです。bool | None
True に設定した場合、W&B はアップロード中にファイルをキャッシュにコピー/移動しませんLiteral['mutable', 'immutable'] | None
デフォルトは “mutable” です。
- mutable: アップロード中の破損を防ぐため、ファイルの一時コピーを作成します。
- immutable: 保護を無効にし、ユーザーがファイルを削除または変更しないことに依存します。
bool
False (デフォルト) の場合、以前の add_dir 呼び出しで既に追加されたファイルがあり、その内容が変更されていると ValueError をスローします。True の場合、変更された内容で既存のファイルを上書きします。常に新しいファイルを追加し、ファイルを削除することはありません。ディレクトリ全体を置き換えるには、add_dir(local_path, name=my_prefix) を使用してディレクトリを追加する際に名前を渡し、remove(my_prefix) を呼び出してディレクトリを削除してから、再度追加します。ArtifactFinalizedError: 現在のアーティファクトのバージョンは確定済みのため、変更できません。代わりに新しいアーティファクトのバージョンをログしてください。ValueError: ポリシーには “mutable” または “immutable” を指定する必要があります
メソッド アーティファクト.add_file()
str
追加するファイルへのパスです。
str | None
追加するファイルに使用するアーティファクト内のパスです。デフォルトはファイルの basename です。
bool | None
true の場合、衝突を避けるためにファイルは決定論的にリネームされます。
bool | None
True の場合、アップロード後にファイルをキャッシュにコピーしません。Literal['mutable', 'immutable'] | None
デフォルトは “mutable” に設定されます。“mutable” に設定すると、アップロード中の破損を防ぐためにファイルの一時コピーを作成します。“immutable” に設定すると、保護を無効にし、ユーザーがファイルを削除または変更しないことに依存します。
bool
True の場合、ファイルがすでに存在していれば上書きします。ArtifactFinalizedError: 現在のアーティファクトのバージョンは確定済みのため、変更できません。代わりに新しいアーティファクトのバージョンをログしてください。ValueError: ポリシーには “mutable” または “immutable” を指定する必要があります
メソッド Artifact.add_reference()
- http(s): ファイルのサイズとダイジェストは、サーバーから返される
Content-LengthおよびETag応答ヘッダーから推測されます。 - s3: チェックサムとサイズはオブジェクトのメタデータからプルされます。バケットのバージョン管理が有効になっている場合、バージョン ID も追跡されます。
- gs: チェックサムとサイズはオブジェクトのメタデータからプルされます。バケットのバージョン管理が有効になっている場合、バージョン ID も追跡されます。
- https、ドメインが
*.blob.core.windows.netに一致する場合 - Azure: チェックサムとサイズはブロブのメタデータからプルされます。ストレージ アカウントのバージョン管理が有効になっている場合、バージョン ID も追跡されます。
- file: チェックサムとサイズはファイル システムからプルされます。このスキームは、トラッキングしたいが必ずしもアップロードする必要のないファイルを含む NFS 共有やその他の外部マウント ボリュームがある場合に便利です。
ArtifactManifestEntry | str
追加する参照の URI パスです。URI パスは、別のアーティファクトのエントリへの参照を保存するために
Artifact.get_entry から返されるオブジェクトにすることができます。StrPath | None
この参照の内容を配置するアーティファクト内のパスです。
bool
参照 URI にあるリソースのチェックサムを計算するかどうかを指定します。チェックサム計算は、自動的な整合性検証を可能にするため、強く推奨されます。チェックサム計算を無効にするとアーティファクトの作成が高速化されますが、参照ディレクトリは反復処理されないため、ディレクトリ内のオブジェクトはアーティファクトに保存されません。参照オブジェクトを追加する場合は
checksum=False を設定することを推奨します。この場合、参照 URI が変更された場合にのみ新しいバージョンが作成されます。int | None
ディレクトリまたはバケットストアの接頭辞を指す参照を追加する際に考慮するオブジェクトの最大数です。デフォルトでは、Amazon S3、GCS、Azure、およびローカルファイルで許可されるオブジェクトの最大数は 10,000,000 です。その他の URI スキーマには最大値はありません。
ArtifactFinalizedError: 現在のアーティファクトのバージョンは確定済みのため、変更できません。代わりに、新しいアーティファクトのバージョンをログしてください。
メソッド Artifact.checkout()
root 内のすべてのファイルが削除されます。
str | None
このアーティファクトの file で置き換えるディレクトリ。
ArtifactNotLoggedError: アーティファクトがログされていない場合。
メソッド Artifact.delete()
Artifact.delete() の代わりに Artifact.unlink() を使用してください。
bool
True に設定した場合、アーティファクトに関連付けられたすべてのエイリアスを削除します。False の場合、アーティファクトに既存のエイリアスがあると例外を発生させます。このパラメーターは、アーティファクトがリンクされているコレクションから取得された場合、無視されます。ArtifactNotLoggedError: アーティファクトがログされていない場合。
メソッド Artifact.download()
root 内に存在するファイルは変更されません。root の内容をアーティファクトと完全に一致させたい場合は、download を呼び出す前に root を明示的に削除してください。
StrPath | None
W&B がアーティファクトのファイルを保存するディレクトリ。
bool
True に設定すると、参照先のファイルをダウンロードする際に、無効な参照パスは無視されます。bool | None
True に設定すると、ダウンロード時にアーティファクトのキャッシュを使用せず、W&B は各ファイルをデフォルトのルートディレクトリまたは指定されたダウンロード先ディレクトリにダウンロードします。StrPath | None
指定すると、パスが指定された接頭辞で始まるファイルのみをダウンロードします。Unix 形式 (スラッシュ区切り) を使用します。
bool | None
None (デフォルト) に設定すると、個々のファイルサイズが 2 GB を超える場合はマルチパートダウンロードを使用して、アーティファクトを並列にダウンロードします。True または False に設定すると、ファイルサイズに関係なく、アーティファクトをそれぞれ並列または逐次ダウンロードします。ArtifactNotLoggedError: アーティファクトがログされていない場合。
メソッド Artifact.file()
root で指定したディレクトリにダウンロードします。
str | None
ファイルを保存するルートディレクトリです。デフォルトは
./artifacts/self.name/ です。ArtifactNotLoggedError: アーティファクトがログされていない場合。ValueError: アーティファクトに複数のファイルが含まれている場合。
メソッド Artifact.files()
list[str] | None
一覧表示するファイルの、アーティファクトのルートからの相対パス。
int
リクエストごとに返すファイル数。
str | None
過去のクエリを再開するためのページネーションカーソル。以前のページネーターの
.cursor 属性から取得します。ArtifactNotLoggedError: アーティファクトがログされていない場合。
メソッド Artifact.finalize()
log_artifact でアーティファクトをログすると、そのアーティファクトは自動的に確定されます。
メソッド Artifact.get()
name にある WBValue オブジェクトを取得します。
str
取得するアーティファクトの相対名。
ArtifactNotLoggedError: アーティファクトがログされていない場合、または run がオフラインの場合。
メソッド Artifact.get_added_local_path_name()
str
アーティファクト内の相対名に解決するローカルパス。
メソッド Artifact.get_entry()
StrPath
取得するアーティファクトの相対名
ArtifactNotLoggedError: アーティファクトがログされていない場合、または run がオフラインの場合。KeyError: アーティファクトに指定された名のエントリが含まれていない場合。
メソッド Artifact.get_path()
get_entry(name) を使用してください。
StrPath
説明はありません。
メソッド Artifact.is_draft()
メソッド Artifact.json_encode()
メソッド Artifact.link()
str
コレクションのパスです。パスは、接頭辞 “wandb-registry-”、registry 名、コレクション名で構成されます (
wandb-registry-{REGISTRY_NAME}/{COLLECTION_NAME})。Iterable[str] | None
リンクされたアーティファクトに 1 つ以上のエイリアスを追加します。“latest” エイリアスは、最後にリンクしたアーティファクトに自動的に適用されます。
ArtifactNotLoggedError: アーティファクトがログされていない場合。
メソッド Artifact.logged_by()
ArtifactNotLoggedError: アーティファクトがログされていない場合。
メソッド Artifact.new_draft()
ArtifactNotLoggedError: アーティファクトがログされていない場合。
メソッド Artifact.new_file()
str
アーティファクトに追加する新しいファイルの名。
str
新しいファイルを開く際に使用するファイルアクセスモード。
str | None
新しいファイルを開く際に使用するエンコーディング。
Literal['mutable', 'immutable']
デフォルトは “mutable” です。“mutable” に設定すると、アップロード中の破損を防ぐためにファイルの一時コピーを作成します。“immutable” に設定すると、保護を無効にし、ユーザーがファイルを削除または変更しないことを前提とします。
ArtifactFinalizedError: 現在のアーティファクトのバージョンは確定済みのため、変更できません。代わりに、新しいアーティファクトのバージョンをログしてください。
メソッド Artifact.remove()
StrPath | ArtifactManifestEntry
削除する項目です。特定のマニフェストエントリ、またはアーティファクトからの相対パス名を指定できます。項目がディレクトリに一致する場合、そのディレクトリ内のすべての項目が削除されます。
ArtifactFinalizedError: 現在のアーティファクトのバージョンは確定済みのため、変更できません。代わりに新しいアーティファクトのバージョンをログしてください。FileNotFoundError: アーティファクト内にアイテムが見つからない場合に送出されます。
メソッド Artifact.save()
str | None
コンテキストに run がまだない場合に、アーティファクトに使用する project です。
wandb.Settings | None
自動 run の初期化時に使用する設定オブジェクトです。主にテストハーネスで使用します。
メソッド Artifact.unlink()
ArtifactNotLoggedError: アーティファクトがログされていない場合。ValueError: アーティファクトがどのコレクションにもリンクされていない場合。
メソッド Artifact.used_by()
ArtifactNotLoggedError: アーティファクトがログされていない場合。
メソッド Artifact.verify()
str | None
検証するディレクトリ。None の場合、アーティファクトは ’./artifacts/self.name/’ にダウンロードされます。
ArtifactNotLoggedError: アーティファクトがログされていない場合。ValueError: 検証に失敗した場合。
メソッド Artifact.wait()
int | None
待機時間 (秒) 。