> ## Documentation Index
> Fetch the complete documentation index at: https://docs.coreweave.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Référencer une version d'artifact à l'aide d'alias

> Utilisez des alias par défaut, personnalisés et protégés pour référencer des versions d'artifact spécifiques dans W&B Registry.

Référencez une [version d'artifact](/fr/products/wandb/artifacts/create-a-new-artifact-version) spécifique à l'aide d'un ou de plusieurs alias. [W\&B attribue automatiquement des alias](/fr/products/registry/aliases#default-aliases) à chaque artifact que vous liez sous le même nom. Vous pouvez également [créer un ou plusieurs alias personnalisés](/fr/products/registry/aliases#custom-aliases) pour référencer une version d'artifact spécifique.

Dans l'interface de W\&B Registry, les alias apparaissent sous forme de rectangles contenant leur nom. Si un [alias est protégé](/fr/products/registry/aliases#protected-aliases), il apparaît sous la forme d'un rectangle gris accompagné d'une icône de cadenas. Dans le cas contraire, il apparaît sous la forme d'un rectangle orange. Les alias ne sont pas partagés entre les registres.

<Note>
  **Quand utiliser un alias plutôt qu'un tag**

  Utilisez un alias pour référencer une version d'artifact spécifique. Chaque alias est unique au sein d'une collection. Un alias donné ne peut être attribué qu'à une seule version d'artifact à la fois.

  Utilisez des tags pour organiser et regrouper des versions d'artifact ou des collections selon un thème commun. Plusieurs versions d'artifact et collections peuvent partager le même tag.
</Note>

Lorsque vous ajoutez un alias à une version d'artifact, vous pouvez, si vous le souhaitez, lancer une [automatisation de registre](/fr/products/wandb/automations/automation-events#registry) afin de notifier un canal Slack ou de déclencher un webhook. Si l'automatisation appelle un webhook qui nécessite un jeton d'accès ou une autre valeur sensible dans la requête, stockez ces chaînes en tant que [secrets d'équipe](/fr/products/wandb/platform/secrets) et sélectionnez-les lors de la configuration du webhook de l'automatisation.

<h2 id="default-aliases">
  Alias par défaut
</h2>

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 comptabilise chaque version d’artifact que vous liez (indexation à partir de zéro), puis utilise ce décompte 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 trois alias, respectivement `v0`, `v1` et `v2`. `v2` porte également l’alias `latest`.

<h2 id="custom-aliases">
  Alias personnalisés
</h2>

Créez un ou plusieurs alias personnalisés pour une version d'artifact spécifique, selon votre cas d'usage. Par exemple :

