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

> Certaines fonctionnalités de cette page sont en version bêta et masquées derrière un feature flag. Ajoutez `weave-plot` à votre bio sur votre page de profil pour activer toutes les fonctionnalités associées.

# Aperçu des panneaux de requête

<Note>
  Vous cherchez W\&B Weave, la suite d’outils de W\&B pour créer des applications d’IA générative ? Consultez la [documentation de Weave](https://wandb.github.io/weave/?utm_source=wandb_docs\&utm_medium=docs\&utm_campaign=weave-nudge).
</Note>

Utilisez les panneaux de requête pour interroger vos données et les visualiser de manière interactive. Avec un panneau de requête, vous pouvez rassembler dans une seule vue des runs, des artefacts, des tableaux et d’autres objets W\&B spécifiques, puis les explorer sous forme de tableaux ou de graphiques sans quitter votre espace de travail ou votre rapport. Cette page s’adresse aux utilisateurs qui souhaitent composer des requêtes ad hoc sur des données W\&B enregistrées et afficher les résultats dans un espace de travail ou un rapport.

Un panneau de requête combine trois éléments :

* **[Expression](#expressions)** : Les données que vous sélectionnez.
* **[Configuration](#configurations)** : Les paramètres facultatifs du panneau, comme le type de panneau et les options du menu en forme d’engrenage.
* **[Panneau de résultat](#result-panels)** : La façon d’afficher les résultats, par exemple dans un tableau ou un graphique.

Pour voir un ensemble d’exemples interactifs à essayer, consultez ce [rapport d’exemples du panneau de requête](https://wandb.ai/luis_team_test/weave_example_queries/reports/Query-Panel-Examples---Vmlldzo1NzIxOTY2). Pour un guide pas à pas sur la syntaxe des requêtes, consultez le [rapport tutoriel sur les panneaux de requête](https://wandb.ai/luis_team_test/weave_example_queries/reports/Weave-queries---Vmlldzo1NzIxOTY2). Les types et opérations générés sont répertoriés dans l’[aperçu du langage d’expression des requêtes](/fr/models/ref/query-panel).

<Frame>
  <img src="https://mintcdn.com/wb-21fd5541/wYBIlf7cqDpGjWr9/images/weave/pretty_panel.png?fit=max&auto=format&n=wYBIlf7cqDpGjWr9&q=85&s=bbaa3d860550d8f8088bca0062e21d28" alt="Panneau de requête" width="2212" height="1326" data-path="images/weave/pretty_panel.png" />
</Frame>

<div id="create-a-query-panel">
  ## Créer un panneau de requête
</div>

Ajoutez un panneau de requête afin de disposer d’un espace pour écrire des expressions et visualiser les résultats. Vous pouvez en ajouter un à un Workspace de projet ou dans un rapport.

<Tabs>
  <Tab title="Workspace de projet">
    1. Accédez au workspace de votre projet.
    2. Dans l’angle supérieur droit, cliquez sur **Add panel**.
    3. Dans le menu déroulant, sélectionnez **panneau de requête**.
  </Tab>

  <Tab title="Rapport W&B">
    * Saisissez et sélectionnez **/Query panel**.

    <Frame>
      <img src="https://mintcdn.com/wb-21fd5541/wYBIlf7cqDpGjWr9/images/weave/add_weave_panel_report_1.png?fit=max&auto=format&n=wYBIlf7cqDpGjWr9&q=85&s=20f4bae1adc4264297ec79a979cd1be8" alt="Option Query panel" width="473" height="370" data-path="images/weave/add_weave_panel_report_1.png" />
    </Frame>

    Vous pouvez également associer une requête à un ensemble de runs :

    1. Dans votre rapport, saisissez et sélectionnez **/Panel grid**.
    2. Cliquez sur le bouton **Add panel**.
    3. Dans le menu déroulant, sélectionnez **panneau de requête**.
  </Tab>
</Tabs>

<div id="query-components">
  ## Composants de requête
</div>

Les sections suivantes décrivent les trois éléments qui composent un panneau de requête : l'expression qui sélectionne les données, la configuration qui détermine le comportement du panneau et le panneau de résultat qui affiche la sortie.

<div id="expressions">
  ### Expressions
</div>

Utilisez des expressions de requête pour interroger les données stockées dans W\&B, comme les runs, les artefacts, les modèles, les tables, etc.

<div id="example-query-a-table">
  #### Exemple : Interroger un tableau
</div>

Supposons que vous souhaitiez interroger une W\&B Table. Dans votre code d’entraînement, vous journalisez un tableau appelé `"cifar10_sample_table"` :

```python theme={null}
import wandb
with wandb.init() as run:
  run.log({"cifar10_sample_table":[MY-TABLE]})
```

Dans le panneau de requête, vous pouvez effectuer des requêtes sur votre tableau avec :

```python theme={null}
runs.summary["cifar10_sample_table"]
```

<Frame>
  <img src="https://mintcdn.com/wb-21fd5541/wYBIlf7cqDpGjWr9/images/weave/basic_weave_expression.png?fit=max&auto=format&n=wYBIlf7cqDpGjWr9&q=85&s=b4767631afdad8b3e6994bb9e01a21f6" alt="Expression de requête de tableau" width="316" height="56" data-path="images/weave/basic_weave_expression.png" />
</Frame>

Décomposons cela :

* `runs` est une variable automatiquement injectée dans les expressions du panneau de requête lorsque le panneau de requête se trouve dans un workspace. Sa valeur est la liste des runs visibles pour ce workspace. Pour en savoir plus sur les différents attributs disponibles dans un run, voir [Understanding the different attributes](/fr/models/track/public-api-guide/#understanding-the-different-attributes).
* `summary` est une op qui renvoie l'objet Summary d'un run. Les opérations sont *mappées*, ce qui signifie que cette op est appliquée à chaque run de la liste, ce qui donne une liste d'objets Summary.
* `["cifar10_sample_table"]` est une op Pick (indiquée par des crochets) avec une clé `cifar10_sample_table`. Comme les objets Summary se comportent comme des dictionnaires ou des tables de correspondance, cette opération sélectionne ce champ dans chaque objet Summary.

<div id="configurations">
  ### Configurations
</div>

Dans le coin supérieur gauche du panneau, cliquez sur l’icône d’engrenage pour afficher la configuration de la requête. La configuration vous permet de définir le type de panneau et les paramètres du panneau de résultats.

<Frame>
  <img src="https://mintcdn.com/wb-21fd5541/wYBIlf7cqDpGjWr9/images/weave/weave_panel_config.png?fit=max&auto=format&n=wYBIlf7cqDpGjWr9&q=85&s=d515278ecfa57e3c15cf13eec985cc85" alt="Menu de configuration du panneau" width="1464" height="576" data-path="images/weave/weave_panel_config.png" />
</Frame>

<div id="panel-options">
  #### Options du panneau
</div>

Le menu de configuration peut inclure des options qui modifient la manière dont le panneau combine ou charge les résultats de type tableau. Les libellés exacts et leur disponibilité dépendent de votre expression et du type de panneau. Pour voir des configurations concrètes, voir le [rapport d'exemples du panneau de requête](https://wandb.ai/luis_team_test/weave_example_queries/reports/Query-Panel-Examples---Vmlldzo1NzIxOTY2).

**Concat**

Utilisez **Concat** dans la configuration si vous souhaitez que le panneau fusionne des résultats compatibles de type tableau et les traite comme un seul tableau pour l'affichage et les opérations ultérieures. La fusion des lignes au niveau de l'expression (par exemple, `concat` et `join` dans la requête) est distincte de ce paramètre. Pour plus d'informations, voir [Combiner des tableaux dans les expressions](#combine-tables-in-expressions).

**Paginate**

Utilisez **Paginate** lorsqu'un résultat de tableau risque d'être trop volumineux pour être affiché en une seule fois. La pagination charge les lignes par blocs afin que le panneau reste réactif. Associez cette option à des expressions qui renvoient de longues listes de lignes. Pour les approches qui fonctionnent bien avec la pagination, voir le [rapport d'exemples du panneau de requête](https://wandb.ai/luis_team_test/weave_example_queries/reports/Query-Panel-Examples---Vmlldzo1NzIxOTY2).

<div id="result-panels">
  ### Panneaux de résultats
</div>

Le panneau de résultat de la requête affiche le résultat de l’expression de requête à l’aide du panneau de requête sélectionné, configuré pour présenter les données sous une forme interactive. Les images suivantes montrent un tableau et un graphique des mêmes données.

<Frame>
  <img src="https://mintcdn.com/wb-21fd5541/wYBIlf7cqDpGjWr9/images/weave/result_panel_table.png?fit=max&auto=format&n=wYBIlf7cqDpGjWr9&q=85&s=7f56e3cb7d542591e1c8f39b27e05396" alt="Panneau de résultat : tableau" width="1074" height="471" data-path="images/weave/result_panel_table.png" />
</Frame>

<Frame>
  <img src="https://mintcdn.com/wb-21fd5541/wYBIlf7cqDpGjWr9/images/weave/result_panel_plot.png?fit=max&auto=format&n=wYBIlf7cqDpGjWr9&q=85&s=13e619c59eb3100452e2d93b6380f125" alt="Panneau de résultat : graphique" width="1073" height="471" data-path="images/weave/result_panel_plot.png" />
</Frame>

<div id="step-through-run-history">
  ### Parcourir l’historique des exécutions
</div>

Dans les tableaux et graphiques construits à partir de `runs` ou de `runs.history`, l’application peut afficher un contrôle d’**étape** (par exemple un curseur) pour vous permettre de parcourir les étapes enregistrées et d’inspecter les métriques, le texte ou les médias au fil de vos runs. Après avoir modifié l’expression, modifiez la configuration du panneau de requête et définissez **Render As** sur **Stepper**. Le contrôle peut suivre une métrique autre que `_step` si cela correspond mieux à la manière dont vous avez enregistré les données. Pour obtenir des exemples d’expressions, voir le [rapport d’exemples du panneau de requête](https://wandb.ai/luis_team_test/weave_example_queries/reports/Query-Panel-Examples---Vmlldzo1NzIxOTY2).

<div id="basic-operations">
  ## Opérations de base
</div>

Une fois qu’un panneau de requête a affiché les résultats, vous pouvez affiner l’affichage en triant, en filtrant, en appliquant un mapping ou en regroupant les lignes. Voici les opérations courantes que vous pouvez effectuer dans vos panneaux de requête.

<div id="sort">
  ### Trier
</div>

Triez à partir des options de la colonne :

<Frame>
  <img src="https://mintcdn.com/wb-21fd5541/wYBIlf7cqDpGjWr9/images/weave/weave_sort.png?fit=max&auto=format&n=wYBIlf7cqDpGjWr9&q=85&s=aed1594e5adb3fe74dcfbc643e74befd" alt="Options de tri de la colonne" width="1072" height="471" data-path="images/weave/weave_sort.png" />
</Frame>

<div id="filter">
  ### Filtre
</div>

Vous pouvez soit filtrer directement dans la requête, soit utiliser le bouton Filtre dans le coin supérieur gauche du panneau.

<Frame>
  <img src="https://mintcdn.com/wb-21fd5541/wYBIlf7cqDpGjWr9/images/weave/weave_filter_1.png?fit=max&auto=format&n=wYBIlf7cqDpGjWr9&q=85&s=3f48215246da6f0a8eed3c1fb7ede846" alt="Syntaxe du filtre dans la requête" width="1071" height="471" data-path="images/weave/weave_filter_1.png" />
</Frame>

<Frame>
  <img src="https://mintcdn.com/wb-21fd5541/wYBIlf7cqDpGjWr9/images/weave/weave_filter_2.png?fit=max&auto=format&n=wYBIlf7cqDpGjWr9&q=85&s=fba3799c7fc494ea3699a5a079fa3141" alt="Bouton Filtre" width="1071" height="470" data-path="images/weave/weave_filter_2.png" />
</Frame>

<div id="map">
  ### Map
</div>

Les opérations Map parcourent des listes et appliquent une fonction à chaque élément des données. Vous pouvez le faire directement avec une requête de panneau, ou en insérant une nouvelle colonne depuis les options de colonne.

<Frame>
  <img src="https://mintcdn.com/wb-21fd5541/wYBIlf7cqDpGjWr9/images/weave/weave_map.png?fit=max&auto=format&n=wYBIlf7cqDpGjWr9&q=85&s=1d2573b53e6a3de93a91a768c655675a" alt="Requête de l'opération Map" width="1073" height="471" data-path="images/weave/weave_map.png" />
</Frame>

<Frame>
  <img src="https://mintcdn.com/wb-21fd5541/wYBIlf7cqDpGjWr9/images/weave/weave_map.gif?s=d46c1326a948f3298912151f0f9d143a" alt="Insertion d'une colonne Map" width="600" height="269" data-path="images/weave/weave_map.gif" />
</Frame>

<div id="group-by">
  ### Regrouper
</div>

Vous pouvez regrouper à l’aide d’une requête ou depuis les options de colonne.

<Frame>
  <img src="https://mintcdn.com/wb-21fd5541/wYBIlf7cqDpGjWr9/images/weave/weave_groupby.png?fit=max&auto=format&n=wYBIlf7cqDpGjWr9&q=85&s=e369ebec8307c504551d33c0c3382781" alt="Regroupement par requête" width="1805" height="459" data-path="images/weave/weave_groupby.png" />
</Frame>

<Frame>
  <img src="https://mintcdn.com/wb-21fd5541/wYBIlf7cqDpGjWr9/images/weave/weave_groupby.gif?s=a587f3e99d74436b009974b461de0edf" alt="Regroupement via les options de colonne" width="600" height="234" data-path="images/weave/weave_groupby.gif" />
</Frame>

<div id="combine-tables-in-expressions">
  ### Combiner des tableaux dans les expressions
</div>

Utilisez `concat`, `join` et les opérations associées dans votre expression lorsque vous devez empiler ou fusionner des listes de lignes issues de tableaux. Voir [Join](#join) pour un exemple complet. Les éléments **Concat** et **Paginate** dans [Options du panneau](#panel-options) sont des contrôles distincts qui déterminent la manière dont l’interface utilisateur fusionne et charge les résultats des tableaux.

<div id="join">
  ### Jointure
</div>

Vous pouvez également effectuer des jointures directement dans la requête. Considérez l’expression de requête suivante :

```python theme={null}
project("luis_team_test", "weave_example_queries").runs.summary["short_table_0"].table.rows.concat.join(\
project("luis_team_test", "weave_example_queries").runs.summary["short_table_1"].table.rows.concat,\
(row) => row["Label"],(row) => row["Label"], "Table1", "Table2",\
"false", "false")
```

<Frame>
  <img src="https://mintcdn.com/wb-21fd5541/wYBIlf7cqDpGjWr9/images/weave/weave_join.png?fit=max&auto=format&n=wYBIlf7cqDpGjWr9&q=85&s=f8316f331f0684ae8eecf8a62c5d318f" alt="Opération de jointure de tableaux" width="1804" height="458" data-path="images/weave/weave_join.png" />
</Frame>

Le tableau de gauche est généré à partir de :

```python theme={null}
project("luis_team_test", "weave_example_queries").\
runs.summary["short_table_0"].table.rows.concat.join
```

Le tableau de droite est généré à partir de :

```python theme={null}
project("luis_team_test", "weave_example_queries").\
runs.summary["short_table_1"].table.rows.concat
```

Où :

* `(row) => row["Label"]` sont les sélecteurs de chaque tableau et déterminent la colonne sur laquelle effectuer la jointure.
* `"Table1"` et `"Table2"` sont les noms attribués à chaque tableau une fois la jointure effectuée.
* `true` et `false` correspondent aux paramètres de jointure interne/externe à gauche et à droite.

<div id="runs-object">
  ## Objet `runs`
</div>

Utilisez les panneaux de requête pour accéder à l’objet `runs`. Les objets run stockent les enregistrements de vos expériences. Pour plus de détails, voir [Accéder à l’objet runs](https://wandb.ai/luis_team_test/weave_example_queries/reports/Weave-queries---Vmlldzo1NzIxOTY2#3.-accessing-runs-object). Pour un aperçu rapide, voici ce qui est disponible dans l’objet `runs` :

* `summary` : un dictionnaire d’informations qui résume les résultats du run. Il peut s’agir de scalaires comme l’accuracy et la perte, ou de fichiers volumineux. Par défaut, `wandb.Run.log()` définit `summary` sur la valeur finale d’une série temporelle enregistrée. Vous pouvez aussi définir directement le contenu de `summary`. Considérez `summary` comme les sorties du run.
* `history` : une liste de dictionnaires destinée à stocker les valeurs qui changent pendant l’entraînement du modèle, comme la perte. La commande `wandb.Run.log()` ajoute des éléments à cet objet.
* `config` : un dictionnaire contenant les informations de configuration du run, comme les hyperparamètres d’un run d’entraînement ou les méthodes de prétraitement d’un run qui crée un artifact de jeu de données. Considérez-les comme les « entrées » du run.

<Frame>
  <img src="https://mintcdn.com/wb-21fd5541/wYBIlf7cqDpGjWr9/images/weave/weave_runs_object.png?fit=max&auto=format&n=wYBIlf7cqDpGjWr9&q=85&s=fed1f0c4af8b940ba620b6eee0606112" alt="Structure de l’objet Runs" width="1797" height="427" data-path="images/weave/weave_runs_object.png" />
</Frame>

<div id="access-artifacts">
  ## Accéder aux artefacts
</div>

Les artefacts sont un concept central de W\&B. Ce sont des collections de fichiers et de répertoires, nommées et versionnées. Utilisez les artefacts pour suivre les poids de modèle, les Datasets et tout autre fichier ou répertoire. W\&B stocke les artefacts, et vous pouvez les télécharger ou les utiliser dans d’autres runs. Pour plus de détails et des exemples, voir [Accéder aux artefacts](https://wandb.ai/luis_team_test/weave_example_queries/reports/Weave-queries---Vmlldzo1NzIxOTY2#4.-accessing-artifacts). En général, vous accédez aux artefacts à partir de l’objet `project` :

* `project.artifactVersion()` : Renvoie la version spécifique de l’artefact pour un nom et une version donnés dans un projet.
* `project.artifact("")` : Renvoie l’artefact correspondant à un nom donné dans un projet. Vous pouvez ensuite utiliser `.versions` pour obtenir la liste de toutes les versions de cet artefact.
* `project.artifactType()` : Renvoie le `artifactType` correspondant à un nom donné dans un projet. Vous pouvez ensuite utiliser `.artifacts` pour obtenir la liste de tous les artefacts de ce type.
* `project.artifactTypes` : Renvoie la liste de tous les types d’artefacts du projet.

<Frame>
  <img src="https://mintcdn.com/wb-21fd5541/wYBIlf7cqDpGjWr9/images/weave/weave_artifacts.png?fit=max&auto=format&n=wYBIlf7cqDpGjWr9&q=85&s=bca00ab31e6016af6d05a6661223565f" alt="Méthodes d’accès aux artefacts" width="1798" height="662" data-path="images/weave/weave_artifacts.png" />
</Frame>
