Introduzione a Gemini Enterprise Agent Platform Pipelines

Agent Platform Pipelines ti consente di automatizzare, monitorare e gestire i tuoi sistemi di machine learning (ML) in modo serverless utilizzando le pipeline ML per orchestrare i flussi di lavoro ML. Puoi eseguire in batch le pipeline ML definite utilizzando il framework Kubeflow Pipelines o TensorFlow Extended (TFX). Per scoprire come scegliere un framework per definire la pipeline ML, consulta Interfacce per definire una pipeline.

Questa pagina fornisce una panoramica di quanto segue:

Che cos'è una pipeline ML?

Una pipeline ML è una descrizione portatile ed estensibile di un flusso di lavoro MLOps come una serie di passaggi chiamati attività della pipeline. Ogni attività esegue un passaggio specifico nel flusso di lavoro per addestrare ed eseguire il deployment di un modello ML.

Con le pipeline ML, puoi applicare strategie MLOps per automatizzare e monitorare i processi ripetibili nella tua pratica ML. Ad esempio, puoi riutilizzare una definizione di pipeline per riaddestrare continuamente un modello sui dati di produzione più recenti. Per ulteriori informazioni su MLOps in Gemini Enterprise, consulta MLOps on Gemini Enterprise API.

Struttura di una pipeline ML

Una pipeline ML è un grafo diretto aciclico (DAG) di attività della pipeline containerizzate interconnesse tramite dipendenze di input-output. Puoi creare ogni attività in Python o come immagini container predefinite.

Puoi definire la pipeline come un DAG utilizzando l'SDK Kubeflow Pipelines o l'SDK TFX, compilarla in YAML per la rappresentazione intermedia e poi eseguirla. Per impostazione predefinita, le attività della pipeline vengono eseguite in parallelo. Puoi collegare le attività per eseguirle in serie. Per ulteriori informazioni sulle attività della pipeline, consulta Attività della pipeline. Per ulteriori informazioni sul flusso di lavoro per la definizione, la compilazione e l'esecuzione della pipeline, consulta Ciclo di vita di una pipeline ML.

Attività e componenti della pipeline

Un'attività della pipeline è un'istanza di un componente della pipeline con input specifici. Quando definisci la pipeline ML, puoi interconnettere più attività per formare un DAG, instradando gli output di un'attività della pipeline agli input dell'attività della pipeline successiva nel flusso di lavoro ML. Puoi anche utilizzare gli input della pipeline ML come input per un'attività della pipeline.

Componente pipeline

Un componente della pipeline è un insieme autonomo di codice che esegue un passaggio specifico di un flusso di lavoro ML, come la pre-elaborazione dei dati, l'addestramento del modello o il deployment del modello. Un componente in genere è costituito da:

  • Input: un componente può avere uno o più parametri di input e artefatti.

  • Output: ogni componente ha uno o più parametri di output o artefatti.

  • Logica: questo è il codice eseguibile del componente. Per i componenti containerizzati, la logica contiene anche la definizione dell'ambiente o dell'immagine container in cui viene eseguito il componente.

I componenti sono la base per la definizione delle attività in una pipeline ML. Per definire le attività della pipeline, puoi utilizzare i componenti della pipeline predefiniti Google Cloud o creare i tuoi componenti personalizzati.

Componenti predefiniti

Utilizza i componenti della pipeline predefiniti Google Cloud se vuoi utilizzare le funzionalità dell'API Gemini Enterprise, come AutoML, nella tua pipeline. Per scoprire come utilizzare i componenti della pipeline Google Cloud per definire una pipeline, consulta Creare una pipeline.

Componenti personalizzati

Puoi creare i tuoi componenti personalizzati da utilizzare nella pipeline ML. Per ulteriori informazioni sulla creazione di componenti personalizzati, consulta Creare i propri componenti della pipeline.

Per scoprire come creare componenti Kubeflow Pipelines personalizzati, consulta il "Pipelines with lightweight components based on Python functions" tutorial notebook su GitHub. Per scoprire come creare componenti TFX personalizzati, consulta il tutorial sui componenti delle funzioni Python TFX nei tutorial di TensorFlow Extended in Production.

