> ## 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.

# Artifact

export const GitHubLink = ({url, compact = false}) => <a href={url} target="_blank" rel="noopener noreferrer" className={compact ? "source-link" : "github-source-link"}>
    {compact ? "View source" : <>
    <svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor" xmlns="http://www.w3.org/2000/svg">
      <path d="M12 0C5.37 0 0 5.37 0 12c0 5.31 3.435 9.795 8.205 11.385.6.105.825-.255.825-.57 0-.285-.015-1.23-.015-2.235-3.015.555-3.795-.735-4.035-1.41-.135-.345-.72-1.41-1.23-1.695-.42-.225-1.02-.78-.015-.795.945-.015 1.62.87 1.845 1.23 1.08 1.815 2.805 1.305 3.495.99.105-.78.42-1.305.765-1.605-2.67-.3-5.46-1.335-5.46-5.925 0-1.305.465-2.385 1.23-3.225-.12-.3-.54-1.53.12-3.18 0 0 1.005-.315 3.3 1.23.96-.27 1.98-.405 3-.405s2.04.135 3 .405c2.295-1.56 3.3-1.23 3.3-1.23.66 1.65.24 2.88.12 3.18.765.84 1.23 1.905 1.23 3.225 0 4.605-2.805 5.625-5.475 5.925.435.375.81 1.095.81 2.22 0 1.605-.015 2.895-.015 3.3 0 .315.225.69.825.57A12.02 12.02 0 0024 12c0-6.63-5.37-12-12-12z" />
    </svg>
    GitHub source
      </>}
  </a>;

<GitHubLink compact url="https://github.com/wandb/wandb/blob/main/wandb/sdk/artifacts/artifact.py#L128" />

<h2 id="class-wandbartifact">
  <Badge color="yellow" size="lg" shape="rounded">Classe</Badge> wandb.Artifact
</h2>

Élément de base flexible et léger pour la gestion des versions des jeux de données et des modèles.

Construit un artifact W\&B vide. Remplissez le contenu d’un artifact à l’aide des méthodes dont le nom
commence par `add`. Une fois que l’artifact contient tous les fichiers souhaités, vous pouvez appeler
`run.log_artifact()` pour le journaliser.

```python theme={"system"}
name: 'str',
type: 'str',
description: 'str | None' = None,
metadata: 'dict[str, Any] | None' = None,
incremental: 'bool' = False,
use_as: 'str | None' = None,
storage_region: 'str | None' = None,
digest_algorithm: "Literal['MD5', 'XXH128']" = 'MD5'
```

<h2 id="args">
  Arguments
</h2>

<ResponseField name="name" type="str">
  Nom lisible de l’artifact. Utilisez ce nom pour identifier un artifact précis dans l’interface de l’application W\&B ou par programmation. Vous pouvez référencer un artifact de manière interactive avec l’API publique `use_artifact`. Un nom peut contenir des lettres, des chiffres, des caractères de soulignement, des traits d’union et des points. Le nom doit être unique au sein d’un projet.
</ResponseField>

<ResponseField name="type" type="str">
  Type de l’artifact. Le type d’un artifact permet à la fois d’organiser et de différencier les artifacts. Vous pouvez utiliser n’importe quelle chaîne contenant des lettres, des chiffres, des caractères de soulignement, des traits d’union et des points. Les types courants sont notamment `dataset` ou `model`. Incluez `model` dans votre chaîne de type si vous souhaitez lier l’artifact au W\&B Model Registry. Notez que certains types sont réservés à un usage interne et ne peuvent pas être définis par les utilisateurs. C’est le cas de `job` et des types commençant par `wandb-`.
</ResponseField>

<ResponseField name="description" type="str | None">
  Description de l’artifact. Pour les artifacts de modèle ou de jeu de données, ajoutez la documentation de la fiche standardisée de modèle ou de jeu de données de votre équipe. Consultez la description d’un artifact par programmation avec l’attribut `Artifact.description`, ou via l’interface de l’application W\&B. W\&B affiche la description au format Markdown dans la W\&B App.
</ResponseField>

<ResponseField name="metadata" type="dict[str, Any] | None">
  Informations supplémentaires sur un artifact. Spécifiez les métadonnées sous forme de dictionnaire de paires clé-valeur. Vous pouvez spécifier 100 clés au maximum au total.
</ResponseField>

<ResponseField name="incremental" type="bool">
  Pour modifier un artifact existant, utilisez plutôt la méthode `Artifact.new_draft()`.
</ResponseField>

<ResponseField name="use_as" type="str | None">
  Obsolète.
</ResponseField>

<ResponseField name="storage_region" type="str | None">
  Aucune description fournie.
</ResponseField>

