> ## Documentation Index
> Fetch the complete documentation index at: https://wb-21fd5541-css-tab-borders.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> Envoyez des alertes depuis votre code Python vers Slack ou par e-mail

# Envoyer une alerte

export const ColabLink = ({url}) => <a href={url} target="_blank" rel="noopener noreferrer" className="colab-link">
    <svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor" xmlns="http://www.w3.org/2000/svg">
      <path d="M14.25.18l.9.2.73.26.59.3.45.32.34.34.25.34.16.33.1.3.04.26.02.2-.01.13V8.5l-.05.63-.13.55-.21.46-.26.38-.3.31-.33.25-.35.19-.35.14-.33.1-.3.07-.26.04-.21.02H8.77l-.69.05-.59.14-.5.22-.41.27-.33.32-.27.35-.2.36-.15.37-.1.35-.07.32-.04.27-.02.21v3.06H3.17l-.21-.03-.28-.07-.32-.12-.35-.18-.36-.26-.36-.36-.35-.46-.32-.59-.28-.73-.21-.88-.14-1.05-.05-1.23.06-1.22.16-1.04.24-.87.32-.71.36-.57.4-.44.42-.33.42-.24.4-.16.36-.1.32-.05.24-.01h.16l.06.01h8.16v-.83H6.18l-.01-2.75-.02-.37.05-.34.11-.31.17-.28.25-.26.31-.23.38-.2.44-.18.51-.15.58-.12.64-.1.71-.06.77-.04.84-.02 1.27.05zm-6.3 1.98l-.23.33-.08.41.08.41.23.34.33.22.41.09.41-.09.33-.22.23-.34.08-.41-.08-.41-.23-.33-.33-.22-.41-.09-.41.09zm13.09 3.95l.28.06.32.12.35.18.36.27.36.35.35.47.32.59.28.73.21.88.14 1.04.05 1.23-.06 1.23-.16 1.04-.24.86-.32.71-.36.57-.4.45-.42.33-.42.24-.4.16-.36.09-.32.05-.24.02-.16-.01h-8.22v.82h5.84l.01 2.76.02.36-.05.34-.11.31-.17.29-.25.25-.31.24-.38.2-.44.17-.51.15-.58.13-.64.09-.71.07-.77.04-.84.01-1.27-.04-1.07-.14-.9-.2-.73-.25-.59-.3-.45-.33-.34-.34-.25-.34-.16-.33-.1-.3-.04-.25-.02-.2.01-.13v-5.34l.05-.64.13-.54.21-.46.26-.38.3-.32.33-.24.35-.2.35-.14.33-.1.3-.06.26-.04.21-.02.13-.01h5.84l.69-.05.59-.14.5-.21.41-.28.33-.32.27-.35.2-.36.15-.36.1-.35.07-.32.04-.28.02-.21V6.07h2.09l.14.01.21.03zm-6.47 14.25l-.23.33-.08.41.08.41.23.33.33.23.41.08.41-.08.33-.23.23-.33.08-.41-.08-.41-.23-.33-.33-.23-.41-.08-.41.08z" />
    </svg>
    Essayer sur Colab
  </a>;

<ColabLink url="https://wandb.me/alerts-colab" />

Créez des alertes avec Slack ou par e-mail si votre run plante, ou à l’aide d’un déclencheur personnalisé. Par exemple, vous pouvez créer une alerte si le gradient de votre boucle d’entraînement commence à exploser (renvoie NaN) ou lorsqu’une étape de votre pipeline ML se termine. Les alertes s’appliquent à tous les projets dans lesquels vous initialisez des runs, y compris les projets personnels et les projets d’équipe.

Vous pouvez ensuite voir les messages W\&B Alerts dans Slack (ou dans votre messagerie) :

<Frame>
  <img src="https://mintcdn.com/wb-21fd5541-css-tab-borders/awLM9FlNpayF4ZqW/images/track/send_alerts_slack.png?fit=max&auto=format&n=awLM9FlNpayF4ZqW&q=85&s=bbad74c648ab55adf3a81e01af6c57e4" alt="Configuration des alertes Slack" width="567" height="331" data-path="images/track/send_alerts_slack.png" />
</Frame>

<Note>
  Pour utiliser W\&B Alerts, vous devez ajouter `run.alert()` à votre code. Sans modifier votre code, [Automations](/fr/models/automations/) offrent un autre moyen de notifier Slack en fonction d’un événement dans W\&B, par exemple lorsqu’une version d’[artifact](/fr/models/artifacts/) est créée ou lorsqu’une [métrique de run](/fr/models/runs/) atteint un seuil ou varie au-delà d’un seuil.

  Par exemple, une automation peut notifier un canal Slack lorsqu’une nouvelle version est créée, exécuter un webhook de test automatisé lorsque l’alias `production` est ajouté à un artifact, ou démarrer un job de validation uniquement lorsque la `loss` d’un run se situe dans des limites acceptables.

  Consultez l’[aperçu d’Automations](/fr/models/automations/) ou [créez une automation](/fr/models/automations/create-automations/).
</Note>

<Note>
  Le guide suivant s’applique uniquement aux alertes du Cloud mutualisé.

  Si vous utilisez [W\&B Server](/fr/platform/hosting/) dans votre Cloud privé ou sur W\&B Cloud dédié, reportez-vous à [Configurer les alertes Slack dans W\&B Server](/fr/platform/hosting/monitoring-usage/slack-alerts) pour configurer les alertes Slack.
</Note>

