Passer au contenu principal
Cette page explique comment démarrer un agent de balayage sur une ou plusieurs machines afin que W&B puisse exécuter votre recherche d’hyperparamètres. Les agents de balayage utilisent la configuration de balayage que vous définissez lorsque vous initialisez un balayage pour explorer différentes combinaisons d’hyperparamètres. W&B crée une nouvelle exécution pour chaque combinaison d’hyperparamètres lancée par l’agent de balayage. Voir Gérer les balayages pour savoir comment mettre en pause, reprendre, arrêter ou annuler un agent de balayage actif. Avant de continuer : Ces exemples montrent comment démarrer un agent de balayage avec la CLI W&B ou depuis Python. Vous avez besoin de l’ID du balayage que W&B renvoie lorsque vous initialisez le balayage. Vous pouvez utiliser l’ID court du balayage seul (par exemple, dtzl1o7u) ou inclure l’entité et le projet sous forme de chemin :
Où :
  • entity : votre nom d’utilisateur W&B ou le nom de votre équipe.
  • project : le nom du projet dans lequel vous voulez que W&B stocke les résultats du run. Si vous ne spécifiez pas de projet, W&B place le run dans un projet appelé “Uncategorized”.
  • sweep_ID : l’ID unique pseudo-aléatoire généré par W&B.
Utilisez la commande wandb agent pour démarrer un balayage. Fournissez l’ID du balayage renvoyé par W&B lorsque vous initialisez le balayage.Remplacez [SWEEP-ID] par votre ID du balayage dans la commande suivante :
Pour un arrêt propre lorsque vous interrompez l’agent (par exemple avec Ctrl+C), utilisez wandb agent --forward-signals [SWEEP-ID] afin que le run en cours reçoive le signal et puisse s’arrêter correctement. Voir Signal handling and sweep runs pour plus de détails.

Limiter le nombre de runs tentés par un agent de balayage

Par défaut, les recherches aléatoires et bayésiennes s’exécutent indéfiniment. Définissez donc un plafond pour le nombre de runs qu’un agent tente. Spécifiez le nombre de runs qu’un agent de balayage doit essayer afin de limiter son travail. Les extraits de code suivants montrent comment définir un nombre maximal de runs avec la CLI et dans un notebook Jupyter ou un script Python.
Les recherches aléatoires et bayésiennes s’exécutent indéfiniment. Si vous ne définissez pas de nombre de runs, vous devez arrêter le processus depuis la ligne de commande, dans votre script Python ou depuis l’interface utilisateur Sweeps.
Commencez par initialiser votre balayage avec la commande wandb sweep. Pour plus d’informations, voir Initialize sweeps.
Ensuite, passez une valeur entière à l’indicateur count pour définir le nombre maximal de runs à essayer.