<ResponseField name="digest_algorithm" type="Literal['MD5', 'XXH128']">
  Algorithme de digest à utiliser pour l’artifact. Valeur par défaut : MD5. Si la valeur XXH128 est définie, l’artifact est haché avec l’algorithme XXH128, sauf s’il fait partie d’une collection qui utilise déjà MD5. Les appels à `artifact.verify()` avec les versions du SDK antérieures à 0.29.0 échouent systématiquement sur les artifacts XXH128.
</ResponseField>

<h2 id="properties">
  Propriétés
</h2>

<ResponseField name="aliases" type="list[str]">
  Liste d’une ou plusieurs références sémantiquement explicites ou

  « surnoms » d’identification attribués à une version d’artifact.

  Les alias sont des références modifiables que vous pouvez utiliser par programmation.
  Modifiez l’alias d’un artifact via l’interface de l’application W\&B ou par programmation.
  Pour plus d’informations, voir [Créer de nouvelles versions d’artifact](/fr/products/wandb/artifacts/create-a-new-artifact-version).
</ResponseField>

<ResponseField name="collection" type="ArtifactCollection">
  La collection à partir de laquelle cet artifact est récupéré.

  Une collection est un groupe ordonné de versions d’artifact.
  Si cet artifact est récupéré à partir d’une collection à laquelle il est lié,
  cette collection est renvoyée. Sinon, c’est la collection
  dont provient la version d’artifact qui est renvoyée.

  La collection dont provient un artifact est appelée
  séquence source.
</ResponseField>

<ResponseField name="commit_hash" type="str">
  Le hash renvoyé lors du commit de cet artifact.
</ResponseField>

<ResponseField name="created_at" type="str">
  Horodatage de la création de l’artifact.
</ResponseField>

<ResponseField name="description" type="str | None">
  Une description de l’artifact.
</ResponseField>

<ResponseField name="digest" type="str">
  Le digest logique de l’artifact.

  Le digest est la somme de contrôle du contenu de l’artifact. Si un artifact a le
  même digest que la version `latest` actuelle, `log_artifact` n’a aucun effet (no-op).
</ResponseField>

<ResponseField name="digest_algorithm" type="ArtifactDigestAlgorithm">
  L’algorithme utilisé pour calculer le digest de l’artifact.
</ResponseField>

<ResponseField name="entity" type="str">
  Le nom de l’entity à laquelle appartient la collection d’artifacts.

  Si l’artifact est un lien, l’entity est celle de l’artifact lié.
</ResponseField>

<ResponseField name="file_count" type="int">
  Le nombre de fichiers (références incluses).
</ResponseField>

<ResponseField name="history_step" type="int | None">
  Le step le plus proche ayant journalisé des métriques d’historique pour le run source de cet artifact.
</ResponseField>

<ResponseField name="id" type="str | None">
  L’ID de l’artifact.
</ResponseField>

<ResponseField name="is_link" type="bool">
  Indicateur booléen précisant si l’artifact est un artifact de lien.

  True : l’artifact est un artifact de lien vers un artifact source.
  False : l’artifact est un artifact source.
</ResponseField>

<ResponseField name="linked_artifacts" type="list[Artifact]">
  Renvoie la liste de tous les artifacts liés d’un artifact source.

  Si cet artifact est un artifact de lien (`artifact.is_link == True`),
  une liste vide est renvoyée.

  Limité à 500 résultats.
</ResponseField>

<ResponseField name="linked_at" type="str | None">
  Date et heure auxquelles cet artifact a été lié à sa collection actuelle.

  Valide uniquement pour les artifacts liés ; renvoie `None` dans les autres cas.
</ResponseField>

<ResponseField name="manifest" type="ArtifactManifest">
  Le manifeste de l’artifact.

  Le manifeste répertorie l’ensemble de son contenu et ne peut plus être modifié une fois l’artifact
  journalisé.
</ResponseField>

<ResponseField name="metadata" type="dict">
  Métadonnées de l’artifact définies par l’utilisateur.

  Données structurées associées à l’artifact.
</ResponseField>

<ResponseField name="name" type="str">
  Le nom et la version de l’artifact.

  Une chaîne au format `{collection}:{alias}`. Si le nom est récupéré avant que l’artifact ne soit
  journalisé ou enregistré, il ne contient pas l’alias.
  Si l’artifact est un lien, le nom est celui de l’artifact lié.
</ResponseField>

<ResponseField name="project" type="str">
  Le nom du projet auquel appartient la collection d’artifacts.

  Si l’artifact est un lien, le projet est celui de l’artifact lié.
</ResponseField>

<ResponseField name="qualified_name" type="str">
  L’entity/projet/nom de l’artifact.

  Si l’artifact est un lien, le nom qualifié est celui du
  chemin de l’artifact lié.
</ResponseField>

<ResponseField name="size" type="int">
  La taille totale de l’artifact, en octets.

  Inclut toutes les références suivies par cet artifact.
</ResponseField>

