Esportazione degli artefatti del modello per la previsione

Le offerte air-gapped di Google Distributed Cloud (GDC) forniscono container precompilati per pubblicare previsioni online da modelli addestrati utilizzando i seguenti framework di machine learning (ML):

  • TensorFlow
  • PyTorch

Per utilizzare uno di questi container precompilati, devi salvare il modello come uno o più artefatti del modello che soddisfano i requisiti del container precompilato. Questi requisiti si applicano indipendentemente dal fatto che gli artefatti del modello siano creati o meno su Distributed Cloud.

Prima di iniziare

Prima di esportare gli artefatti del modello, segui questi passaggi:

  1. Crea e addestra un modello di previsione destinato a uno dei container supportati.
  2. Se non hai un progetto, configura un progetto per Vertex AI.
  3. Collabora con l'operatore dell'infrastruttura (IO) per creare il cluster di previsione.

    L'IO crea il cluster per te, lo associa al tuo progetto e assegna i pool di nodi appropriati all'interno del cluster, tenendo conto delle risorse necessarie per le previsioni online.

  4. Crea un bucket di archiviazione per il tuo progetto.

  5. Crea il account di servizio di pubblicazione predefinita di Vertex AI (vai-default-serving-sa) all'interno del progetto. Per informazioni sui service account, consulta Configurare i service account.

  6. Concedi il ruolo Visualizzatore oggetti bucket progetto (project-bucket-object-viewer) al account di servizio di pubblicazione predefinita di Vertex AI (vai-default-serving-sa) per il bucket di archiviazione che hai creato. Per informazioni su come concedere l'accesso al bucket ai service account, consulta Concedere l'accesso al bucket.

  7. Per ottenere le autorizzazioni necessarie per accedere alla previsione online, chiedi all'amministratore IAM del progetto di concederti il ruolo Utente previsione Vertex AI (vertex-ai-prediction-user). Per informazioni su questo ruolo, consulta Preparare le autorizzazioni IAM.

  8. Per ottenere le autorizzazioni necessarie per eseguire il deployment dei modelli di previsione online, chiedi all'amministratore IAM del progetto di concederti il ruolo Amministratore previsione Vertex AI (vertex-ai-prediction-Admin). Per informazioni su questo ruolo, consulta Preparare le autorizzazioni IAM.

Requisiti specifici del framework per l'esportazione in container precompilati

A seconda del framework ML che intendi utilizzare per la previsione, devi esportare gli artefatti del modello in formati diversi. Le sezioni seguenti descrivono i formati di modello accettabili per ogni framework ML.

TensorFlow

Se utilizzi TensorFlow per addestrare un modello, esportalo come directory SavedModel di TensorFlow.

Esistono diversi modi per esportare SavedModels dal codice di addestramento di TensorFlow. Il seguente elenco descrive alcuni modi che funzionano per varie API TensorFlow:

Se non utilizzi Keras o un Estimator, assicurati di utilizzare il tag serve e la firma serving_default quando esporti il SavedModel per assicurarti che Vertex AI possa utilizzare gli artefatti del modello per erogare le previsioni. Keras ed Estimator gestiscono automaticamente questa attività. Scopri di più su specifica delle firme durante l'esportazione.

Per pubblicare le previsioni utilizzando questi artefatti, crea un Model con il container precompilato per la previsione corrispondente alla versione di TensorFlow che hai utilizzato per l'addestramento.

PyTorch

Se utilizzi PyTorch per addestrare un modello, devi creare un pacchetto degli artefatti del modello, incluso un gestore predefinito o personalizzato creando un file di archivio utilizzando Torch Model Archiver. Le immagini PyTorch precompilate prevedono che l'archivio sia denominato model.mar, quindi assicurati di impostare il nome del modello su model.

Per informazioni sull'ottimizzazione della memoria utilizzata, della latenza o del throughput di un modello PyTorch pubblicato con TorchServe, consulta la guida al rendimento di PyTorch.

Caricare il modello

Devi caricare il modello nel bucket di archiviazione che hai creato. Per saperne di più sul caricamento di oggetti nei bucket di archiviazione, consulta Caricare e scaricare oggetti di archiviazione nei progetti.

Il percorso del bucket di archiviazione del modello deve avere la seguente struttura:

s3://BUCKET_NAME/MODEL_ID/MODEL_VERSION_ID

Per i dettagli sull'esportazione, consulta i requisiti specifici del framework per l'esportazione in container precompilati.