Passer au contenu principal
Référencez une version d’artifact spécifique avec un ou plusieurs alias. W&B attribue automatiquement des alias à chaque artifact que vous liez sous le même nom. Vous pouvez également créer un ou plusieurs alias personnalisés pour référencer une version d’artifact spécifique. Les alias apparaissent sous forme de rectangles portant leur nom dans l’interface du registre. Si un alias est protégé, il apparaît sous la forme d’un rectangle gris avec une icône de cadenas. Sinon, l’alias apparaît sous la forme d’un rectangle orange. Les alias ne sont pas partagés entre les registres.
Quand utiliser un alias plutôt qu’un tagUtilisez un alias pour référencer une version d’artifact spécifique. Chaque alias au sein d’une collection est unique. Une seule version d’artifact peut avoir un alias donné à la fois.Utilisez des tags pour organiser et regrouper des versions d’artifact ou des collections autour d’un thème commun. Plusieurs versions d’artifact et collections peuvent partager le même tag.
Lorsque vous ajoutez un alias à une version d’artifact, vous pouvez, si vous le souhaitez, démarrer une automation du registre pour notifier un canal Slack ou déclencher un webhook.

Alias par défaut

W&B attribue automatiquement les alias suivants à chaque version d’artifact que vous liez sous le même nom :
  • L’alias latest à la version d’artifact la plus récente que vous liez à une collection.
  • Un numéro de version unique. W&B compte chaque version d’artifact que vous liez (à partir de l’index zéro). W&B utilise ce nombre pour attribuer un numéro de version unique à cet artifact.
Par exemple, si vous liez trois fois un artifact nommé zoo_model, W&B crée respectivement trois alias : v0, v1 et v2. v2 a également l’alias latest.

Alias personnalisés

Créez un ou plusieurs alias personnalisés pour des versions spécifiques d’artifact, selon votre cas d’utilisation. Par exemple :
  • Vous pouvez utiliser des alias comme dataset_version_v0, dataset_version_v1 et dataset_version_v2 pour identifier le jeu de données sur lequel un modèle a été entraîné.
  • Vous pouvez utiliser l’alias best_model pour suivre la version de modèle artifact la plus performante.
Tout utilisateur ayant le rôle de registre Member ou Admin sur un registre peut ajouter ou supprimer un alias personnalisé d’un artifact lié dans ce registre. Les Users ayant les rôles Restricted Viewer ou Viewer ne peuvent pas ajouter ni supprimer d’alias.
Les alias protégés permettent d’étiqueter et d’identifier les versions d’artifact à protéger contre toute modification ou suppression.
Vous pouvez créer un alias personnalisé dans le W&B Registry ou avec le SDK Python. Selon votre cas d’utilisation, cliquez sur l’onglet ci-dessous qui correspond le mieux à vos besoins.
  1. Accédez au W&B Registry.
  2. Cliquez sur le bouton View details dans une collection.
  3. Dans la section Versions, cliquez sur le bouton View pour une version d’artifact spécifique.
  4. Cliquez sur le bouton + pour ajouter un ou plusieurs alias à côté du champ Aliases.

Alias protégés

Utilisez un alias protégé pour étiqueter et identifier des versions d’artifact qui ne doivent pas être modifiées ou supprimées. Par exemple, vous pouvez utiliser un alias protégé production pour étiqueter et identifier des versions d’artifact utilisées dans le pipeline de production de machine learning de votre organisation. Les administrateurs du registre et les comptes de service disposant du rôle Admin peuvent créer des alias protégés et ajouter ou supprimer des alias protégés sur une version d’artifact. Les Users et les comptes de service disposant des rôles Member, Viewer et Restricted Viewer ne peuvent pas dissocier une version protégée ni supprimer une collection contenant un alias protégé. Voir Configurer l’accès au registre pour plus de détails. Les alias protégés courants incluent :
  • Production : La version d’artifact est prête à être utilisée en production.
  • Staging : La version d’artifact est prête pour les tests.

Créer un alias protégé