<ResponseField name="source_artifact" type="Artifact">
  Renvoie l’artifact source, c’est-à-dire l’artifact journalisé d’origine.

  Si cet artifact est un artifact source (`artifact.is_link == False`),
  il se renvoie lui-même.
</ResponseField>

<ResponseField name="source_collection" type="ArtifactCollection">
  La collection source de l’artifact.

  La collection source est la collection à partir de laquelle l’artifact a été journalisé.
</ResponseField>

<ResponseField name="source_entity" type="str">
  Le nom de l’entity de l’artifact source.
</ResponseField>

<ResponseField name="source_name" type="str">
  Le nom et la version de l’artifact source.

  Une chaîne au format `{source_collection}:{alias}`. Avant l’enregistrement de l’artifact,
  elle ne contient que le nom, car la version n’est pas encore connue.
</ResponseField>

<ResponseField name="source_project" type="str">
  Le nom du projet de l’artifact source.
</ResponseField>

<ResponseField name="source_qualified_name" type="str">
  Le chemin source\_entity/source\_project/source\_name de l’artifact source.
</ResponseField>

<ResponseField name="source_version" type="str">
  La version de l’artifact source.

  Une chaîne de caractères au format `v{number}`.
</ResponseField>

<ResponseField name="state" type="str">
  Le statut de l’artifact. L’une des valeurs suivantes : « PENDING », « COMMITTED » ou « DELETED ».
</ResponseField>

<ResponseField name="tags" type="list[str]">
  Liste d’un ou plusieurs tags attribués à cette version de l’artifact.
</ResponseField>

<ResponseField name="ttl" type="timedelta | None">
  La politique de durée de vie (TTL) d’un artifact.

  Les artifacts sont supprimés peu après l’expiration de la durée définie par une politique TTL.
  Si la valeur est `None`, l’artifact désactive les politiques TTL et sa suppression ne sera pas
  planifiée, même si une politique TTL par défaut est définie pour l’équipe.
  Un artifact hérite de la politique TTL par défaut de
  l’équipe si l’administrateur d’équipe en a défini une
  et qu’aucune politique personnalisée n’est définie sur l’artifact.
</ResponseField>

<ResponseField name="type" type="str">
  Le type de l’artifact. Les types courants sont `dataset` ou `model`.
</ResponseField>

<ResponseField name="updated_at" type="str">
  La date et l’heure de la dernière mise à jour de l’artifact.
</ResponseField>

<ResponseField name="url" type="The URL of the artifact.">
  Construit l’URL de l’artifact.
</ResponseField>

<ResponseField name="use_as" type="str | None">
  Obsolète.
</ResponseField>

<ResponseField name="version" type="str">
  La version de l’artifact.

  Une chaîne de caractères au format `v{number}`.
  S’il s’agit d’un artifact de type lien, la version provient de la collection liée.
</ResponseField>

<h2 id="methods">
  Méthodes
</h2>

<h3 id="method-artifactadd">
  <Badge color="blue" size="lg" shape="rounded">méthode</Badge> Artifact.add()
</h3>

```python theme={"system"}
self,
obj: 'WBValue',
name: 'StrPath',
overwrite: 'bool' = False
```

Ajoute l’objet wandb.WBValue `obj` à l’artifact.

<h5 id="arguments">
  Arguments
</h5>

<ResponseField name="obj" type="WBValue">
  L’objet à ajouter. Les types actuellement pris en charge sont les suivants : Bokeh, JoinedTable, PartitionedTable, Table, Classes, ImageMask, BoundingBoxes2D, Audio, Image, Video, Html, Object3D
</ResponseField>

<ResponseField name="name" type="StrPath">
  Le chemin, dans l’artifact, auquel ajouter l’objet.
</ResponseField>

<ResponseField name="overwrite" type="bool">
  Si True, écrase, le cas échéant, les objets existants qui ont le même chemin de fichier.
</ResponseField>

<h5 id="raises">
  Exceptions levées
</h5>

* `ArtifactFinalizedError` : vous ne pouvez pas modifier la version actuelle de l’artifact, car elle est finalisée. Journalisez plutôt une nouvelle version de l’artifact.

<h3 id="method-artifactadd_dir">
  <Badge color="blue" size="lg" shape="rounded">méthode</Badge> Artifact.add\_dir()
</h3>

```python theme={"system"}
self,
local_path: 'str',
name: 'str | None' = None,
skip_cache: 'bool | None' = False,
policy: "Literal['mutable', 'immutable'] | None" = 'mutable',
merge: 'bool' = False
```

Ajoute un répertoire local à l’artifact.

<h5 id="arguments-2">
  Arguments
</h5>

<ResponseField name="local_path" type="str">
  Le chemin du répertoire local.
</ResponseField>