Attività della pipeline

Un'attività della pipeline è l'istanza di un componente della pipeline ed esegue un passaggio specifico nel flusso di lavoro ML. Puoi creare attività della pipeline ML utilizzando Python o come immagini container predefinite.

All'interno di un'attività, puoi sfruttare le funzionalità di calcolo on demand di Gemini Enterprise Agent Platform con Kubernetes per eseguire il codice in modo scalabile oppure delegare il carico di lavoro a un altro motore di esecuzione, come BigQuery, Dataflow o Managed Service for Apache Spark.

Ciclo di vita di una pipeline ML

Dalla definizione all'esecuzione e al monitoraggio, il ciclo di vita di una pipeline ML comprende le seguenti fasi di alto livello:

  1. Definisci: il processo di definizione di una pipeline ML e della relativa attività è chiamato anche creazione di una pipeline. In questa fase, devi eseguire i seguenti passaggi:

    1. Scegli un framework ML: Agent Platform Pipelines supporta le pipeline ML definite utilizzando il framework TFX o Kubeflow Pipelines. Per scoprire come scegliere un framework per creare la pipeline, consulta Interfacce per definire una pipeline.

    2. Definisci le attività della pipeline e configura la pipeline: per ulteriori informazioni, consulta Creare una pipeline.

  2. Compila: in questa fase, devi eseguire i seguenti passaggi:

    1. Genera la definizione della pipeline ML in un file YAML compilato per la rappresentazione intermedia, che puoi utilizzare per eseguire la pipeline ML.

    2. (Facoltativo) Puoi caricare il file YAML compilato come un modello di pipeline in un repository e riutilizzarlo per creare esecuzioni di pipeline ML.

  3. Esegui: crea un'istanza di esecuzione della pipeline ML utilizzando il file YAML compilato o un modello di pipeline. L'istanza di esecuzione di una pipeline definizione è chiamata esecuzione della pipeline.

    Puoi creare un'occorrenza una tantum di un'esecuzione della pipeline o utilizzare l' API Scheduler per creare esecuzioni di pipeline ricorrenti dalla stessa definizione di pipeline ML. Puoi anche clonare un'esecuzione della pipeline esistente. Per scoprire come scegliere un'interfaccia per eseguire una pipeline ML, consulta Interfacce per eseguire una pipeline. Per ulteriori informazioni su come creare un'esecuzione della pipeline, consulta Eseguire una pipeline.

  4. Monitora, visualizza e analizza le esecuzioni: dopo aver creato un'esecuzione della pipeline, puoi eseguire le seguenti operazioni per monitorare le prestazioni, lo stato e i costi delle esecuzioni della pipeline:

  5. (Facoltativo) Interrompi o elimina le esecuzioni della pipeline: non esistono limitazioni alla durata di attivazione di un'esecuzione della pipeline. Facoltativamente, puoi eseguire le seguenti operazioni:

    • Interrompi un'esecuzione della pipeline.

    • Metti in pausa o riprendi una pianificazione di esecuzione della pipeline.

    • Elimina un modello di pipeline, un'esecuzione della pipeline o una pianificazione di esecuzione della pipeline esistenti.

Che cos'è un'esecuzione della pipeline?

Un'esecuzione della pipeline è un'istanza di esecuzione della definizione della pipeline ML. Ogni esecuzione della pipeline è identificata da un nome di esecuzione univoco. Utilizzando Agent Platform Pipelines, puoi creare un'esecuzione della pipeline ML nei seguenti modi:

  • Utilizza la definizione YAML compilata di una pipeline

  • Utilizza un modello di pipeline della Galleria di modelli

Per ulteriori informazioni su come creare un'esecuzione della pipeline, consulta Eseguire una pipeline. Per ulteriori informazioni su come creare un'esecuzione della pipeline da un modello di pipeline, consulta Creare, caricare e utilizzare un modello di pipeline.

