Gestire i modelli BigQuery ML in Vertex AI

Puoi registrare i modelli BigQuery ML in Vertex AI Model Registry per gestirli insieme ai modelli Vertex AI senza doverli esportare. Quando registri i modelli in Model Registry, puoi creare versioni, valutare ed eseguire il deployment dei modelli per la previsione online utilizzando un'unica interfaccia e senza la necessità di un container di pubblicazione. Se non hai familiarità con Vertex AI e la sua integrazione con BigQuery ML, consulta Vertex AI per gli utenti di BigQuery.

Per saperne di più sulla previsione di Vertex AI, consulta la panoramica su come ottenere previsioni su Vertex AI.

Per scoprire come gestire i modelli BigQuery ML da Vertex AI Model Registry, consulta Introduzione a Vertex AI Model Registry.

Prima di iniziare

Abilita l'API Vertex AI.

Ruoli richiesti per abilitare le API

Per abilitare le API, devi disporre del ruolo IAM Amministratore utilizzo servizi (roles/serviceusage.serviceUsageAdmin), che contiene l'autorizzazione serviceusage.services.enable. Scopri come concedere i ruoli.

Abilitare l'API

Autorizzazioni obbligatorie

Per ottenere le autorizzazioni necessarie per registrare i modelli BigQuery ML in Model Registry, chiedi all'amministratore di concederti il ruolo IAM Amministratore Vertex AI (roles/aiplatform.admin) nel tuo progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.

Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.

Registrare i modelli

Quando crei un modello BigQuery ML, puoi registrarlo in Model Registry nei seguenti modi:

  • Nella Google Cloud console, seleziona il modello nel riquadro Explorer e poi fai clic su Registra nella scheda Registro. (Anteprima)
  • Utilizza l' CREATE MODEL istruzione. Nell'istruzione CREATE MODEL, puoi utilizzare le seguenti opzioni per registrare il modello in Model Registry:

    • MODEL_REGISTRY: registra il modello in Model Registry.
    • VERTEX_AI_MODEL_ID: specifica un ID modello da utilizzare per il modello in Model Registry. L'ID modello è associato al modello BigQuery ML ed è visibile da Model Registry. Ogni modello BigQuery ML può essere registrato solo con un ID modello in Model Registry.
    • VERTEX_AI_MODEL_VERSION_ALIASES: specifica uno o più alias della versione del modello, che puoi utilizzare per semplificare il deployment, gestire i modelli e attivare Vertex Explainable AI sui modelli.

    Se imposti l'opzione MODEL_REGISTRY quando crei un modello, il modello viene registrato in Model Registry e viene visualizzato automaticamente una volta completato l'addestramento in BigQuery ML. Puoi utilizzare la colonna Origine nella pagina Model Registry della Google Cloud console per vedere l'origine di un modello.

Una volta registrato un modello BigQuery ML, puoi utilizzare le seguenti funzionalità di Model Registry con il tuo modello:

Tutti i modelli creati utilizzando BigQuery ML vengono comunque visualizzati nell'interfaccia utente di BigQuery, indipendentemente dal fatto che siano registrati in Model Registry.

L'esempio seguente mostra come creare e registrare un modello k-means:

CREATE OR REPLACE MODEL `mydataset.my_kmeans_model`
  MODEL_TYPE = 'KMEANS',
  MODEL_REGISTRY = 'VERTEX_AI',
  VERTEX_AI_MODEL_ID = 'customer_clustering';

Registrare un modello BigQuery ML esistente in Model Registry

Se non registri un modello in Vertex AI quando lo crei, puoi utilizzare SQL, lo strumento a riga di comando bq o l'API BigQuery per registrarlo in un secondo momento.

Gli esempi seguenti mostrano come registrare un modello esistente:

Console

  1. Vai alla pagina BigQuery.

    Vai a BigQuery

  2. Nel riquadro a sinistra, fai clic su Esplora:

    Pulsante evidenziato per il riquadro Spazio di esplorazione.

    Se non vedi il riquadro a sinistra, fai clic su Espandi riquadro a sinistra per aprirlo.

  3. Nel riquadro Explorer, fai clic su Set di dati e poi su un set di dati che contiene il modello.

  4. Fai clic sulla scheda Modelli e poi sul modello che vuoi registrare.

  5. Nel riquadro dei dettagli del modello, seleziona la scheda Registro.

  6. Fai clic su Registra.

  7. Nel riquadro Registra modello in Vertex AI Model Registry, esegui una delle seguenti operazioni:

    • Seleziona Registra come nuovo modello. In Nome modello, digita un nome per il modello.

    • Seleziona Registra come nuova versione del modello esistente.

      1. In Nome modello, digita un nome per il modello.
      2. (Facoltativo) Se vuoi utilizzare un alias della versione, seleziona Alias versione e poi digita un nome per l'alias della versione.
  8. Fai clic su Registra.