<ResponseField name="name" type="str | None">
  Le nom du sous-répertoire au sein d’un artifact. Le nom que vous indiquez apparaît dans l’interface de l’application W\&B, imbriqué sous le `type` de l’artifact. Par défaut, la racine de l’artifact.
</ResponseField>

<ResponseField name="skip_cache" type="bool | None">
  Si la valeur est `True`, W\&B ne copie ni ne déplace les fichiers vers le cache lors du téléversement
</ResponseField>

<ResponseField name="policy" type="Literal['mutable', 'immutable'] | None">
  Par défaut, « mutable ».

  * mutable : crée une copie temporaire du fichier afin d’éviter
    toute corruption pendant le téléversement.
  * immutable : désactive la protection ; il revient à l’utilisateur de ne pas supprimer
    ni modifier le fichier.
</ResponseField>

<ResponseField name="merge" type="bool">
  Si `False` (par défaut), lève une ValueError si un fichier a déjà été ajouté lors d’un appel add\_dir précédent et que son contenu a changé depuis. Si `True`, écrase les fichiers existants dont le contenu a changé. Les nouveaux fichiers sont toujours ajoutés et aucun fichier n’est jamais supprimé. Pour remplacer un répertoire entier, indiquez un nom lors de l’ajout du répertoire avec `add_dir(local_path, name=my_prefix)`, puis appelez `remove(my_prefix)` pour supprimer le répertoire avant de l’ajouter à nouveau.
</ResponseField>

<h5 id="raises-2">
  Exceptions levées
</h5>

* `ArtifactFinalizedError` : vous ne pouvez pas modifier la version actuelle de l’artifact, car elle est finalisée. Journalisez plutôt une nouvelle version de l’artifact.
* `ValueError` : la politique doit être "mutable" ou "immutable"

<h3 id="method-artifactadd_file">
  <Badge color="blue" size="lg" shape="rounded">méthode</Badge> Artifact.add\_file()
</h3>

```python theme={"system"}
self,
local_path: 'str',
name: 'str | None' = None,
is_tmp: 'bool | None' = False,
skip_cache: 'bool | None' = False,
policy: "Literal['mutable', 'immutable'] | None" = 'mutable',
overwrite: 'bool' = False
```

Ajoute un fichier local à l’artifact.

<h5 id="arguments-3">
  Arguments
</h5>

<ResponseField name="local_path" type="str">
  Le chemin du fichier à ajouter.
</ResponseField>

<ResponseField name="name" type="str | None">
  Le chemin, dans l’artifact, à utiliser pour le fichier ajouté. Par défaut, il s’agit du nom de base du fichier.
</ResponseField>

<ResponseField name="is_tmp" type="bool | None">
  Si la valeur est true, le fichier est renommé de manière déterministe afin d’éviter les collisions.
</ResponseField>

<ResponseField name="skip_cache" type="bool | None">
  Si la valeur est `True`, les fichiers ne sont pas copiés dans le cache après leur téléversement.
</ResponseField>

<ResponseField name="policy" type="Literal['mutable', 'immutable'] | None">
  La valeur par défaut est « mutable ». Si la valeur est « mutable », une copie temporaire du fichier est créée pour éviter toute corruption pendant le téléversement. Si la valeur est « immutable », la protection est désactivée et l’on part du principe que l’utilisateur ne supprimera ni ne modifiera le fichier.
</ResponseField>

<ResponseField name="overwrite" type="bool">
  Si la valeur est `True`, le fichier est écrasé s’il existe déjà.
</ResponseField>

<h5 id="raises-3">
  Exceptions levées
</h5>

* `ArtifactFinalizedError` : vous ne pouvez pas modifier la version actuelle de l’artifact, car elle est finalisée. Journalisez plutôt une nouvelle version de l’artifact.
* `ValueError` : la politique doit être "mutable" ou "immutable"

<h3 id="method-artifactadd_reference">
  <Badge color="blue" size="lg" shape="rounded">méthode</Badge> Artifact.add\_reference()
</h3>

```python theme={"system"}
self,
uri: 'ArtifactManifestEntry | str',
name: 'StrPath | None' = None,
checksum: 'bool' = True,
max_objects: 'int | None' = None
```

Ajoute à l’artifact une référence désignée par un URI.

Contrairement aux fichiers ou aux répertoires que vous ajoutez à un artifact, les références ne sont pas
téléversées vers W\&B. Pour plus d’informations,
voir [Suivre des fichiers externes](/fr/products/wandb/artifacts/track-external-files).

Par défaut, les schémas suivants sont pris en charge :

* http(s) : la taille et le digest du fichier sont déduits des
  en-têtes de réponse `Content-Length` et `ETag` renvoyés par le serveur.
* s3 : la somme de contrôle et la taille sont extraites des métadonnées de l’objet.
  Si la gestion des versions du bucket est activée, l’ID de version est également suivi.
