Administra modelos de BigQuery ML en Vertex AI

Puedes registrar modelos de BigQuery ML con Vertex AI Model Registry para administrarlos junto con tus otros modelos de Vertex AI sin necesidad de exportarlos. Cuando registras modelos con Model Registry, puedes crear versiones de los modelos, evaluarlos y, luego, implementarlos para la predicción en línea; para ello, usa una sola interfaz y no tendrás la necesidad de usar un contenedor de entrega. Si no sabes cómo funciona Vertex AI ni cómo se integra en BigQuery ML, consulta Vertex AI para usuarios de BigQuery.

Para obtener más información sobre la predicción de Vertex AI, consulta Descripción general sobre cómo obtener predicciones en Vertex AI.

Para obtener información sobre cómo administrar tus modelos de BigQuery ML desde el registro de modelos de Vertex AI, consulta Introducción a Vertex AI Model Registry.

Antes de comenzar

Enable the Vertex AI API.

Roles required to enable APIs

To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

Enable the API

Permisos necesarios

Para obtener los permisos que necesitas para registrar modelos de BigQuery ML en Model Registry, pídele a tu administrador que te otorgue el rol de IAM de administrador de Vertex AI (roles/aiplatform.admin) en tu proyecto. Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.

También puedes obtener los permisos necesarios a través de roles personalizados o cualquier otro rol predefinido.

Registra modelos

Cuando creas un modelo de BigQuery ML, puedes registrarlo en Model Registry de las siguientes maneras:

  • En la consola de Google Cloud , selecciona el modelo en el panel Explorador y, luego, haz clic en Registrar en la pestaña Registro. (Vista previa)
  • Usa la sentencia CREATE MODEL. En la sentencia CREATE MODEL, puedes usar las siguientes opciones para registrar el modelo en Model Registry:

    • MODEL_REGISTRY: Registra el modelo en Model Registry.
    • VERTEX_AI_MODEL_ID: Especifica un ID de modelo para usarlo en el modelo de Model Registry. El ID de modelo está asociado con tu modelo de BigQuery ML y se puede ver en Model Registry. Cada modelo de BigQuery ML solo se puede registrar en un ID de modelo en Model Registry.
    • VERTEX_AI_MODEL_VERSION_ALIASES: Especifica uno o más alias de versión de modelo, que puedes usar para optimizar la implementación, administrar modelos y habilitar Vertex Explainable AI en los modelos.

    Si configuras la opción MODEL_REGISTRY cuando creas un modelo, este se registrará en Model Registry y se mostrará automáticamente allí una vez que haya completado el entrenamiento en BigQuery ML. Puedes usar la columna Fuente en la página Model Registry de la consola deGoogle Cloud para ver de dónde proviene un modelo.

Una vez que se registre un modelo de BigQuery ML, puedes usar las siguientes capacidades de Model Registry con tu modelo:

Todos los modelos creados con BigQuery ML aún se muestran en la interfaz de usuario de BigQuery, independientemente de si están registrados en Model Registry.

En el siguiente ejemplo, se muestra cómo crear y registrar un modelo de 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 modelo de BigQuery ML existente en Model Registry

Si no registras un modelo en Vertex AI cuando lo creas, puedes usar SQL, la herramienta de línea de comandos de bq o la API de BigQuery para registrarlo más adelante.

En los siguientes ejemplos, se muestra cómo registrar un modelo existente:

Console

  1. Ve a la página de BigQuery.

    Ir a BigQuery

  2. En el panel de la izquierda, haz clic en Explorar:

    Botón destacado del panel Explorador.

    Si no ves el panel izquierdo, haz clic en Expandir panel izquierdo para abrirlo.

  3. En el panel Explorador, haz clic en Conjuntos de datos y, luego, en un conjunto de datos que contenga tu modelo.

  4. Haz clic en la pestaña Modelos y, luego, en el modelo que deseas registrar.

  5. En el panel de detalles del modelo, selecciona la pestaña Registro.

  6. Haz clic en Registrar.

  7. En el panel Registrar el modelo en el Vertex Model Registry, realiza una de las siguientes acciones:

    • Selecciona Registrar como modelo nuevo. En Nombre del modelo, escribe un nombre para el modelo.

    • Selecciona Registrar como una nueva versión del modelo existente.

      1. En Nombre del modelo, escribe un nombre para el modelo.
      2. Opcional. Si deseas usar un alias de versión, selecciona Alias de versión y, luego, escribe un nombre de alias de versión.
  8. Haz clic en Registrar.