Les étapes suivantes expliquent comment créer un alias protégé dans l’UI de W&B Registry :
  1. Accédez à W&B Registry.
  2. Sélectionnez un registre.
  3. Cliquez sur le bouton en forme d’engrenage en haut à droite de la page pour afficher les paramètres du registre.
  4. Dans la section Protected Aliases, cliquez sur le bouton + pour ajouter un ou plusieurs alias protégés.
Après sa création, chaque alias protégé apparaît sous la forme d’un rectangle gris avec une icône de cadenas dans la section Protected Aliases.
Contrairement aux alias personnalisés non protégés, la création d’alias protégés est disponible exclusivement dans l’UI de W&B Registry, et non par programmation avec le SDK Python. Pour ajouter un alias protégé à une version d’artifact, vous pouvez utiliser l’UI de W&B Registry ou le SDK Python.
Les étapes suivantes expliquent comment ajouter un alias protégé à une version d’artifact dans l’UI de W&B Registry :
  1. Accédez à W&B Registry.
  2. Cliquez sur le bouton View details dans une collection.
  3. Dans la section Versions, sélectionnez le bouton View pour une version d’artifact spécifique.
  4. Cliquez sur le bouton + pour ajouter un ou plusieurs alias protégés à côté du champ Aliases.
Une fois un alias protégé créé, un administrateur peut l’ajouter par programmation à une version d’artifact avec le SDK Python. Voir les onglets W&B Registry et SDK Python dans la section Create a custom alias ci-dessus pour un exemple montrant comment ajouter un alias protégé à une version d’artifact.

Trouver des alias existants

Vous pouvez trouver des alias existants à l’aide de la barre de recherche globale du W&B Registry. Pour trouver un alias protégé :
  1. Accédez au W&B Registry.
  2. Saisissez le terme recherché dans la barre de recherche en haut de la page. Appuyez sur Entrée pour lancer la recherche.
Les résultats de recherche s’affichent sous la barre de recherche si le terme saisi correspond à un registre existant, à un nom de collection, à un tag de version d’artifact, à un tag de collection ou à un alias.

Exemple

L’exemple de code suivant s’inscrit dans la continuité de ce notebook du tutoriel sur le registre W&B. Pour utiliser le code ci-dessous, vous devez d’abord récupérer et traiter le jeu de données Zoo comme indiqué dans le notebook. Une fois le jeu de données Zoo en votre possession, vous pouvez créer une version d’un artifact et y ajouter des alias personnalisés.
L’extrait de code suivant montre comment créer une version d’un artifact et y ajouter des alias personnalisés. L’exemple utilise le jeu de données Zoo du UCI Machine Learning Repository et la collection Model dans le registre Zoo_Classifier_Models.
import wandb

# Initialiser un run
with wandb.init(entity = "smle-reg-team-2", project = "zoo_experiment") as run:

    # Créer un objet artifact
    # Le paramètre type spécifie à la fois le type de l'
    # objet artifact et le type de la collection
    artifact = wandb.Artifact(name = "zoo_dataset", type = "dataset")

    # Ajouter le fichier à l'objet artifact. 
    # Indiquer le chemin vers le fichier sur votre machine locale.
    artifact.add_file(local_path="zoo_dataset.pt", name="zoo_dataset")
    artifact.add_file(local_path="zoo_labels.pt", name="zoo_labels")

    # Indiquer la collection et le registre auxquels lier l'artifact
    REGISTRY_NAME = "Model"
    COLLECTION_NAME = "Zoo_Classifier_Models"
    target_path=f"wandb-registry-{REGISTRY_NAME}/{COLLECTION_NAME}"

    # Lier la version de l'artifact à la collection
    # Ajouter un ou plusieurs alias à cette version de l'artifact
    run.link_artifact(
        artifact = artifact,
        target_path = target_path,
        aliases = ["production-us", "production-eu"]
        )
  1. D’abord, vous créez un objet artifact (wandb.Artifact()).
  2. Ensuite, vous ajoutez à l’objet artifact deux tenseurs PyTorch d’un jeu de données avec wandb.Artifact.add_file().
  3. Enfin, vous liez la version de l’artifact à la collection Model dans le registre Zoo_Classifier_Models avec link_artifact(). Vous ajoutez également deux alias personnalisés à la version de l’artifact en passant production-us et production-eu comme arguments du paramètre aliases.