* gs : la somme de contrôle et la taille sont extraites des métadonnées de l’objet. Si la
  gestion des versions du bucket est activée, l’ID de version est également suivi.
* https, domaine correspondant à `*.blob.core.windows.net`
* Azure : la somme de contrôle et la taille sont extraites des métadonnées du blob.
  Si la gestion des versions du compte de stockage est activée, l’ID de version est
  également suivi.
* file : la somme de contrôle et la taille sont extraites du système de fichiers. Ce schéma
  est utile si vous disposez d’un partage NFS ou d’un autre volume monté en externe
  contenant des fichiers que vous souhaitez suivre sans forcément les téléverser.

Pour tout autre schéma, le digest est simplement un hash de l’URI et la taille n’est pas
renseignée.

<h5 id="arguments-4">
  Arguments
</h5>

<ResponseField name="uri" type="ArtifactManifestEntry | str">
  Le chemin URI de la référence à ajouter. Le chemin URI peut être un objet renvoyé par `Artifact.get_entry` afin de stocker une référence vers l’entrée d’un autre artifact.
</ResponseField>

<ResponseField name="name" type="StrPath | None">
  Le chemin, dans l’artifact, où placer le contenu de cette référence.
</ResponseField>

<ResponseField name="checksum" type="bool">
  Indique s’il faut calculer la somme de contrôle de la ou des ressources situées à l’URI de la référence. Le calcul de la somme de contrôle est fortement recommandé, car il permet de valider automatiquement l’intégrité. Le désactiver accélère la création de l’artifact, mais les répertoires de référence ne sont alors pas parcourus : les objets qu’ils contiennent ne sont donc pas enregistrés dans l’artifact. Nous recommandons de définir `checksum=False` lors de l’ajout d’objets de référence ; dans ce cas, une nouvelle version n’est créée que si l’URI de la référence change.
</ResponseField>

<ResponseField name="max_objects" type="int | None">
  Le nombre maximal d’objets à prendre en compte lors de l’ajout d’une référence pointant vers un répertoire ou un préfixe de stockage de bucket. Par défaut, le nombre maximal d’objets autorisé pour Amazon S3, GCS, Azure et les fichiers locaux est de 10 000 000. Les autres schémas d’URI n’ont pas de limite.
</ResponseField>

<h5 id="raises-4">
  Exceptions levées
</h5>

* `ArtifactFinalizedError` : vous ne pouvez pas modifier la version actuelle de l’artifact, car elle est finalisée. Journalisez plutôt une nouvelle version de l’artifact.

<h3 id="method-artifactcheckout">
  <Badge color="blue" size="lg" shape="rounded">méthode</Badge> Artifact.checkout()
</h3>

```python theme={"system"}
self,
root: 'str | None' = None
```

Remplace le répertoire racine spécifié par le contenu de l’artifact.

AVERTISSEMENT : cette opération supprime tous les fichiers de `root` qui ne figurent pas dans
l’artifact.

<h5 id="arguments-5">
  Arguments
</h5>

<ResponseField name="root" type="str | None">
  Le répertoire à remplacer par les fichiers de cet artifact.
</ResponseField>

<h5 id="raises-5">
  Exceptions levées
</h5>

* `ArtifactNotLoggedError` : si l’artifact n’est pas journalisé.

<h3 id="method-artifactdelete">
  <Badge color="blue" size="lg" shape="rounded">méthode</Badge> Artifact.delete()
</h3>

```python theme={"system"}
self,
delete_aliases: 'bool' = False
```

Supprime un artifact et ses fichiers.

Si cette méthode est appelée sur un artifact lié, seul le lien est supprimé :
l’artifact source n’est pas modifié.

Pour supprimer le lien entre un artifact source et une collection, utilisez
`Artifact.unlink()` plutôt que `Artifact.delete()`.

<h5 id="arguments-6">
  Arguments
</h5>

<ResponseField name="delete_aliases" type="bool">
  Si la valeur est `True`, supprime tous les alias associés à l’artifact. Si la valeur est `False`, lève une exception si l’artifact possède déjà des alias. Ce paramètre est ignoré si l’artifact est récupéré depuis une collection à laquelle il est lié.
</ResponseField>

<h5 id="raises-6">
  Exceptions levées
</h5>

* `ArtifactNotLoggedError` : si l’artifact n’est pas journalisé.

<h3 id="method-artifactdownload">
  <Badge color="blue" size="lg" shape="rounded">méthode</Badge> Artifact.download()
</h3>

```python theme={"system"}
self,
root: 'StrPath | None' = None,
allow_missing_references: 'bool' = False,
skip_cache: 'bool | None' = None,
path_prefix: 'StrPath | None' = None,
multipart: 'bool | None' = None
```

Télécharge le contenu de l’artifact dans le répertoire racine spécifié.

