> ## 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ésolvez les problèmes courants liés aux sweeps, notamment CommError, CUDA out of memory et les échecs de wandb agent.

# Dépannage des Sweeps

Cette page vous aide à diagnostiquer et à résoudre les messages d’erreur courants que vous pouvez rencontrer lors de l’exécution de W\&B Sweeps. Les sections suivantes décrivent chaque erreur, en expliquent la cause et indiquent comment la corriger.

<h2 id="commerror-run-does-not-exist-and-error-error-uploading">
  `CommError, Run does not exist` et `ERROR Error uploading`
</h2>

Si W\&B renvoie ces deux messages d’erreur, il est possible que l’ID de votre run W\&B soit défini. Par exemple, vous avez peut-être défini un extrait de code semblable à celui-ci quelque part dans vos notebooks Jupyter ou votre script Python :

```python theme={"system"}
wandb.init(id="some-string")
```

Vous ne pouvez pas définir d'ID de run pour les sweeps, car W\&B génère automatiquement des ID uniques et aléatoires pour les runs créés par les sweeps.

Les ID de run W\&B doivent être uniques au sein d'un projet.

Pour définir un nom personnalisé qui s'affiche dans les tableaux et les graphiques, transmettez un nom au paramètre `name` lors de l'initialisation de W\&B. Par exemple :

```python theme={"system"}
wandb.init(name="a helpful readable run name")
```

Une fois l’argument `id` supprimé de `wandb.init()`, le sweep peut attribuer lui-même des ID de run uniques, et les erreurs de téléversement disparaissent.

<h2 id="cuda-out-of-memory">
  `CUDA out of memory`
</h2>

Si ce message d’erreur s’affiche, refactorisez votre code afin d’exécuter chaque essai dans un processus distinct. Lorsque chaque essai s’exécute dans son propre processus, W\&B libère la mémoire GPU entre les runs.

Pour refactoriser votre code, procédez comme suit :

1. Réécrivez votre code sous la forme d’un script Python nommé `train.py`. Ajoutez le nom du script d’entraînement (`train.py`) à votre fichier YAML de configuration de sweep (`config.yaml` dans cet exemple) :

   ```yaml theme={"system"}
   program: train.py
   method: bayes
   metric:
     name: validation_loss
     goal: maximize
   parameters:
     learning_rate:
       min: 0.0001
       max: 0.1
     optimizer:
       values: ["adam", "sgd"]
   ```

2. Ajoutez le code suivant à votre script Python `train.py` :

   ```python theme={"system"}
   if __name__ == "__main__":
       train()
   ```

3. Depuis la CLI, initialisez un sweep avec `wandb sweep` :

   ```bash theme={"system"}
   wandb sweep config.yaml
   ```

4. Notez l’ID de sweep renvoyé par W\&B. Lancez le job de sweep avec [`wandb agent`](/fr/products/wandb/ref/cli/wandb-agent) depuis la CLI plutôt qu’avec le SDK Python ([`wandb.agent()`](/fr/products/wandb/ref/python/functions/agent)). Dans l’extrait de code suivant, remplacez `[SWEEP-ID]` par l’ID de sweep renvoyé par W\&B à l’étape précédente :

   ```bash theme={"system"}
   wandb agent [SWEEP-ID]
   ```

Une fois votre code d’entraînement exécuté sous forme de script par l’agent CLI, chaque essai tourne dans son propre processus et W\&B libère la mémoire GPU entre les runs.

<h2 id="anaconda-400-error">
  `anaconda 400 error`
</h2>

L'erreur suivante se produit généralement lorsque vous ne journalisez pas la métrique que vous cherchez à optimiser :

```text theme={"system"}
wandb: ERROR Error while calling W&B API: anaconda 400 error: 
{"code": 400, "message": "TypeError: bad operand type for unary -: 'NoneType'"}
```

Dans votre fichier YAML ou votre dictionnaire imbriqué, vous indiquez une clé nommée `metric` pour désigner la métrique à optimiser. Veillez à journaliser cette métrique avec `wandb.Run.log()`. Veillez également à utiliser, dans votre script Python ou votre notebook Jupyter, exactement le même nom de métrique que celui que le sweep doit optimiser. Pour plus d’informations sur les fichiers de configuration, consultez [Définir la configuration de sweep](/fr/products/wandb/sweeps/define-sweep-configuration).
