Nous vous recommandons de créer un artefact incrémentiel lorsque vous devez appliquer des modifications à un sous-ensemble de fichiers d’un artefact, en particulier si l’artefact d’origine est nettement plus volumineux.
Créer de nouvelles versions d’artefact à partir de zéro
- Run unique : un seul run fournit toutes les données d’une nouvelle version. C’est le cas le plus courant, et il convient le mieux lorsque le run recrée entièrement les données nécessaires. Par exemple : générer des modèles enregistrés ou des prédictions de modèle dans un tableau pour analyse.
- Runs distribués : un ensemble de runs fournit collectivement toutes les données d’une nouvelle version. Ce mode convient le mieux aux jobs distribués comportant plusieurs runs qui génèrent des données, souvent en parallèle. Par exemple : évaluer un modèle de manière distribuée et produire les prédictions.
v0 si vous transmettez à l’API wandb.Artifact un nom qui n’existe pas dans votre projet. W&B calcule une somme de contrôle du contenu lorsque vous journalisez de nouveau dans le même artefact. Si l’artefact a été modifié, W&B enregistre une nouvelle version v1.
W&B récupérera un artefact existant si vous transmettez à l’API wandb.Artifact un nom et un type d’artefact qui correspondent à un artefact existant dans votre projet. L’artefact récupéré aura une version supérieure à 1.

Run unique
- Dans un run
- En dehors d’un run
Créez une version d’artefact dans un run W&B :
- Créez un run avec
wandb.init(). - Créez un nouvel artefact ou récupérez-en un existant avec
wandb.Artifact. - Ajoutez des fichiers à l’artefact avec
.add_file. - Enregistrez l’artefact dans le run avec
.log_artifact.
Runs distribués
- Chaque run de la collection doit connaître le même ID unique (appelé
distributed_id) afin de collaborer sur la même version. Par défaut, s’il est présent, W&B utilise legroupdu run, tel que défini parwandb.init(group=GROUP), commedistributed_id. - Un run final doit « valider » la version, ce qui verrouille définitivement son état.
- Utilisez
upsert_artifactpour ajouter du contenu à l’artefact collaboratif etfinish_artifactpour finaliser la validation.
upsert_artifact.
Run 1
Run 2
Run 3
wandb.Run.finish_artifact() peut inclure des fichiers dans l’artefact, mais ce n’est pas obligatoire.
Créer une nouvelle version d’artefact à partir d’une version existante

- ajout : vous ajoutez régulièrement un nouveau sous-ensemble de fichiers à un jeu de données après avoir collecté un nouveau lot.
- remove : vous avez repéré plusieurs fichiers en double et souhaitez les supprimer de votre artefact.
- mise à jour : vous avez corrigé les annotations de certains fichiers et souhaitez remplacer les anciens fichiers par les fichiers corrects.
Vous pouvez créer un artefact incrémentiel au sein d’une seule exécution ou à partir d’un ensemble d’exécutions (mode distribué).
- Obtenez la version de l’artifact à laquelle vous souhaitez apporter une modification incrémentielle :
- Dans un run
- En dehors d’un run
- Créez un brouillon avec :
- Apportez les modifications incrémentielles que vous souhaitez voir apparaître dans la version suivante. Vous pouvez ajouter, supprimer ou modifier une entrée existante.
- Ajouter
- Supprimer
- Modifier
Ajoutez un fichier à une version d’artefact existante avec la méthode
add_file :Vous pouvez également ajouter plusieurs fichiers en ajoutant un répertoire avec la méthode
add_dir.- Enfin, consignez ou enregistrez vos modifications. Les onglets suivants expliquent comment enregistrer vos modifications dans le cadre d’un run W&B ou en dehors. Sélectionnez l’onglet correspondant à votre cas d’usage :
- À l’intérieur d’un run
- En dehors d’un run
- Dans un run
- En dehors d'un run