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

# Trouver des éléments du registre

> Découvrez comment rechercher des registres, des collections et des versions d'artifact de manière interactive dans l'interface ou par programmation à l'aide de requêtes.

Trouvez des registres, des collections et des versions d'artifact [de manière interactive dans le registre](/fr/products/registry/search_registry#search-for-registry-items) ou [par programmation](/fr/products/registry/search_registry#query-registry-items) avec le SDK Python W\&B.

Seuls les éléments que vous êtes autorisé à consulter apparaissent dans les résultats de recherche.

<Info>
  La syntaxe et les opérateurs disponibles pour interroger le registre sont proches de ceux des requêtes MongoDB, sans être identiques.
</Info>

<h2 id="search-for-registry-items">
  Rechercher des éléments du registre
</h2>

Utilisez la [barre de recherche de la page d’accueil du registre](/fr/products/registry/search_registry#basic-search) pour trouver des collections et des registres par leur nom. Utilisez la [recherche avancée](/fr/products/registry/search_registry#advanced-search) pour trouver des registres, des collections ou des versions d’artifact selon des attributs précis, comme le nom, le tag, la description, la date de création, etc.

<h3 id="basic-search">
  Recherche de base
</h3>

Recherchez des registres et des collections depuis la page d’accueil du registre :

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

<h3 id="advanced-search">
  Recherche avancée
</h3>

Utilisez la recherche avancée pour trouver des registres, des collections ou des versions d’artifact. Les filtres vous permettent de rechercher des éléments du registre précis en fonction d’attributs tels que le nom, le tag, la description, la date de création, etc.

1. Accédez au registre à l’adresse [https://forge.coreweave.com/registry/](https://forge.coreweave.com/registry/).
2. Cliquez sur **Advanced** en haut de la page d’accueil.
3. Sélectionnez le bouton **Registries**, **Collections** ou **Versions**.
4. Cliquez sur **Filters**.
5. De gauche à droite, sélectionnez l’attribut sur lequel filtrer, l’opérateur et la valeur. Vous pouvez ajouter plusieurs filtres pour affiner vos résultats de recherche.
6. Appuyez sur Entrée pour appliquer le filtre.

<h2 id="query-registry-items">
  Interroger les éléments du registre
</h2>

Utilisez [`wandb.Api().registries()`](/fr/products/wandb/ref/python/public-api/api#method-api-registries) et des *prédicats de requête* pour filtrer les registres, les collections et les versions d'artifact. Un prédicat de requête est une condition qui définit les critères auxquels doivent satisfaire les éléments renvoyés.

Pour créer un prédicat de requête, utilisez un dictionnaire de type JSON composé d'un [nom de requête](/fr/products/registry/search_registry#filterable-fields), d'un ou de plusieurs [opérateurs](/fr/products/registry/search_registry#supported-operators) et de valeurs. L'extrait de code suivant présente la structure générale d'un prédicat de requête :

```python theme={"system"}
{
    "query_name": {
        "operator": value
    }
}
```

Les sections suivantes décrivent les [noms de requête](/fr/products/registry/search_registry#filterable-fields) disponibles dans le registre, les [opérateurs pris en charge](/fr/products/registry/search_registry#supported-operators) ainsi que des [exemples de requêtes](/fr/products/registry/search_registry#example-queries).

<h3 id="filterable-fields">
  Champs filtrables
</h3>

Le tableau suivant répertorie les noms de requête que vous pouvez utiliser en fonction du type d’élément que vous souhaitez filtrer :

| | nom de requête |
| - | - |
| registres | `name`, `description`, `created_at`, `updated_at` |
| collections | `name`, `tag`, `description`, `created_at`, `updated_at` |
| versions | `tag`, `alias`, `created_at`, `updated_at`, `metadata` |

<h3 id="supported-operators">
  Opérateurs pris en charge
</h3>

W\&B prend en charge les opérateurs logiques et de comparaison suivants pour filtrer les éléments du registre :

<h4 id="comparison-operators">
  Opérateurs de comparaison
</h4>

| Opérateur | Description |
| - | - |
| `$eq` | Égal à |
| `$ne` | Différent de |
| `$gt` | Supérieur à |
| `$gte` | Supérieur ou égal à |
| `$lt` | Inférieur à |
| `$lte` | Inférieur ou égal à |

<h4 id="logical-operators">
  Opérateurs logiques
</h4>

| Opérateur | Description |
| - | - |
| `$and` | Applique la logique [AND](https://en.wikipedia.org/wiki/Logical_conjunction) à une ou plusieurs conditions |
| `$or` | Applique la logique [OR](https://en.wikipedia.org/wiki/Logical_disjunction) à une ou plusieurs conditions |
| `$nor` | Applique la logique [NOR](https://en.wikipedia.org/wiki/Logical_NOR) à une ou plusieurs conditions |
| `$not` | Applique la logique [NOT](https://en.wikipedia.org/wiki/Negation) à une condition |

<h4 id="other-operators">
  Autres opérateurs
</h4>

| Opérateur | Description |
| - | - |
| `$regex` | Correspondance de motif par expression régulière |
| `$exists` | Le champ existe ou n’existe pas |
| `$contains` | La chaîne contient la valeur |

<h3 id="example-queries">
  Exemples de requêtes
</h3>

Les exemples de code suivants illustrent quelques scénarios de recherche courants.

Pour utiliser la méthode `wandb.Api().registries()`, importez d’abord la bibliothèque du SDK Python W\&B ([`wandb`](/fr/products/wandb/ref/python)) :

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

# (Facultatif) Créez une instance de la classe wandb.Api() pour améliorer la lisibilité
api = wandb.Api()
```

Filtrer tous les registres qui contiennent la chaîne `model` :

```python theme={"system"}
# Filtrer tous les registres dont le nom contient la chaîne `model`
registry_filters = {
    "name": {"$regex": "model"}
}

# Renvoie un itérable de tous les registres correspondant aux filtres
registries = api.registries(filter=registry_filters)
```

Filtrez toutes les collections, quel que soit le registre, dont le nom contient la chaîne `yolo` :

```python theme={"system"}
# Filtrer toutes les collections, quel que soit le registre, dont
# le nom contient la chaîne `yolo`
collection_filters = {
    "name": {"$regex": "yolo"}
}

# Renvoie un itérable contenant toutes les collections qui correspondent aux filtres
collections = api.registries().collections(filter=collection_filters)
```

Filtrez toutes les collections, quel que soit le registre, dont le nom contient la chaîne `yolo` et qui portent le tag `cnn` :

```python theme={"system"}
# Filtrer toutes les collections, quel que soit le registre, dont le nom
# contient la chaîne `yolo` et qui portent le tag `cnn`
collection_filters = {
    "name": {"$regex": "yolo"},
    "tag": "cnn"
}

# Renvoie un itérable de toutes les collections correspondant aux filtres
collections = api.registries().collections(filter=collection_filters)
```

Trouver toutes les versions d’artifact qui contiennent la chaîne `model` et qui ont soit le tag `image-classification`, soit l’alias `latest` :

```python theme={"system"}
# Trouver toutes les versions d'artifact qui contiennent la chaîne `model` et
# qui ont soit le tag `image-classification`, soit l'alias `latest`
registry_filters = {
    "name": {"$regex": "model"}
}

# Utiliser l'opérateur logique $or pour filtrer les versions d'artifact
version_filters = {
    "$or": [
        {"tag": "image-classification"},
        {"alias": "production"}
    ]
}

# Renvoie un itérable contenant toutes les versions d'artifact qui correspondent aux filtres
artifacts = api.registries(filter=registry_filters).collections().versions(filter=version_filters)
```

Chaque élément de l’itérable `artifacts` de l’extrait de code précédent est une instance de la classe `Artifact`. Vous pouvez donc accéder aux attributs de chaque artifact, tels que `name`, `collection`, `aliases`, `tags`, `created_at`, etc. :

```python theme={"system"}
for art in artifacts:
    print(f"artifact name: {art.name}")
    print(f"collection artifact belongs to: { art.collection.name}")
    print(f"artifact aliases: {art.aliases}")
    print(f"tags attached to artifact: {art.tags}")
    print(f"artifact created at: {art.created_at}\n")
```

Pour obtenir la liste complète des attributs d'un objet artifact, consultez la [classe Artifact](/fr/products/wandb/ref/python/experiments/artifact) dans la documentation de référence du SDK Python W\&B.

Filtrez toutes les versions d'artifact, quels que soient le registre ou la collection, créées entre le `2024-01-08` et le `2025-03-04` à `13:10 UTC` :

```python theme={"system"}
# Trouver toutes les versions d'artifact créées entre le 2024-01-08 et le 2025-03-04 à 13:10 UTC. 

artifact_filters = {
    "alias": "latest",
    "created_at" : {"$gte": "2024-01-08", "$lte": "2025-03-04 13:10:00"},
}

# Renvoie un itérable contenant toutes les versions d'artifact qui correspondent aux filtres
artifacts = api.registries().collections().versions(filter=artifact_filters)
```

<Note>
  Indiquez la date et l’heure au format `YYYY-MM-DD HH:MM:SS` pour les requêtes portant sur `created_at` et `updated_at`. Si vous souhaitez filtrer uniquement par date, vous pouvez omettre les heures, les minutes et les secondes.
</Note>


## Related topics

- [Aperçu de l’API publique](/fr/products/wandb/ref/python/public-api.md)
