Gestire i modelli BigQuery ML in Vertex AI

Puoi registrare i modelli BigQuery ML con il Model Registry di Vertex AI per gestirli insieme ai modelli di Vertex AI senza doverli esportare. Quando registri i modelli in Model Registry, puoi eseguire il versionamento, la valutazione e il deployment dei modelli per la previsione online utilizzando un'unica interfaccia e senza bisogno di un contenitore di pubblicazione. Se non hai dimestichezza con Vertex AI e con la sua integrazione con BigQuery ML, consulta Vertex AI per gli utenti di BigQuery.

Per scoprire di più sulle previsioni di Vertex AI, consulta la Panoramica di 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

Enable the Vertex AI API.

Enable the 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 Gestire l'accesso a progetti, cartelle e organizzazioni.

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

Registra modelli

Quando crei un modello BigQuery ML utilizzando l'istruzione CREATE MODEL, puoi utilizzare le seguenti opzioni per registrarlo in Model Registry:

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

Se imposti l'opzione MODEL_REGISTRY durante la creazione di un modello, il modello viene registrato nel Registry dei modelli e visualizzato automaticamente al termine dell'addestramento in BigQuery ML. Puoi utilizzare la colonna Origine nella pagina Registro dei modelli della consoleGoogle Cloud per vedere da dove proviene 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 nel Registry dei modelli.

Il seguente esempio 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';

Registra un modello BigQuery ML esistente nel Model Registry

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

Gli esempi riportati di seguito mostrano come registrare un modello esistente:

SQL

Utilizza l'istruzione ALTER MODEL:

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

bq

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

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

API

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

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

Registra più versioni dei modelli BigQuery ML

Il primo modello BigQuery ML registrato con un determinato ID viene visualizzato come versione 1 del modello nel 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, puoi creare model1 in BigQuery ML e registrarlo in Model Registry come regression_model. model1 viene visualizzato come versione 1 di regression_model nel Registro dei modelli. 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 nel Model Registry, la versione del modello esistente nel Model Registry 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 nel Model Registry viene sostituita e il Model Registry mostra la versione 1 e la versione 3 del modello regression_model.

Modificare l'ID di un modello BigQuery ML registrato

Una volta registrato un modello BigQuery ML nel 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 riqualificazione.

  • Copia il modello, quindi 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 multiregione in Model Registry, il modello diventa un modello regionale in Vertex AI. Un modello BigQuery ML multiregione per gli Stati Uniti viene sincronizzato con Vertex AI (us-central1) e un modello BigQuery ML multiregione per l'UE viene sincronizzato con Vertex AI (europe-west4). Per i modelli a singola regione, non sono previste modifiche.

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

Esegui il deployment di un modello in Vertex AI

Puoi utilizzare diversi metodi per eseguire il deployment di un modello in un endpoint in Vertex AI. Per ulteriori informazioni, consulta Eseguire il deployment di un modello in un endpoint.

Eliminare i modelli BigQuery ML dal Registry dei modelli

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 maggiori informazioni, consulta Eliminare i modelli.

Se vuoi eliminare un modello in BigQuery ML che è stato registrato in Model Registry e di cui è stato eseguito il deployment in un endpoint, devi prima utilizzare Model Registry per annullare il deployment del modello. Puoi quindi tornare a BigQuery ML ed eliminare il modello. Per ulteriori informazioni su come annullare il deployment di un modello, consulta Eliminare un endpoint.