Esegui il deployment di un modello in un endpoint

Prima di poter ottenere inferenze online da un modello addestrato, devi eseguirne il deployment in un endpoint. Puoi farlo utilizzando la console Google Cloud , Google Cloud CLI o l'API Vertex AI.

Questo documento descrive il processo di deployment dei modelli negli endpoint.

Cosa succede quando esegui il deployment di un modello

Il deployment di un modello associa risorse fisiche al modello in modo che possa fornire inferenze online a bassa latenza.

Puoi eseguire il deployment di più modelli in un endpoint oppure dello stesso modello in più endpoint. Per saperne di più, consulta Motivi per eseguire il deployment di più modelli nello stesso endpoint.

Preparati a eseguire il deployment di un modello in un endpoint

Durante il deployment del modello, prendi le seguenti decisioni importanti su come eseguire l'inferenza online:

Risorsa creata Impostazione specificata al momento della creazione della risorsa
Endpoint Posizione in cui eseguire le inferenze
Modello Container da utilizzare (ModelContainerSpec)
DeployedModel Risorse di computing da utilizzare per l'inferenza online

Una volta eseguito il deployment del modello nell'endpoint, queste impostazioni di deployment non possono essere modificate. Per modificarli, devi eseguire nuovamente il deployment del modello.

Il primo passaggio del processo di deployment consiste nel decidere quale tipo di endpoint utilizzare. Per saperne di più, consulta Scegliere un tipo di endpoint.

Poi, assicurati che il modello sia visibile in Vertex AI Model Registry. Questo è necessario per poter eseguire il deployment del modello. Per informazioni su Model Registry, incluso come importare gli artefatti del modello o crearli direttamente in Model Registry, consulta Introduzione a Vertex AI Model Registry.

La decisione successiva da prendere riguarda le risorse di calcolo da utilizzare per la gestione del modello. Il tipo di addestramento del modello (AutoML o personalizzato) e il tipo di dati (AutoML) determinano i tipi di risorse fisiche disponibili per il modello. Dopo il deployment del modello, puoi mutate alcune di queste risorse senza creare un nuovo deployment.

La risorsa endpoint fornisce l'endpoint di servizio (URL) che utilizzi per richiedere l'inferenza. Ad esempio:

   https://us-central1-aiplatform.googleapis.com/v1/projects/{project}/locations/{location}/endpoints/{endpoint}:predict

Esegui il deployment di un modello in un endpoint

Puoi eseguire il deployment di un modello in un endpoint utilizzando la console Google Cloud o utilizzando gcloud CLI o l'API Vertex AI.

Esegui il deployment di un modello su un endpoint pubblico utilizzando la console Google Cloud

Nella console Google Cloud , puoi eseguire il deployment di un modello su un endpoint pubblico dedicato o condiviso esistente oppure puoi creare un nuovo endpoint durante il processo di deployment. Per maggiori dettagli, vedi Eseguire il deployment di un modello utilizzando la console Google Cloud .

Esegui il deployment di un modello su un endpoint pubblico utilizzando gcloud CLI o l'API Vertex AI

Quando esegui il deployment di un modello utilizzando gcloud CLI o l'API Vertex AI, devi prima creare un endpoint dedicato o condiviso e poi eseguirne il deployment su questo endpoint. Per maggiori dettagli, vedi:

  1. Creare un endpoint pubblico dedicato o condiviso
  2. Esegui il deployment di un modello utilizzando gcloud CLI o l'API Vertex AI

Eseguire il deployment di un modello su un endpoint Private Service Connect

Per maggiori dettagli, vedi Utilizzare gli endpoint Private Service Connect per l'inferenza online.

Utilizzare un deployment in sequenza per aggiornare un modello di cui è stato eseguito il deployment

Puoi utilizzare un deployment progressivo per sostituire un modello sottoposto a deployment con una nuova versione dello stesso modello. Il nuovo modello riutilizza le risorse di calcolo del precedente. Per maggiori dettagli, vedi Utilizzare un'implementazione graduale per sostituire un modello implementato.

Annullare il deployment di un modello ed eliminare l'endpoint

Puoi annullare il deployment di un modello ed eliminare l'endpoint. Per maggiori dettagli, vedi Rimuovere il deployment di un modello ed eliminare l'endpoint.

Motivi per eseguire il deployment di più modelli nello stesso endpoint

Il deployment di due modelli nello stesso endpoint consente di sostituire gradualmente un modello con l'altro. Ad esempio, supponiamo che tu stia utilizzando un modello e trovi un modo per aumentarne l'accuratezza con nuovi dati di addestramento. Tuttavia, non vuoi aggiornare l'applicazione in modo che rimandi a un nuovo URL endpoint e non vuoi apportare modifiche improvvise all'applicazione. Puoi aggiungere il nuovo modello allo stesso endpoint, pubblicando una piccola percentuale di traffico e aumentando gradualmente la suddivisione del traffico per il nuovo modello fino a quando non pubblica il 100% del traffico.

Poiché le risorse sono associate al modello anziché all'endpoint, puoi eseguire il deployment di modelli di tipi diversi nello stesso endpoint. Tuttavia, la best practice consiste nell'eseguire il deployment di modelli di un tipo specifico (ad esempio, tabulare AutoML o con addestramento personalizzato) su un endpoint. Questa configurazione è più facile da gestire.

Motivi per eseguire il deployment di un modello in più di un endpoint

Potresti voler eseguire il deployment dei modelli con risorse diverse per ambienti applicativi diversi, ad esempio test e produzione. Potresti anche voler supportare SLO diversi per le tue richieste di inferenza. Forse una delle tue applicazioni ha esigenze di prestazioni molto più elevate rispetto alle altre. In questo caso, puoi eseguire il deployment del modello in un endpoint con prestazioni migliori e più risorse di machine learning. Per ottimizzare i costi, puoi anche eseguire il deployment del modello in un endpoint con prestazioni inferiori e meno risorse della macchina.

Comportamento di scalabilità

La scalabilità automatica di Vertex AI Inference scala il numero di nodi di inferenza in base al numero di richieste simultanee. In questo modo puoi adattarti dinamicamente ai carichi di richieste variabili gestendo i costi. Per ulteriori informazioni, consulta Scalare i nodi di inferenza per Vertex AI Inference.

Passaggi successivi