Walkthrough
以下のウォークスルーでは、W&B Runs からデータセットアーティファクトを作成、追跡、および使用するための主要なW&B Python SDKコマンドを示します。
1. W&Bにログイン
W&Bライブラリをインポートし、W&Bにログインします。まだW&Bの無料アカウントにサインアップしていない場合は、サインアップが必要です。
import wandb
wandb.login()
2. Runを初期化
wandb.init() APIを使用してバックグラウンドプロセスを生成し、データを同期およびログとしてW&B Runに記録します。プロジェクト名とジョブタイプを指定します。
# W&B Runを作成します。この例ではデータセットアーティファクトの作成方法を示すため、
# ジョブタイプとして 'dataset' を指定しています。
run = wandb.init(project="artifacts-example", job_type="upload-dataset")
3. アーティファクトオブジェクトを作成
wandb.Artifact() APIを使用してアーティファクトオブジェクトを作成します。アーティファクトの名前とファイルタイプの説明をそれぞれ name と type パラメータに提供します。
例えば、以下のコードスニペットは ‘bicycle-dataset’ という名前のアーティファクトを ‘dataset’ ラベルで作成する方法を示しています。
artifact = wandb.Artifact(name="bicycle-dataset", type="dataset")
アーティファクトの構築方法について詳しくは、Construct artifacts を参照してください。
データセットをアーティファクトに追加
アーティファクトにファイルを追加します。一般的なファイルタイプにはModelsやDatasetsが含まれます。次の例では、ローカルマシンに保存されている dataset.h5 という名前のデータセットをアーティファクトに追加します。
# アーティファクトの内容にファイルを追加する
artifact.add_file(local_path="dataset.h5")
上記のコードスニペット内の dataset.h5 を追加したいファイルのパスに置き換えてください。
4. データセットをログ
W&B Runオブジェクトの log_artifact() メソッドを使用して、アーティファクトバージョンを保存し、Runの出力としてアーティファクトを宣言します。
# アーティファクトバージョンをW&Bに保存し、
# このRunの出力としてマークする
run.log_artifact(artifact)
アーティファクトをログに記録すると、デフォルトで 'latest' というエイリアスが作成されます。アーティファクトのエイリアスとバージョンについて詳しくは、Create a custom alias および Create new artifact versions を参照してください。
5. アーティファクトをダウンロードして使用
次のコード例では、ログに記録し保存したアーティファクトを使用する手順を示します。
- まず、
wandb.init()で新しいRunオブジェクトを初期化します。 - 次に、Runオブジェクトの
use_artifact()メソッドを使用して、W&Bにどのアーティファクトを使用するかを指示します。これにより、アーティファクトオブジェクトが返されます。 - 最後に、アーティファクトの
download()メソッドを使用して、アーティファクトの内容をダウンロードします。
# W&B Runを作成します。ここでは 'type' として 'training' を指定しています。
# このRunはトレーニングの追跡に使用します。
run = wandb.init(project="artifacts-example", job_type="training")
# W&Bにアーティファクトを問い合わせ、このRunの入力としてマークする
artifact = run.use_artifact("bicycle-dataset:latest")
# アーティファクトの内容をダウンロードする
artifact_dir = artifact.download()
また、Public API (wandb.Api) を使用してRunの外部でW&Bに既に保存されているデータをエクスポート(または更新)することもできます。詳しくは、Track external files を参照してください。