Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
Vertex AI Pipelines può inviarti una notifica in caso di esecuzione riuscita o non riuscita di una pipeline. Quando la pipeline termina, Google Cloud invia un'email di notifica dello stato finale agli indirizzi email specificati.
Questa guida mostra come configurare le notifiche via email da una pipeline
utilizzando il componente Notifica via email
nell'SDK Google Cloud .
Prima di iniziare
Prima di creare una pipeline che invia notifiche, utilizza le seguenti istruzioni per configurare il progetto Google Cloud e l'ambiente di sviluppo.
L'esempio seguente mostra come configurare le notifiche via email definendo un'attività di notifica via email (notify_email_task) e aggiungendola al gestore di uscita della pipeline (dsl.ExitHandler). Questa attività di notifica richiama l'operatore VertexNotificationEmailOp nel componente di notifica via email quando la pipeline esce.
fromkfpimportdslfromkfpimportcompilerfromgoogle_cloud_pipeline_components.v1.vertex_notification_emailimportVertexNotificationEmailOp@dsl.pipeline(name='PIPELINE_NAME',pipeline_root=PIPELINE_ROOT_PATH,)defTASK_NAME():notify_email_task=VertexNotificationEmailOp(recipients=RECIPIENTS_LIST)withdsl.ExitHandler(notify_email_task):# Add your pipeline tasks here.compiler.Compiler().compile(pipeline_func=notification_email_pipeline,package_path='notification_email_pipeline.yaml')
Sostituisci quanto segue:
PIPELINE_NAME: il nome della pipeline.
PIPELINE_ROOT_PATH: specifica un URI Cloud Storage a cui può accedere l'account di servizio delle pipeline. Gli artefatti delle esecuzioni della pipeline sono archiviati nella radice della pipeline.
La radice della pipeline può essere impostata come argomento dell'annotazione @kfp.dsl.pipeline
nella funzione della pipeline oppure può essere impostata quando chiami
create_run_from_job_spec per creare un'esecuzione della pipeline.
TASK_NAME: il nome dell'attività della pipeline per cui stai configurando le notifiche via email.
RECIPIENTS_LIST: un elenco separato da virgole di massimo tre indirizzi email a cui
inviare l'email di notifica.
Aggiungi le attività della pipeline nel corpo della funzione del gestore di uscita dsl.ExitHandler. Se racchiudi le attività nella funzione di gestione dell'uscita in questo modo, specifichi che il componente email di notifica deve segnalare lo stato di queste attività quando la pipeline esce. Ad esempio, se un'attività all'interno dei contenuti del gestore dell'uscita non va a buon fine, la notifica segnala lo stato come non riuscito.
Esempio di email di notifica
Se configuri le notifiche via email per una pipeline utilizzando il esempio di codice in Invia una notifica da una pipeline, Vertex AI invia una notifica via email simile alla seguente quando la pipeline esce:
Oggetto: Attività "TASK_NAME" del job Vertex Pipelines "PIPELINE_NAME"
Da: Notifiche Google <notify-noreply@google.com>
Gentile cliente Vertex AI,
L'attività "TASK_NAME" del job Vertex AI Pipelines "PIPELINE_NAME" è terminata con lo stato seguente: {status}.
Ulteriori dettagli:
- Progetto: {project}
- Nome pipeline: PIPELINE_NAME
- ID job pipeline: {pipeline_job_id}
- Ora di inizio: {start_time}
Per visualizzare questo job pipeline in Cloud Console, utilizza il seguente link: {console_link}
Cordiali saluti,
Il Google Cloud team AI
In questo esempio:
{status} rappresenta lo stato finale dell'attività, che può essere SUCCEEDED, FAILED o CANCELLED.
{project} è il nome del progetto.
{pipeline_job_id} è l'ID univoco del job della pipeline.
{start_time} rappresenta l'ora di inizio della pipeline.
{console_link} è un link ipertestuale al job della pipeline nella console Google Cloud .
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Difficile da capire","hardToUnderstand","thumb-down"],["Informazioni o codice di esempio errati","incorrectInformationOrSampleCode","thumb-down"],["Mancano le informazioni o gli esempi di cui ho bisogno","missingTheInformationSamplesINeed","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 2025-09-04 UTC."],[],[],null,["# Configure email notifications\n\nVertex AI Pipelines can notify you of the success or failure of a pipeline run. When the pipeline exits, Google Cloud sends a final status notification email to the email addresses that you specify.\n\nThis guide shows how to configure email notifications from a pipeline\nby using the [Email notification\ncomponent](/vertex-ai/docs/pipelines/email-notification-component)\nin the Google Cloud SDK.\n| **Note:** Google retains the email addresses that you send notifications to for up to 14 days for debugging purposes and 30 days for analytics purposes.\n\nBefore you begin\n----------------\n\nBefore you build a pipeline that sends notifications, use the following instructions to set\nup your Google Cloud project and development environment.\n\n1. To get your Google Cloud project ready to run ML pipelines, follow the\n instructions in the guide to [configuring your\n Google Cloud project](/vertex-ai/docs/pipelines/configure-project).\n\n2. Install v2 or later of the Kubeflow Pipelines SDK.\n\n pip install --upgrade \"kfp\u003e=2,\u003c3\"\n\n| **Note:** To upgrade to the latest version of the Kubeflow Pipelines SDK, run the following command: \n| `pip install kfp --upgrade` \n| If an updated version is available, running this command uninstalls KFP and installs the latest version.\\\\\n\n1. To use Vertex AI Python client in your pipelines, [install the\n Vertex AI client libraries v1.7 or later](https://github.com/googleapis/python-aiplatform).\n\n2. To use Vertex AI services in your pipelines, [install the\n Google Cloud Pipeline Components](https://github.com/kubeflow/pipelines/tree/master/components/google-cloud#installation).\n\nSend a notification from a pipeline\n-----------------------------------\n\nThe following example shows how to configure email notifications by defining an email notification task (`notify_email_task`) and adding it to the pipeline's exit handler (`dsl.ExitHandler`). This notification task invokes the `VertexNotificationEmailOp` operator in the email notification component when the pipeline exits. \n\n from kfp import dsl\n from kfp import compiler\n from google_cloud_pipeline_components.v1.vertex_notification_email import VertexNotificationEmailOp\n\n @dsl.pipeline(\n name='\u003cvar translate=\"no\"\u003ePIPELINE_NAME\u003c/var\u003e',\n pipeline_root=\u003cvar translate=\"no\"\u003e\u003cspan class=\"devsite-syntax-n\"\u003ePIPELINE_ROOT_PATH\u003c/span\u003e\u003c/var\u003e,\n )\n def \u003cvar translate=\"no\"\u003e\u003cspan class=\"devsite-syntax-nf\"\u003eTASK_NAME\u003c/span\u003e\u003c/var\u003e():\n notify_email_task = VertexNotificationEmailOp(recipients=\u003cvar translate=\"no\"\u003e\u003cspan class=\"devsite-syntax-n\"\u003eRECIPIENTS_LIST\u003c/span\u003e\u003c/var\u003e)\n\n with dsl.ExitHandler(notify_email_task):\n # Add your pipeline tasks here.\n\n compiler.Compiler().compile(pipeline_func=notification_email_pipeline,\n package_path='notification_email_pipeline.yaml')\n\nReplace the following:\n\n- \u003cvar translate=\"no\"\u003ePIPELINE_NAME\u003c/var\u003e: The name of the pipeline.\n\n- \u003cvar translate=\"no\"\u003ePIPELINE_ROOT_PATH\u003c/var\u003e: Specify a Cloud Storage URI that your\n [pipelines service account can access](/vertex-ai/docs/pipelines/configure-project#service-account). The artifacts of your\n pipeline runs are stored within the pipeline root.\n\n The pipeline root can be set as an argument of the `@kfp.dsl.pipeline`\n annotation on the pipeline function, or it can be set when you call\n `create_run_from_job_spec` to create a pipeline run.\n- \u003cvar translate=\"no\"\u003eTASK_NAME\u003c/var\u003e: The name of the pipeline task for which you're configuring email notifications.\n\n- \u003cvar translate=\"no\"\u003eRECIPIENTS_LIST\u003c/var\u003e: A comma-separated list of up to three email addresses to\n send the notification email to.\n\nAdd your pipeline tasks in the body of the `dsl.ExitHandler` exit handler function. By wrapping the tasks in the exit handler function in this way, you specify that the notification email component should report the status of these tasks when the pipeline exits. For example, if a task within the exit handler's contents fails, then the notification reports the status as failed.\n\nExample of a notification email\n-------------------------------\n\nIf you configure email notifications for a pipeline using the code sample in [Send a notification from a pipeline](#sending-notification-from-pipeline), Vertex AI sends an email notification similar to the following when the pipeline exits:\n\u003e Subject: Vertex Pipelines job \"\u003cvar translate=\"no\"\u003ePIPELINE_NAME\u003c/var\u003e\" task \"\u003cvar translate=\"no\"\u003eTASK_NAME\u003c/var\u003e\" \n\u003e From: Google Notifications \\\u003cnotify-noreply@google.com\\\u003e \n\u003e\n\u003e Hello Vertex AI Customer, \n\u003e\n\u003e Vertex AI Pipelines job \"\u003cvar translate=\"no\"\u003ePIPELINE_NAME\u003c/var\u003e\" task \"\u003cvar translate=\"no\"\u003eTASK_NAME\u003c/var\u003e\" ended with the following state: {status}. \n\u003e\n\u003e Additional details: \n\u003e - Project: {project} \n\u003e - Pipeline name: \u003cvar translate=\"no\"\u003ePIPELINE_NAME\u003c/var\u003e \n\u003e - Pipeline job ID: {pipeline_job_id} \n\u003e - Start time: {start_time} \n\u003e\n\u003e To view this pipeline job in Cloud Console, use the following link: {console_link} \n\u003e\n\u003e Sincerely, \n\u003e The Google Cloud AI Team \n\nIn this example:\n\n- `{status}` represents the final state of the task, which can be `SUCCEEDED`, `FAILED`, or `CANCELLED`.\n- `{project}` is the project name.\n- `{pipeline_job_id}` is the unique pipeline job ID.\n- `{start_time}` represents the start time for the pipeline.\n- `{console_link}` is a hyperlink to the pipeline job in the Google Cloud console."]]