Alerters
Sending automated alerts to chat services.
Last updated
Was this helpful?
Sending automated alerts to chat services.
Last updated
Was this helpful?
Alerters allow you to send messages to chat services (like Slack, Discord, Mattermost, etc.) from within your pipelines. This is useful to immediately get notified when failures happen, for general monitoring/reporting, and also for building human-in-the-loop ML.
Currently, the and are the available alerter integrations. However, it is straightforward to extend ZenML and .
slack
slack
Interacts with a Slack channel
discord
discord
Interacts with a Discord channel
custom
Extend the alerter abstraction and provide your own implementation
Each alerter integration comes with specific standard steps that you can use out of the box.
However, you first need to register an alerter component in your terminal:
Then you can add it to your stack using
Afterward, you can import the alerter standard steps provided by the respective integration and directly use them in your pipelines.
All alerters provide an ask()
method and corresponding ask steps that enable human-in-the-loop workflows. These are essential for:
Getting approval before deploying models to production
Confirming critical pipeline decisions
Manual intervention points in automated workflows
Ask steps (like discord_alerter_ask_step
and slack_alerter_ask_step
):
Post a message to your chat service with your question
Wait for user response containing specific approval or disapproval keywords
Return a boolean - True
if approved, False
if disapproved or timeout
By default, alerters recognize these response options:
Approval: approve
, LGTM
, ok
, yes
Disapproval: decline
, disapprove
, no
, reject
You can customize the approval and disapproval keywords using alerter parameters:
Return Type: Ask steps return a boolean value - ensure your pipeline logic handles this correctly
Keywords: Response keywords are case-sensitive (except Slack, which converts to lowercase)
Timeout: If no valid response is received within the timeout period, the step returns False
Permissions: Ensure your bot has permissions to read messages in the target channel