Passer au contenu principal
Il existe des automatisations à la fois pour les Projects et les registries. L’emplacement où vous créez une automatisation, les événements que vous pouvez utiliser et le fonctionnement de la portée varient. Pour connaître les types d’événements par portée, voir événements et portée des automatisations. Les Automatisations W&B suivent un schéma simple : lorsqu’un événement se produit et que des conditions facultatives sont remplies, une action s’exécute automatiquement. Par exemple :
  • Lorsqu’un run échoue (événement), notifier un canal Slack (action).
  • Lorsque l’alias production est ajouté à un artefact (événement), appeler un webhook pour déclencher un déploiement (action).
Les événements et les conditions disponibles diffèrent selon que les automatisations s’appliquent à un projet ou à un Registry. Voir événements et portée des automatisations. Exemple : Le run échoue (événement) et un filtre facultatif sur le nom du run (condition), puis notification Slack (action). Ou : alias production ajouté (événement), puis webhook (action).

Où créer des automatisations

  • Dans un projet : ouvrez le projet, puis cliquez sur l’onglet Automations dans la barre latérale du projet.
  • Dans un registre : ouvrez le registre, puis cliquez sur l’onglet Automations.

Cas d’utilisation

  • Surveillance des runs et alertes : notifier l’équipe lorsqu’un run échoue ou lorsqu’une métrique franchit un seuil (par exemple, la perte passe à NaN ou la précision baisse).
  • CI/CD du Registry : lorsqu’une nouvelle version de modèle est liée ou qu’un alias (tel que staging ou production) est ajouté, déclencher un webhook pour exécuter des tests ou déployer.
  • Flux de travail des artefacts de projet : lorsqu’une nouvelle version d’artefact est créée ou qu’un alias est ajouté dans un projet, exécuter un job en aval ou publier sur Slack.
Pour obtenir tous les détails sur les événements et les portées, voir événements et portée des automatisations.

Actions d’automatisation

Lorsqu’un événement déclenche une automatisation, celle-ci peut exécuter l’une des actions suivantes :
  • Notification Slack : Envoyez un message sur un canal Slack avec des détails sur l’événement ayant déclenché l’action. Le message résume l’événement, avec un lien pour afficher plus de détails dans W&B.
  • Webhook : Appelez une URL de webhook avec une charge utile JSON contenant des informations sur l’événement ayant déclenché l’action. Cela permet une intégration avec des systèmes externes comme des pipelines CI/CD, des services de déploiement de modèles ou des flux de travail personnalisés.
Pour plus de détails sur l’implémentation, voir Créer une automatisation Slack et Créer une automatisation webhook.

Fonctionnement des automatisations

Pour créer une automatisation, vous devez :
  1. Si nécessaire, configurez des secrets pour les chaînes sensibles dont l’automatisation a besoin, comme des jetons d’accès, des mots de passe ou des détails de configuration sensibles. Les secrets sont définis dans Team Settings. Ils sont le plus souvent utilisés dans les automatisations webhook pour transmettre en toute sécurité des identifiants ou des jetons au service externe du webhook, sans les exposer en clair ni les coder en dur dans la charge utile du webhook.
  2. Configurez des intégrations webhook ou Slack au niveau de l’équipe afin d’autoriser W&B à publier dans Slack ou à exécuter le webhook en votre nom. Une même action d’automatisation (webhook ou notification Slack) peut être utilisée par plusieurs automatisations. Ces actions sont définies dans Team Settings.
  3. Dans le projet ou le registre, créez l’automatisation :
    1. Définissez l’événement à surveiller, par exemple l’ajout d’une nouvelle version d’artefact.
    2. Définissez l’action à effectuer lorsque l’événement se produit (publier dans un canal Slack ou exécuter un webhook). Pour un webhook, indiquez un secret à utiliser pour le jeton d’accès et/ou un secret à envoyer avec la charge utile, si nécessaire.

Recommandations

  • Commencez petit : commencez par une ou deux automatisations pour des événements à forte valeur (par exemple, des échecs de runs ou des modifications de l’alias de production). Vérifiez qu’elles fonctionnent comme prévu avant d’en ajouter davantage.
  • Testez avant la production : créez d’abord des automatisations dans un projet de test ou avec un webhook ou un canal Slack de test. Déclenchez manuellement l’événement et confirmez que l’action s’exécute et que la charge utile ou le message est correct.
  • Évitez la fatigue liée aux alertes : utilisez des filtres sur les runs, des seuils de métriques ou des motifs d’alias pour limiter la fréquence de déclenchement d’une automatisation. Acheminez différents niveaux de gravité vers différents canaux si nécessaire.

Limites

Les automatisations des métriques de run et les automatisations de changement du z-score des métriques de run sont actuellement prises en charge uniquement dans W&B Multi-tenant Cloud.

Étapes suivantes