Les fichiers déjà présents dans `root` ne sont pas modifiés. Supprimez explicitement `root`
avant d’appeler `download` si vous souhaitez que le contenu de `root` corresponde exactement
à l’artifact.

<h5 id="arguments-7">
  Arguments
</h5>

<ResponseField name="root" type="StrPath | None">
  Répertoire dans lequel W\&B stocke les fichiers de l’artifact.
</ResponseField>

<ResponseField name="allow_missing_references" type="bool">
  Si la valeur est `True`, les chemins de référence non valides sont ignorés lors du téléchargement des fichiers référencés.
</ResponseField>

<ResponseField name="skip_cache" type="bool | None">
  Si la valeur est `True`, le cache d’artifacts n’est pas utilisé lors du téléchargement et W\&B télécharge chaque fichier dans la racine par défaut ou dans le répertoire de téléchargement spécifié.
</ResponseField>

<ResponseField name="path_prefix" type="StrPath | None">
  Si ce paramètre est spécifié, seuls les fichiers dont le chemin commence par le préfixe indiqué sont téléchargés. Utilise le format Unix (barres obliques).
</ResponseField>

<ResponseField name="multipart" type="bool | None">
  Si la valeur est `None` (par défaut), l’artifact est téléchargé en parallèle en mode multipart lorsque la taille d’un fichier dépasse 2 Go. Si la valeur est `True` ou `False`, l’artifact est téléchargé respectivement en parallèle ou en série, quelle que soit la taille des fichiers.
</ResponseField>

<h5 id="raises-7">
  Exceptions levées
</h5>

* `ArtifactNotLoggedError` : si l’artifact n’est pas journalisé.

<h3 id="method-artifactfile">
  <Badge color="blue" size="lg" shape="rounded">méthode</Badge> Artifact.file()
</h3>

```python theme={"system"}
self,
root: 'str | None' = None
```

Télécharge un artifact composé d’un seul fichier dans le répertoire indiqué par `root`.

<h5 id="arguments-8">
  Arguments
</h5>

<ResponseField name="root" type="str | None">
  Répertoire racine dans lequel stocker le fichier. Valeur par défaut : `./artifacts/self.name/`.
</ResponseField>

<h5 id="raises-8">
  Exceptions levées
</h5>

* `ArtifactNotLoggedError` : si l’artifact n’est pas journalisé.
* `ValueError` : si l’artifact contient plus d’un fichier.

<h3 id="method-artifactfiles">
  <Badge color="blue" size="lg" shape="rounded">méthode</Badge> Artifact.files()
</h3>

```python theme={"system"}
self,
names: 'list[str] | None' = None,
per_page: 'int' = 50,
start: 'str | None' = None
```

Parcourt tous les fichiers stockés dans cet artifact.

<h5 id="arguments-9">
  Arguments
</h5>

<ResponseField name="names" type="list[str] | None">
  Les chemins des fichiers à lister, relatifs à la racine de l’artifact.
</ResponseField>

<ResponseField name="per_page" type="int">
  Le nombre de fichiers à renvoyer par requête.
</ResponseField>

<ResponseField name="start" type="str | None">
  Curseur de pagination permettant de reprendre une requête antérieure, récupéré depuis l’attribut `.cursor` d’un paginateur précédent.
</ResponseField>

<h5 id="raises-9">
  Exceptions levées
</h5>

* `ArtifactNotLoggedError` : si l’artifact n’est pas journalisé.

<h3 id="method-artifactfinalize">
  <Badge color="blue" size="lg" shape="rounded">méthode</Badge> Artifact.finalize()
</h3>

```python theme={"system"}
self
```

Finalise la version de l’artifact.

Une fois finalisée, une version d’artifact ne peut plus être modifiée, car l’artifact
est journalisé sous la forme d’une version d’artifact spécifique. Pour journaliser davantage de données dans un artifact,
créez une nouvelle version d’artifact. Un artifact est automatiquement finalisé
lorsque vous le journalisez avec `log_artifact`.

<h3 id="method-artifactget">
  <Badge color="blue" size="lg" shape="rounded">méthode</Badge> Artifact.get()
</h3>

```python theme={"system"}
self,
name: 'str'
```

Obtenir l’objet WBValue situé au chemin `name`, relatif à l’artifact.

<h5 id="arguments-10">
  Arguments
</h5>

<ResponseField name="name" type="str">
  Nom relatif de l’artifact à récupérer.
</ResponseField>

<h5 id="raises-10">
  Exceptions levées
</h5>

* `ArtifactNotLoggedError` : si l’artifact n’est pas journalisé ou si le run est hors ligne.

<h3 id="method-artifactget_added_local_path_name">
  <Badge color="blue" size="lg" shape="rounded">méthode</Badge> Artifact.get\_added\_local\_path\_name()
</h3>

```python theme={"system"}
self,
local_path: 'str'
```