SQL

Usa la sentencia ALTER MODEL:

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

bq

Usa el comando bq update con la marca --model:

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

API

Usa el método models.patch. Pasa un objeto Model que contenga un objeto trainingRuns con un campo vertexAiModelId propagado:

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

Registra varias versiones de modelos de BigQuery ML

El primer modelo de BigQuery ML que registres con un ID de modelo determinado se mostrará como la versión 1 de ese modelo en Model Registry. Puedes registrar modelos de BigQuery ML adicionales como versiones diferentes de ese modelo registrado. Para ello, especifica el mismo ID de modelo de Vertex AI cuando crees o modifiques esos modelos de BigQuery ML.

Por ejemplo, podrías crear model1 en BigQuery ML y registrarlo en Model Registry como regression_model. model1se muestra como la versión 1 de regression_model en Model Registry. Si luego creas model2 en BigQuery ML y lo registras en Model Registry como regression_model, model2 se mostrará como la versión 2 de regression_model en Model Registry.

Si creas o reemplazas un modelo de BigQuery ML y usas un nombre de modelo de BigQuery ML que ya está asociado con un modelo en Model Registry, se borra la versión existente del modelo de Model Registry y se reemplaza por el modelo nuevo. Basándonos en el ejemplo anterior, si creas o reemplazas model2 en BigQuery ML con la instrucción CREATE OR REPLACE MODEL y las opciones MODEL_REGISTRY y VERTEX_AI_MODEL_ID, se reemplaza la versión 2 de regression_model en Model Registry, y Model Registry muestra la versión 1 y la versión 3 del modelo regression_model.

Cambia el ID de un modelo de BigQuery ML registrado

Una vez que se registra un modelo de BigQuery ML en Model Registry, no puedes cambiar el valor VERTEX_AI_MODEL_ID. Para registrar el modelo con un VERTEX_AI_MODEL_ID nuevo, usa una de las siguientes opciones:

  • Borra el modelo y vuelve a crearlo, especificando un valor nuevo para la opción VERTEX_AI_MODEL_ID. Este enfoque genera costos de reentrenamiento.

  • Copia el modelo y, luego, usa la sentencia ALTER MODEL para registrar el modelo nuevo con un valor VERTEX_AI_MODEL_ID nuevo.

Consideraciones de ubicación

Si registras un modelo multirregional de BigQuery ML en Model Registry, el modelo se convierte en un modelo regional en Vertex AI. Un modelo multirregional de US de BigQuery ML se sincroniza con Vertex AI (us-central1) y un modelo multirregional de UE de BigQuery ML se sincroniza con Vertex AI (europe-west4). Para los modelos de una sola región, no hay cambios.

Para obtener información acerca de cómo actualizar las ubicaciones de los modelos, consulta Elige tu ubicación.

Implementa un modelo en Vertex AI

Puedes usar diversos métodos para implementar un modelo en un extremo en Vertex AI. Para obtener más información, consulta Implementa un modelo en un extremo.

Borra modelos de BigQuery ML de Model Registry

Para borrar un modelo de BigQuery ML de Model Registry, bórralo en BigQuery ML. El modelo se quita automáticamente de Model Registry.

Hay varias formas de borrar un modelo de BigQuery ML. Para obtener más información, consulta Borra modelos.

Si deseas borrar un modelo en BigQuery ML que se registró en Model Registry y se implementó en un extremo, primero debes usar Model Registry para anular la implementación del modelo. Luego, puedes volver a BigQuery ML y borrar el modelo. Para obtener más información sobre cómo anular la implementación de un modelo, consulta Borra un extremo.

Limitaciones