Per informazioni sull'acquisizione e l'archiviazione dei metadati di esecuzione della pipeline utilizzando i metadati ML di Agent Platform, consulta Utilizzare i metadati ML di Agent Platform per monitorare la derivazione degli artefatti ML.

Per informazioni sull'utilizzo delle esecuzioni della pipeline per sperimentare il flusso di lavoro ML utilizzando gli esperimenti di Gemini Enterprise Agent Platform, consulta Aggiungere le esecuzioni della pipeline agli esperimenti.

Monitorare la derivazione degli artefatti ML

Un'esecuzione della pipeline contiene diversi artefatti e parametri, inclusi i metadati della pipeline. Per comprendere le variazioni nelle prestazioni o nell'accuratezza del tuo sistema ML, devi analizzare i metadati e la derivazione degli artefatti ML dalle esecuzioni della pipeline ML. La derivazione di un artefatto ML include tutti i fattori che hanno contribuito alla sua creazione, nonché i metadati e i riferimenti agli artefatti derivati.

I grafici di derivazione ti aiutano ad analizzare la causa principale upstream e l'impatto downstream. Ogni esecuzione della pipeline produce un grafico di derivazione dei parametri e degli artefatti che vengono inseriti nell'esecuzione, materializzati all'interno dell'esecuzione e generati dall'esecuzione. I metadati che compongono questo grafico di derivazione vengono archiviati nei metadati ML di Agent Platform. Questi metadati possono anche essere sincronizzati con Knowledge Catalog.

  • Utilizzare i metadati ML di Agent Platform per monitorare la derivazione degli artefatti della pipeline

    Quando esegui una pipeline utilizzando Agent Platform Pipelines, tutti i parametri e i metadati degli artefatti utilizzati e generati dalla pipeline vengono archiviati nei metadati ML di Agent Platform. I metadati ML di Agent Platform sono un'implementazione gestita della libreria dei metadati ML in TensorFlow e supportano la registrazione e la scrittura di schemi di metadati personalizzati. Quando crei un'esecuzione della pipeline in Agent Platform Pipelines, i metadati dell'esecuzione della pipeline vengono archiviati nell'archivio dei metadati predefinito per il progetto e la regione in cui esegui la pipeline.

  • Utilizzare Knowledge Catalog per monitorare la derivazione degli artefatti della pipeline

    Knowledge Catalog è un data fabric globale e cross-project integrato con più sistemi Google Cloud, come Agent Platform, BigQuery e Managed Service for Apache Airflow. In Knowledge Catalog, puoi cercare un artefatto della pipeline e visualizzarne il grafico di derivazione. Tieni presente che, per evitare conflitti tra artefatti, qualsiasi risorsa catalogata in Knowledge Catalog viene identificata con un nome completo (FQN).

    Scopri i costi di utilizzo di Knowledge Catalog.

Per ulteriori informazioni sul monitoraggio della derivazione degli artefatti ML utilizzando i metadati ML di Agent Platform e Knowledge Catalog, consulta Monitorare la derivazione degli artefatti della pipeline.

Per ulteriori informazioni sulla visualizzazione, l'analisi e il confronto delle esecuzioni della pipeline, consulta Visualizzare e analizzare i risultati della pipeline. Per un elenco dei tipi di artefatti proprietari definiti in Google Cloud componenti della pipeline, consulta tipi di artefatti dei metadati ML.

Aggiungere esecuzioni di pipeline agli esperimenti

Gli esperimenti di Agent Platform ti consentono di monitorare e analizzare varie architetture di modelli, iperparametri e ambienti di addestramento per trovare il modello migliore per il tuo caso d'uso ML. Dopo aver creato un'esecuzione della pipeline ML, puoi associarla a un esperimento o a un'esecuzione dell'esperimento. In questo modo, puoi sperimentare diversi insiemi di variabili, come iperparametri, numero di passaggi di addestramento o iterazioni.

Per ulteriori informazioni sulla sperimentazione dei flussi di lavoro ML utilizzando gli esperimenti di Agent Platform, consulta Introduzione agli esperimenti di Agent Platform.

Passaggi successivi