* Vous pouvez utiliser des alias tels que `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 un alias `best_model` pour suivre la version d'artifact de modèle la plus performante.

Tout utilisateur disposant d'un [rôle du registre **Member** ou **Admin**](/fr/products/registry/configure_registry#role-types) sur un registre peut ajouter ou supprimer un alias personnalisé d'un artifact lié dans ce registre. Les utilisateurs disposant des [rôles **Restricted Viewer** ou **Viewer**](/fr/products/registry/configure_registry#role-types) ne peuvent ni ajouter ni supprimer d'alias.

<Note>
  Les [alias protégés](/fr/products/registry/aliases#protected-aliases) permettent d'étiqueter et d'identifier les versions d'artifact à protéger contre toute modification ou suppression.
</Note>

Vous pouvez créer un alias personnalisé avec Registry ou le SDK Python W\&B. Cliquez ci-dessous sur l'onglet qui correspond le mieux à vos besoins.

<Tabs>
  <Tab title="Registry">
    1. Accédez à Registry.
    2. Cliquez sur le bouton **Voir les détails** d'une collection.
    3. Dans la section **Versions**, cliquez sur **View** à côté de la version d'artifact.
    4. Cliquez sur le bouton **+** à côté du champ **Aliases** pour ajouter un ou plusieurs alias.
  </Tab>

  <Tab title="SDK Python W&B">
    Lorsque vous liez une version d'artifact à une collection avec le SDK Python, vous pouvez, si vous le souhaitez, fournir une liste d'un ou plusieurs alias comme argument du paramètre `alias` de [`wandb.Run.link_artifact()`](/fr/products/wandb/ref/python/experiments/run#method-run-link_artifact). Si l'alias fourni n'existe pas encore, W\&B le crée pour vous (sous forme d'alias non protégé).

    L'extrait de code suivant montre comment lier une version d'artifact à une collection et lui ajouter des alias avec le SDK Python W\&B. Remplacez les valeurs entre `<>` par les vôtres :

    ```python theme={"system"}
    import wandb

    # Initialiser un run
    with wandb.init(entity = "<team_entity>", project = "<project_name>") 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 collection
        artifact = wandb.Artifact(name = "<name>", type = "<type>")

        # Ajouter le fichier à l'objet artifact.
        # Spécifier le chemin du fichier sur votre machine locale.
        artifact.add_file(local_path = "<local_path_to_artifact>")

        # Spécifier la collection et le registre auxquels lier l'artifact
        REGISTRY_NAME = "<registry_name>"
        COLLECTION_NAME = "<collection_name>"
        target_path=f"wandb-registry-{REGISTRY_NAME}/{COLLECTION_NAME}"

        # Lier la version d'artifact à la collection
        # Ajouter un ou plusieurs alias à cette version d'artifact
        run.link_artifact(
            artifact = artifact, 
            target_path = target_path, 
            aliases = ["<alias_1>", "<alias_2>"]
            )
    ```
  </Tab>
</Tabs>

<h3 id="protected-aliases">
  Alias protégés
</h3>

Utilisez un [alias protégé](/fr/products/registry/aliases#protected-aliases) pour étiqueter et identifier les versions d’artifact qui ne doivent être ni modifiées ni supprimées. Par exemple, vous pouvez utiliser un alias protégé `production` pour étiqueter et identifier les versions d’artifact utilisées dans le pipeline de production d’apprentissage automatique de votre organisation.

Les utilisateurs [administrateurs de registre](/fr/products/registry/configure_registry#role-types) et les [comptes de service](/fr/support/models/articles/what-is-a-service-account-and-why-is-it-) disposant du rôle **Admin** peuvent créer des alias protégés, et ajouter ou retirer des alias protégés d’une version d’artifact. Les utilisateurs et comptes de service disposant des rôles **Member**, **Viewer** et **Restricted Viewer** ne peuvent ni dissocier une version protégée ni supprimer une collection contenant un alias protégé. Pour plus de détails, voir [Configurer l’accès au registre](/fr/products/registry/configure_registry).

Parmi les alias protégés courants, citons :

* **Production** : la version d’artifact est prête à être utilisée en production.
* **Staging** : la version d’artifact est prête à être testée.

<h4 id="create-a-protected-alias">
  Créer un alias protégé
</h4>

Les étapes suivantes décrivent comment créer un alias protégé dans l’interface utilisateur de Registry :

1. Accédez à Registry à l’adresse [https://forge.coreweave.com/registry/](https://forge.coreweave.com/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.

Une fois créé, chaque alias protégé apparaît sous la forme d’un rectangle gris accompagné d’une icône de cadenas dans la section **Protected Aliases**.

<Note>
  Contrairement aux alias personnalisés non protégés, les alias protégés ne peuvent être créés que dans l’interface utilisateur de Registry, et non par programmation avec le SDK Python. En revanche, pour ajouter un alias protégé à une version d’artifact, vous pouvez utiliser l’interface utilisateur de Registry ou le SDK Python.
</Note>

Les étapes suivantes décrivent comment ajouter un alias protégé à une version d’artifact depuis l’interface utilisateur de Registry :

1. Accédez à Registry à l’adresse [https://forge.coreweave.com/registry/](https://forge.coreweave.com/registry/).
2. Cliquez sur le bouton **Voir les détails** d’une collection.
3. Dans la section **Versions**, sélectionnez le bouton **View** d’une version d’artifact donnée.
4. Cliquez sur le bouton **+** à côté du champ **Aliases** pour ajouter un ou plusieurs alias protégés.

Une fois un alias protégé créé, un administrateur peut l’ajouter à une version d’artifact par programmation avec le SDK Python W\&B. Pour un exemple d’ajout d’un alias protégé à une version d’artifact, consultez les onglets Registry et Python SDK de la section [Créer un alias personnalisé](#custom-aliases) ci-dessus.

<h2 id="find-existing-aliases">
  Trouver des alias existants
</h2>

Vous pouvez trouver des alias existants à l’aide de la [barre de recherche globale](/fr/products/registry/search_registry#search-for-registry-items) de Registry. Pour trouver un alias protégé :

1. Accédez à Registry à l’adresse [https://forge.coreweave.com/registry/](https://forge.coreweave.com/registry/).
2. Saisissez le terme recherché dans la barre de recherche située en haut de la page. Appuyez sur Entrée pour lancer la recherche.

Les résultats 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.

<h2 id="example">
  Exemple
</h2>

<Note>
  L’exemple de code suivant fait suite à ce [notebook du tutoriel Registry](https://colab.research.google.com/github/wandb/examples/blob/master/colabs/wandb_registry/zoo_wandb.ipynb). Pour utiliser ce code, vous devez d’abord [récupérer et traiter le jeu de données Zoo comme indiqué dans le notebook](https://colab.research.google.com/github/wandb/examples/blob/master/colabs/wandb_registry/zoo_wandb.ipynb#scrollTo=87fecd29-8146-41e2-86fb-0bb4e3e3350a). Une fois le jeu de données Zoo obtenu, vous pouvez créer une version d’artifact et y ajouter des alias personnalisés.
</Note>

L’extrait de code suivant montre comment créer une version d’artifact et y ajouter des alias personnalisés. L’exemple utilise le jeu de données Zoo de l’[UCI Machine Learning Repository](https://archive.ics.uci.edu/dataset/111/zoo) ainsi que la collection `Model` du registre `Zoo_Classifier_Models`.

```python theme={"system"}
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 définit à la fois le type de l’objet
    # artifact et le type de collection
    artifact = wandb.Artifact(name = "zoo_dataset", type = "dataset")

    # Ajouter le fichier à l’objet artifact.
    # Indiquer le chemin du 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. Tout d’abord, vous créez un objet artifact (`wandb.Artifact()`).
2. Ensuite, vous ajoutez deux tenseurs PyTorch issus du jeu de données à l’objet artifact avec `wandb.Artifact.add_file()`.
3. Enfin, vous liez la version de l’artifact à la collection `Model` du 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`.