SQL

Utilizza l' ALTER MODEL istruzione:

ALTER MODEL IF EXISTS mymodel SET OPTIONS (vertex_ai_model_id='my_vertex_ai_model_id');

bq

Utilizza il bq update comando con il --model flag:

  bq update --model --vertex_ai_model_id 'my_vertex_ai_model_id' myproject:mydataset.mymodel

API

Utilizza il models.patch metodo. Passa un Model oggetto che contiene un trainingRuns oggetto con un campo vertexAiModelId compilato:

{
  "trainingRuns": [
    {
      "vertexAiModelId": my_vertex_ai_model_id
    }
}

Registrare più versioni di modelli BigQuery ML

Il primo modello BigQuery ML che registri con un determinato ID modello viene visualizzato come versione 1 di quel modello in Model Registry. Puoi registrare altri modelli BigQuery ML come versioni diverse del modello registrato specificando lo stesso ID modello Vertex AI quando crei o modifichi questi modelli BigQuery ML.

Ad esempio, potresti creare model1 in BigQuery ML e registrarlo in Model Registry come regression_model. model1 viene visualizzato come versione 1 di regression_model in Model Registry. Se poi crei model2 in BigQuery ML e lo registri in Model Registry come regression_model, model2 viene visualizzato come versione 2 di regression_model in Model Registry.

Se crei o sostituisci un modello BigQuery ML e utilizzi un nome di modello BigQuery ML già associato a un modello in Model Registry, la versione del modello Model Registry esistente viene eliminata e sostituita con il nuovo modello. Basandoti sull'esempio precedente, se crei o sostituisci model2 in BigQuery ML utilizzando l'istruzione CREATE OR REPLACE MODEL con le opzioni MODEL_REGISTRY e VERTEX_AI_MODEL_ID, la versione 2 di regression_model in Model Registry viene sostituita e Model Registry visualizza la versione 1 e la versione 3 del modello regression_model.

Modificare l'ID modello di un modello BigQuery ML registrato

Una volta registrato un modello BigQuery ML in Model Registry, non puoi modificare il valore VERTEX_AI_MODEL_ID. Per registrare il modello con un nuovo VERTEX_AI_MODEL_ID, utilizza una delle seguenti opzioni:

  • Elimina il modello e ricrealo, specificando un nuovo valore per l'opzione VERTEX_AI_MODEL_ID. Questo approccio comporta costi di riaddestramento.

  • Copia il modello, e poi utilizza l'istruzione ALTER MODEL per registrare il nuovo modello con un nuovo valore VERTEX_AI_MODEL_ID.

Considerazioni sulla località

Se registri un modello BigQuery ML multiregionale in Model Registry, il modello diventa un modello regionale in Vertex AI. Un modello BigQuery ML multiregionale statunitense viene sincronizzato con Vertex AI (us-central1) e un modello BigQuery ML multiregionale europeo viene sincronizzato con Vertex AI (europe-west4). Per i modelli a singola regione, non vengono apportate modifiche.

Per informazioni su come aggiornare le località dei modelli, consulta Scegliere la località.

Eseguire il deployment di un modello in Vertex AI

Puoi utilizzare diversi metodi per eseguire il deployment di un modello su un endpoint in Vertex AI. Per saperne di più, consulta Eseguire il deployment di un modello su un endpoint.

Eliminare i modelli BigQuery ML da Model Registry

Per eliminare un modello BigQuery ML da Model Registry, eliminalo in BigQuery ML. Il modello viene rimosso automaticamente da Model Registry.

Esistono diversi modi per eliminare un modello BigQuery ML. Per saperne di più, consulta Eliminare i modelli.

Se vuoi eliminare un modello in BigQuery ML che è stato registrato in Model Registry ed è stato eseguito il deployment su un endpoint, devi prima utilizzare Model Registry per annullare il deployment del modello. Poi puoi tornare a BigQuery ML ed eliminare il modello. Per saperne di più su come annullare il deployment di un modello, consulta Eliminare un endpoint.

Limitazioni