Questa guida descrive come importare i modelli nel registro dei modelli. Una volta importato, il modello sarà visibile nella registro dei modelli. Da Model Registry, puoi eseguire il deployment del modello importato in un endpoint ed eseguire le previsioni.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per importare i modelli,
chiedi all'amministratore di concederti il ruolo IAM Utente Vertex AI (roles/aiplatform.user
) nel progetto.
Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.
Potresti anche riuscire a ottenere le autorizzazioni richieste tramite la ruoli o altri ruoli predefiniti ruoli.
Container predefiniti o personalizzati
Quando importi un modello, lo associ a un container per Vertex AI per eseguire richieste di previsione. Puoi utilizzare la modalità container predefiniti forniti da Vertex AI, oppure usa i tuoi container personalizzati che crei ed esegui il push su Artifact Registry.
Puoi utilizzare un contenitore predefinito se il tuo modello soddisfa i seguenti requisiti:
- Addestrato in Python 3.7 o versioni successive
- Addestrati con TensorFlow, PyTorch, scikit-learn o XGBoost
- Esportati per soddisfare i requisiti specifici del framework per uno dei previsione container
Se importi un modello AutoML tabulare che hai precedentemente esportato, devi utilizzare un container personalizzato specifico forniti da Vertex AI.
In caso contrario, crea un nuovo container personalizzato o utilizza un container personalizzato esistente in Artifact Registry.
Carica gli artefatti del modello in Cloud Storage
Devi archiviare gli artefatti del modello in un bucket Cloud Storage, dove la regione del bucket corrisponda all'endpoint regionale che stai utilizzando.
Se il bucket Cloud Storage si trova in un altro progetto Google Cloud, devi concedere l'accesso a Vertex AI per leggere gli elementi del modello.
Se utilizzi un container predefinito, assicurati che gli artefatti del modello abbiano corrispondenti esattamente ai seguenti esempi:
- SavedModel TensorFlow:
saved_model.pb
- PyTorch:
model.mar
- scikit-learn:
model.joblib
omodel.pkl
- XGBoost:
model.bst
,model.joblib
omodel.pkl
Scopri di più su esportazione degli artefatti del modello per la previsione.
Importa un modello utilizzando la console Google Cloud
Per importare un modello utilizzando la console Google Cloud:
Nella console Google Cloud, vai alla pagina Modelli di Vertex AI.
Fai clic su Importa.
Seleziona Importa come nuovo modello per importare un nuovo modello.
Seleziona Importa come nuova versione per importare un modello come versione di un modello esistente. Per scoprire di più sul controllo delle versioni del modello, consulta Controllo delle versioni del modello.
Nome e regione: inserisci un nome per il modello. Seleziona la regione corrisponde sia alla regione del bucket che alla regione di Vertex AI endpoint che stai utilizzando. Fai clic su Continua.
Se espandi Opzioni avanzate, puoi scegliere di aggiungere una chiave di crittografia gestita dal cliente.
A seconda del tipo di contenitore in uso, seleziona la scheda appropriata riportata di seguito.
Container predefinito
Seleziona Importa gli artefatti del modello in un nuovo container predefinito.
Seleziona il framework del modello e la versione del framework del modello che hai utilizzato per addestrare il modello.
Se vuoi utilizzare le GPU per pubblicare le previsioni, imposta Tipo di acceleratore su GPU.
Seleziona il tipo di GPU in un secondo momento, quando esegui il deployment del modello in un endpoint.
Specifica il percorso Cloud Storage della directory che contiene gli artefatti del tuo modello.
Ad esempio:
gs://BUCKET_NAME/models/
.Lascia vuoto il campo Schema di previsione.
Per importare il modello senza le impostazioni di Vertex Explainable AI, fai clic su Importa.
Al termine dell'importazione, il modello viene visualizzato nella pagina Modelli.
In caso contrario, continua a configurare il modello inserendo il tuo Impostazioni di spiegabilità nella scheda Spiegabilità. Impara scopri di più sul Impostazioni di spiegabilità.
Container personalizzato
Seleziona Importa un container personalizzato esistente.
Imposta l'URI dell'immagine container.
Se vuoi fornire gli elementi modello oltre a un'immagine contenitore, specifica il percorso Cloud Storage della directory contenente gli elementi modello.
Ad esempio,
gs://BUCKET_NAME/models/
.Specifica i valori per uno degli altri campi.
Scopri di più su questi campi facoltativi.
Per importare il modello senza le impostazioni di Vertex Explainable AI, fai clic su Importa.
Al termine dell'importazione, il modello viene visualizzato nella pagina Modelli.
In caso contrario, continua a configurare il modello inserendo il tuo Impostazioni di spiegabilità nella scheda Spiegabilità. Impara scopri di più sul Impostazioni di spiegabilità.
Contenitore tabulare AutoML
Seleziona Importa un container personalizzato esistente.
Nel campo Immagine contenitore, inserisci
MULTI_REGION-docker.pkg.dev/vertex-ai/automl-tabular/prediction-server-v1:latest
.Sostituisci
MULTI_REGION
conus
,europe
oasia
per selezionare il repository Docker da cui vuoi estrarre l'immagine Docker. Ogni repository fornisce la stessa immagine Docker, ma la scelta della regione multipla di Artifact Registry più vicina alla macchina su cui esegui Docker potrebbe ridurre la latenza.Nel campo Posizione pacchetto, specifica il percorso Cloud Storage della directory contenente gli elementi del modello.
Il percorso è simile al seguente esempio:
gs://BUCKET_NAME/models-MODEL_ID/tf-saved-model/TIMESTAMP/
Lascia vuoti tutti gli altri campi.
Fai clic su Importa.
Al termine dell'importazione, il modello viene visualizzato nella pagina Modelli. Puoi utilizzare questo modello come gli altri modelli tabulari AutoML, tranne per il fatto che i modelli tabulari AutoML importati non supportano l'AI spiegabile di Vertex.
Importa un modello in modo programmatico
I seguenti esempi mostrano come importare un modello utilizzando vari strumenti:
gcloud
Nell'esempio seguente viene utilizzato il comando gcloud ai models upload
:
gcloud ai models upload \
--region=LOCATION \
--display-name=MODEL_NAME \
--container-image-uri=IMAGE_URI \
--artifact-uri=PATH_TO_MODEL_ARTIFACT_DIRECTORY
Sostituisci quanto segue:
- LOCATION_ID: la regione in cui utilizzi Vertex AI.
-
MODEL_NAME: un nome visualizzato per
Model
. -
IMAGE_URI: l'URI dell'immagine del contenitore da utilizzare per la pubblicazione delle previsioni. Ad esempio:
us-docker.pkg.dev/vertex-ai/prediction/tf2-cpu.2-1:latest
. Utilizza un container predefinito o un container personalizzato. -
PATH_TO_MODEL_ARTIFACT_DIRECTORY: l'URI Cloud Storage (che inizia con
gs://
) di una directory in Cloud Storage che contiene artefatto del modello.
L'esempio precedente mostra tutti i flag necessari per importare la maggior parte
di grandi dimensioni. Se non utilizzi un container predefinito per la previsione,
occorre specificare alcune facoltativi
in modo che
Vertex AI può utilizzare la tua immagine container. Questi flag, che iniziano
con --container-
, corrispondono ai campi del tuo Model
containerSpec
REST
Usa il seguente esempio di codice per caricare un modello mediante
Metodo upload
della risorsa model
.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- LOCATION_ID: la regione in cui stai utilizzando Vertex AI.
- PROJECT_ID: il tuo ID progetto.
-
MODEL_NAME: un nome visualizzato per
Model
. - MODEL_DESCRIPTION: facoltativo. Una descrizione del modello.
-
IMAGE_URI: l'URI dell'immagine container da utilizzare per fornire le previsioni. Ad esempio:
us-docker.pkg.dev/vertex-ai/prediction/tf2-cpu.2-1:latest
. Utilizza un container predefinito o un container personalizzato. -
PATH_TO_MODEL_ARTIFACT_DIRECTORY: l'URI Cloud Storage (che inizia con
gs://
) di una directory in Cloud Storage contenente i artefatti del modello. Questa variabile e il campoartifactUri
sono facoltativi se utilizzi un contenitore personalizzato. labels
: facoltativo. Qualsiasi insieme di coppie chiave-valore per organizzare i modelli. Ad esempio:- "env": "prod"
- "tier": "backend"
- Specifica LABEL_NAME e LABEL_VALUE per le eventuali etichette da applicare a questa pipeline di addestramento.
Metodo HTTP e URL:
POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/models:upload
Corpo JSON della richiesta:
{ "model": { "displayName": "MODEL_NAME", "predictSchemata": {}, "containerSpec": { "imageUri": "IMAGE_URI" }, "artifactUri": "PATH_TO_MODEL_ARTIFACT_DIRECTORY", "labels": { "LABEL_NAME_1": "LABEL_VALUE_1", "LABEL_NAME_2": "LABEL_VALUE_2" } } }
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/models:upload"
PowerShell
Salva il corpo della richiesta in un file denominato request.json
.
ed esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/models:upload" | Select-Object -Expand Content
Java
Prima di provare questo esempio, segui le istruzioni di configurazione Java riportate nella guida rapida all'utilizzo delle librerie client di Vertex AI. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Java di Vertex AI.
Per autenticarti in Vertex AI, configura le credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Node.js
Prima di provare questo esempio, segui le istruzioni per la configurazione di Node.js nel Guida rapida di Vertex AI con librerie client. Per ulteriori informazioni, consulta API Node.js Vertex AI documentazione di riferimento.
Per autenticarti in Vertex AI, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Python
Per scoprire come installare o aggiornare l'SDK Vertex AI per Python, consulta Installare l'SDK Vertex AI per Python. Per ulteriori informazioni, consulta documentazione di riferimento dell'API Python.
Per importare un modello con le impostazioni di Vertex Explainable AI abilitate, consulta le Esempi di importazione di modelli Vertex Explainable AI.
Recupera lo stato dell'operazione
Alcune richieste avviano operazioni a lunga esecuzione il cui completamento richiede tempo. Queste richieste restituiscono un nome dell'operazione, che puoi utilizzare per visualizzarne lo stato o annullarla. Vertex AI fornisce metodi di assistenza per effettuare chiamate a operazioni di lunga durata. Per ulteriori informazioni, consulta la sezione Utilizzo di modelli operazioni.
Limitazioni
- La dimensione massima del modello supportata è 10 GiB.
Passaggi successivi
- Esegui il deployment del modello su un endpoint, in modo programmatico o tramite usando la console Google Cloud.