Obtenir le nom relatif, dans l’artifact, d’un fichier ajouté à partir d’un chemin du système de fichiers local.

<h5 id="arguments-11">
  Arguments
</h5>

<ResponseField name="local_path" type="str">
  Le chemin local à convertir en nom relatif au sein de l’artifact.
</ResponseField>

<h3 id="method-artifactget_entry">
  <Badge color="blue" size="lg" shape="rounded">méthode</Badge> Artifact.get\_entry()
</h3>

```python theme={"system"}
self,
name: 'StrPath'
```

Obtenir l’entrée portant le nom spécifié.

<h5 id="arguments-12">
  Arguments
</h5>

<ResponseField name="name" type="StrPath">
  Le nom relatif, au sein de l’artifact, de l’entrée à obtenir
</ResponseField>

<h5 id="raises-11">
  Exceptions levées
</h5>

* `ArtifactNotLoggedError` : si l’artifact n’est pas journalisé ou si le run est hors ligne.
* `KeyError` : si l’artifact ne contient aucune entrée portant le nom indiqué.

<h3 id="method-artifactget_path">
  <Badge color="blue" size="lg" shape="rounded">méthode</Badge> Artifact.get\_path()
</h3>

```python theme={"system"}
self,
name: 'StrPath'
```

Obsolète. Utilisez `get_entry(name)`.

<h5 id="arguments-13">
  Arguments
</h5>

<ResponseField name="name" type="StrPath">
  Aucune description fournie.
</ResponseField>

<h3 id="method-artifactis_draft">
  <Badge color="blue" size="lg" shape="rounded">méthode</Badge> Artifact.is\_draft()
</h3>

```python theme={"system"}
self
```

Vérifie si l’artifact n’est pas enregistré.

<h3 id="method-artifactjson_encode">
  <Badge color="blue" size="lg" shape="rounded">méthode</Badge> Artifact.json\_encode()
</h3>

```python theme={"system"}
self
```

Renvoie l’artifact encodé au format JSON.

<h3 id="method-artifactlink">
  <Badge color="blue" size="lg" shape="rounded">méthode</Badge> Artifact.link()
</h3>

```python theme={"system"}
self,
target_path: 'str',
aliases: 'Iterable[str] | None' = None
```

Lie cet artifact à une collection.

<h5 id="arguments-14">
  Arguments
</h5>

<ResponseField name="target_path" type="str">
  Le chemin de la collection. Il se compose du préfixe « wandb-registry- », suivi du nom du registre et du nom de la collection, soit `wandb-registry-{REGISTRY_NAME}/{COLLECTION_NAME}`.
</ResponseField>

<ResponseField name="aliases" type="Iterable[str] | None">
  Ajoutez un ou plusieurs alias à l’artifact lié. L’alias « latest » est automatiquement attribué au dernier artifact que vous liez.
</ResponseField>

<h5 id="raises-12">
  Exceptions levées
</h5>

* `ArtifactNotLoggedError` : si l’artifact n’est pas journalisé.

<h3 id="method-artifactlogged_by">
  <Badge color="blue" size="lg" shape="rounded">méthode</Badge> Artifact.logged\_by()
</h3>

```python theme={"system"}
self
```

Obtenir le run W\&B qui a initialement journalisé l’artifact.

<h5 id="raises-13">
  Exceptions levées
</h5>

* `ArtifactNotLoggedError` : si l’artifact n’est pas journalisé.

<h3 id="method-artifactnew_draft">
  <Badge color="blue" size="lg" shape="rounded">méthode</Badge> Artifact.new\_draft()
</h3>

```python theme={"system"}
self
```

Crée un nouvel artifact brouillon ayant le même contenu que cet artifact validé.

La modification d’un artifact existant crée une nouvelle version d’artifact appelée
« artifact incrémentiel ». L’artifact renvoyé peut être étendu ou
modifié, puis journalisé comme nouvelle version.

<h5 id="raises-14">
  Exceptions levées
</h5>

* `ArtifactNotLoggedError` : si l’artifact n’est pas journalisé.

<h3 id="method-artifactnew_file">
  <Badge color="blue" size="lg" shape="rounded">méthode</Badge> Artifact.new\_file()
</h3>

```python theme={"system"}
self,
name: 'str',
mode: 'str' = 'x',
encoding: 'str | None' = None,
policy: "Literal['mutable', 'immutable']" = 'mutable'
```

Ouvre un nouveau fichier temporaire et l’ajoute à l’artifact.

<h5 id="arguments-15">
  Arguments
</h5>

<ResponseField name="name" type="str">
  Le nom du nouveau fichier à ajouter à l’artifact.
</ResponseField>

<ResponseField name="mode" type="str">
  Le mode d’accès à utiliser pour ouvrir le nouveau fichier.
</ResponseField>

<ResponseField name="encoding" type="str | None">
  L’encodage utilisé pour ouvrir le nouveau fichier.