<div id="automated-run-lifecycle-alerts">
  ## Alertes automatisées du cycle de vie des runs
</div>

W\&B peut vous notifier lorsqu’un run se termine ou a planté, sans aucune modification du code. Dans vos [Paramètres utilisateur](https://wandb.ai/settings), faites défiler jusqu’à la section **alertes** et activez :

* **Run finished** pour être notifié lorsqu’un run se termine avec succès.
* **Run crashed** pour être notifié lorsqu’un run s’arrête sans appeler [`run.finish()`](/fr/models/ref/python/experiments/run#finish).

Ces bascules sont propres à chaque utilisateur. Les alertes **Run finished** ne se déclenchent pas pour les runs dans les notebooks Jupyter. Dans les notebooks, utilisez `run.alert()` pour les notifications de fin d’exécution.

Les alertes sont envoyées par e-mail ou via Slack, configurés dans le même panneau Paramètres utilisateur. La configuration de l’envoi est partagée avec les alertes scriptables, décrites dans les sections suivantes, qui vous permettent de déclencher des alertes selon des conditions personnalisées, comme un seuil de métrique ou une valeur de perte NaN.

Pour configurer des alertes scriptables avec `run.alert()`, suivez ces étapes, détaillées dans les sections suivantes :

1. Activez alertes dans vos [Paramètres utilisateur](https://wandb.ai/settings) W\&B.
2. Ajoutez `run.alert()` à votre code.
3. Testez la configuration.

<div id="1-turn-on-alerts-in-your-wb-user-settings">
  ### 1. Activez les alertes dans les Paramètres utilisateur de W\&B
</div>

Dans vos [Paramètres utilisateur](https://wandb.ai/settings) :

* Faites défiler la page jusqu'à la section **Alertes**
* Activez **Scriptable run alerts** pour recevoir des alertes via `run.alert()`
* Utilisez **Connect Slack** pour choisir un canal Slack où envoyer les alertes. Nous recommandons le canal **Slackbot**, car il permet de garder les alertes privées.
* Les **e-mails** seront envoyés à l'adresse e-mail que vous avez utilisée lors de votre inscription à W\&B. Nous vous recommandons de configurer un filtre dans votre messagerie afin que toutes ces alertes soient dirigées vers un dossier et n'encombrent pas votre boîte de réception.

Vous n'aurez à le faire qu'une seule fois, lors de la configuration initiale de W\&B Alerts, ou si vous souhaitez modifier la façon dont vous recevez les alertes.

<Frame>
  <img src="https://mintcdn.com/wb-21fd5541-css-tab-borders/awLM9FlNpayF4ZqW/images/track/demo_connect_slack.png?fit=max&auto=format&n=awLM9FlNpayF4ZqW&q=85&s=0c02ba7403b5d10879887277a8cb1ad7" alt="Paramètres des alertes dans les Paramètres utilisateur de W&B" width="1420" height="900" data-path="images/track/demo_connect_slack.png" />
</Frame>

<div id="2-add-runalert-to-your-code">
  ### 2. Ajoutez `run.alert()` à votre code
</div>

Ajoutez `run.alert()` à votre code (dans un Notebook ou un script Python) à l’endroit où vous voulez le déclencher

```python theme={null}
import wandb

with wandb.init() as run:
    run.alert(title="High Loss", text="Loss is increasing rapidly")
```

<div id="3-test-the-configuration">
  ### 3. Tester la configuration
</div>

Consultez Slack ou vos e-mails pour voir si vous avez reçu le message d’alerte. Si vous n’avez rien reçu, assurez-vous que les e-mails ou Slack sont activés pour les **Scriptable Alerts** dans vos [Paramètres utilisateur](https://wandb.ai/settings)

<div id="example">
  ## Exemple
</div>

Cette alerte simple envoie un avertissement lorsque la métrique accuracy passe sous un seuil. Dans cet exemple, elle n’envoie des alertes qu’à 5 minutes d’intervalle minimum.

```python theme={null}
import wandb
from wandb import AlertLevel

with wandb.init() as run:

    if acc < threshold:
        run.alert(
            title="Low accuracy",
            text=f"Accuracy {acc} is below the acceptable threshold {threshold}",
            level=AlertLevel.WARN,
            wait_duration=300,
        )
```

<div id="tag-or-mention-users">
  ## Identifier ou mentionner des utilisateurs
</div>

Utilisez le symbole `@`, suivi de l’ID utilisateur Slack, pour vous mentionner vous-même ou mentionner vos collègues dans le titre ou le texte de l’alerte. Vous trouverez l’ID utilisateur Slack sur la page de profil Slack de l’utilisateur concerné.

```python theme={null}
run.alert(title="Loss is NaN", text=f"Hey <@U1234ABCD> loss has gone to NaN")
```

<div id="configure-team-alerts">
  ## Configurer les alertes d’équipe
</div>

Les administrateurs d’équipe peuvent configurer des alertes pour l’équipe sur la page Team settings : `wandb.ai/teams/your-team`.

Les alertes d’équipe s’appliquent à tous les membres de votre équipe. W\&B recommande d’utiliser le canal **Slackbot**, car il permet de garder les alertes privées.

<div id="change-slack-channel-to-send-alerts-to">
  ## Modifier le canal Slack auquel envoyer les alertes
</div>

Pour modifier le canal auquel les alertes sont envoyées, cliquez sur **Disconnect Slack**, puis reconnectez Slack. Après la reconnexion, choisissez un autre canal Slack.
