Passer au contenu principal
Ce guide pas à pas explique comment créer, suivre et utiliser un artifact de jeu de données.

1. Connectez-vous à W&B

Importez la bibliothèque W&B, puis connectez-vous à W&B. Vous devrez créer un compte W&B gratuit si ce n’est pas déjà fait.
import wandb

wandb.login()

2. Initialiser un run

Utilisez wandb.init() pour initialiser un run. Cela lance un processus en arrière-plan pour synchroniser et journaliser les données. Indiquez un nom de projet et un type de job :
# Créer un run W&B. Ici, nous spécifions 'dataset' comme type de job car cet exemple
# montre comment créer un artifact de jeu de données.
with wandb.init(project="artifacts-example", job_type="upload-dataset") as run:
    # Votre code ici

3. Créer un objet artifact

Créez un objet artifact à l’aide de wandb.Artifact(). Indiquez un nom pour l’artifact et une description du type de fichier pour les paramètres name et type, respectivement. Par exemple, l’extrait de code suivant montre comment créer un artifact appelé ‘bicycle-dataset’ avec le libellé ‘dataset’ :
artifact = wandb.Artifact(name="bicycle-dataset", type="dataset")
Pour en savoir plus sur la création d’un artifact, voir Créer des artifacts.

4. Ajoutez le jeu de données à l’artifact

Ajoutez un fichier à l’artifact. Parmi les types de fichiers courants figurent les modèles et les jeux de données. L’exemple suivant ajoute à l’artifact un jeu de données nommé dataset.h5, enregistré localement sur votre machine :
# Ajouter un fichier au contenu de l'artifact
artifact.add_file(local_path="dataset.h5")
Remplacez le nom de fichier dataset.h5 dans l’extrait de code précédent par le chemin d’accès du fichier que vous souhaitez ajouter à l’artifact.

5. Consigner le jeu de données

Utilisez la méthode wandb.Run.log_artifact() des objets run de W&B pour enregistrer la version de votre artifact et déclarer cet artifact comme sortie du run.
# Enregistrer la version de l'artifact dans W&B et la marquer
# comme sortie de ce run
run.log_artifact(artifact)
Un alias 'latest' est créé par défaut lorsque vous journalisez un artifact. Pour en savoir plus sur les alias et les versions d’artifact, voir Créer un alias personnalisé et Créer de nouvelles versions d’artifact, respectivement. Au final, votre script devrait ressembler à ceci :
import wandb

wandb.login()

with wandb.init(project="artifacts-example", job_type="upload-dataset") as run:
    artifact = wandb.Artifact(name="bicycle-dataset", type="dataset")
    artifact.add_file(local_path="dataset.h5")
    run.log_artifact(artifact)

6. Télécharger et utiliser l’artifact

L’exemple de code suivant montre les étapes à suivre pour utiliser un artifact que vous avez enregistré et sauvegardé sur les serveurs W&B.
  1. Commencez par initialiser un nouvel objet run avec wandb.init().
  2. Ensuite, utilisez la méthode wandb.Run.use_artifact() de l’objet run pour indiquer à W&B quel artifact utiliser. Cette méthode renvoie un objet artifact.
  3. Enfin, utilisez la méthode wandb.Artifact.download() de l’artifact pour télécharger son contenu.
# Créer un run W&B. Ici, nous spécifions 'training' pour 'type'
# car nous utiliserons ce run pour suivre l'entraînement.
with wandb.init(project="artifacts-example", job_type="training") as run:

  # Envoyer une requête à W&B pour un artifact et le marquer comme entrée de ce run
  artifact = run.use_artifact("bicycle-dataset:latest")

  # Télécharger le contenu de l'artifact
  artifact_dir = artifact.download()
Vous pouvez aussi utiliser l’API publique (wandb.Api) pour exporter des données (ou les mettre à jour) déjà enregistrées dans W&B en dehors d’un Run. Voir Track external files pour plus d’informations.