</ResponseField>

<ResponseField name="policy" type="Literal['mutable', 'immutable']">
  Par défaut, la valeur est « mutable ». Avec « mutable », une copie temporaire du fichier est créée afin d’éviter toute corruption pendant le téléversement. Avec « immutable », cette protection est désactivée et il incombe à l’utilisateur de ne ni supprimer ni modifier le fichier.
</ResponseField>

<h5 id="raises-15">
  Exceptions levées
</h5>

* `ArtifactFinalizedError` : Vous ne pouvez pas modifier la version actuelle de l’artifact, car elle est finalisée. Journalisez plutôt une nouvelle version de l’artifact.

<h3 id="method-artifactremove">
  <Badge color="blue" size="lg" shape="rounded">méthode</Badge> Artifact.remove()
</h3>

```python theme={"system"}
self,
item: 'StrPath | ArtifactManifestEntry'
```

Supprime un élément de l’artifact.

<h5 id="arguments-16">
  Arguments
</h5>

<ResponseField name="item" type="StrPath | ArtifactManifestEntry">
  L’élément à supprimer. Il peut s’agir d’une entrée de manifeste précise ou du nom d’un chemin relatif à l’artifact. Si l’élément correspond à un répertoire, tous les éléments de ce répertoire sont supprimés.
</ResponseField>

<h5 id="raises-16">
  Exceptions levées
</h5>

* `ArtifactFinalizedError` : vous ne pouvez pas modifier la version actuelle de l’artifact, car elle est finalisée. Journalisez plutôt une nouvelle version de l’artifact.
* `FileNotFoundError` : si l’élément est introuvable dans l’artifact.

<h3 id="method-artifactsave">
  <Badge color="blue" size="lg" shape="rounded">méthode</Badge> Artifact.save()
</h3>

```python theme={"system"}
self,
project: 'str | None' = None,
settings: 'wandb.Settings | None' = None
```

Enregistre toutes les modifications apportées à l’artifact.

Si un run est en cours, ce run journalise cet artifact. Sinon, un run
de type "auto" est créé pour suivre cet artifact.

<h5 id="arguments-17">
  Arguments
</h5>

<ResponseField name="project" type="str | None">
  Projet à utiliser pour l’artifact si aucun run n’est déjà présent dans le contexte.
</ResponseField>

<ResponseField name="settings" type="wandb.Settings | None">
  Objet de paramètres à utiliser lors de l’initialisation d’un run automatique. Principalement utilisé dans les harness de test.
</ResponseField>

<h3 id="method-artifactunlink">
  <Badge color="blue" size="lg" shape="rounded">méthode</Badge> Artifact.unlink()
</h3>

```python theme={"system"}
self
```

Supprime le lien de cet artifact s’il est lié en tant que membre à une collection d’artifacts.

<h5 id="raises-17">
  Exceptions levées
</h5>

* `ArtifactNotLoggedError` : si l’artifact n’est pas journalisé.
* `ValueError` : si l’artifact n’est lié à aucune collection.

<h3 id="method-artifactused_by">
  <Badge color="blue" size="lg" shape="rounded">méthode</Badge> Artifact.used\_by()
</h3>

```python theme={"system"}
self
```

Obtenir la liste des runs qui ont utilisé cet artifact et ses artifacts liés.

<h5 id="raises-18">
  Exceptions levées
</h5>

* `ArtifactNotLoggedError` : si l’artifact n’est pas journalisé.

<h3 id="method-artifactverify">
  <Badge color="blue" size="lg" shape="rounded">méthode</Badge> Artifact.verify()
</h3>

```python theme={"system"}
self,
root: 'str | None' = None
```

Vérifie que le contenu d’un artifact correspond au manifeste.

Une somme de contrôle est calculée pour chaque fichier du répertoire, puis ces sommes de contrôle
sont comparées au manifeste de l’artifact. Les références ne sont pas vérifiées.

<h5 id="arguments-18">
  Arguments
</h5>

<ResponseField name="root" type="str | None">
  Le répertoire à vérifier. Si la valeur est None, l’artifact sera téléchargé dans './artifacts/self.name/'.
</ResponseField>

<h5 id="raises-19">
  Exceptions levées
</h5>

* `ArtifactNotLoggedError` : si l’artifact n’est pas journalisé.
* `ValueError` : si la vérification échoue.

<h3 id="method-artifactwait">
  <Badge color="blue" size="lg" shape="rounded">méthode</Badge> Artifact.wait()
</h3>

```python theme={"system"}
self,
timeout: 'int | None' = None
```

Si nécessaire, attend la fin de la journalisation de cet artifact.

<h5 id="arguments-19">
  Arguments
</h5>

<ResponseField name="timeout" type="int | None">
  Durée d’attente, en secondes.
</ResponseField>
