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.

Requisitos previos

Para registrar modelos de BigQuery ML en Model Registry, debes cumplir con varios requisitos previos.

Habilita la API de Vertex AI

Debes habilitar la API de Vertex AI en tu proyecto antes de registrar modelos de BigQuery ML en Model Registry. Para ello, puedes usar la página APIs y servicios en la consola de Google Cloud o ejecutar el siguiente comando de Google Cloud CLI:

gcloud --project PROJECT_ID services enable aiplatform.googleapis.com

Otorga permisos de IAM

Se debe otorgar el rol de administrador de Vertex AI (roles/aiplatform.admin) a la cuenta de servicio o de usuario que usas para registrar modelos de BigQuery ML en Model Registry. Para obtener más información acerca de los roles y permisos de Vertex AI, consulta Control de acceso con IAM.

Usa el siguiente comando para otorgar el rol de administrador de Vertex AI a una cuenta de servicio:

gcloud projects add-iam-policy-binding PROJECT_ID --member=serviceAccount:SERVICE_ACCOUNT_EMAIL --role=roles/aiplatform.admin --condition=None

Usa el siguiente comando para otorgar el rol de administrador de Vertex AI a una cuenta de usuario:

gcloud projects add-iam-policy-binding PROJECT_ID --member=user:USER_ACCOUNT --role=roles/aiplatform.admin --condition=None

Registra modelos

Cuando creas un modelo de BigQuery ML, puedes usar la opción MODEL_REGISTRY en la sentencia CREATE MODEL para registrar el modelo en Model Registry. La sentencia CREATE MODEL también contiene la opción VERTEX_AI_MODEL_ID para especificar el ID de modelo y la opción VERTEX_AI_MODEL_VERSION_ALIASES para especificar 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 mostrará automáticamente en Model Registry una vez que haya completado el entrenamiento en BigQuery ML. Puedes usar la columna Fuente en la página Model Registry de la consola de Google Cloud para ver de dónde proviene un modelo.

Una vez que se registre un modelo de BigQuery ML, puedes usar las funciones de Model Registry con tu modelo. Puedes implementar el modelo en un extremo, comparar versiones de modelos, realizar predicciones, supervisar el modelo y ver evaluaciones de modelos. Además, si deseas comprender qué atributos contribuyen a las predicciones, puedes usar Vertex Explainable AI para obtener explicaciones basadas en atributos sobre el 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.

Especifica un ID de modelo de Vertex AI

Para facilitar la administración de modelos, especifica un ID de modelo de Vertex AI con la opción VERTEX_AI_MODEL_ID cuando crees el modelo. El ID de modelo está asociado con tu modelo de BigQuery ML y se puede ver en Model Registry.

El ID del modelo de Vertex AI no acepta letras mayúsculas. Si no especificas un ID de modelo de Vertex AI, se usa el ID de modelo de BigQuery ML. En este caso, asegúrate de que el ID del modelo de BigQuery ML también esté en minúscula. Para ver una lista completa de los requisitos de ID del modelo, consulta las especificaciones en la documentación de referencia de carga.

Para actualizar el ID de modelo de Vertex AI, debes borrar el modelo y volver a crearlo con el nuevo ID de modelo de Vertex AI correcto. No puedes actualizar el ID de modelo de Vertex AI con el comando ALTER MODEL.

Especifica un alias de modelo de Vertex AI

Para especificar un alias de modelo, especifica la opción VERTEX_AI_MODEL_VERSION_ALIASES cuando crees el modelo. Los alias de modelo son útiles para recuperar o implementar una versión del modelo en particular por referencia sin necesidad de conocer el ID de la versión específica. De esta manera, funcionan de manera similar a las etiquetas de Docker o a las referencias de ramas en Git.

Para obtener más información acerca de cómo funcionan los alias de Model Registry, consulta Cómo usar los alias de la versión de modelo.

Registra varias versiones de modelos de BigQuery ML

Si deseas crear una versión nueva de un modelo de BigQuery ML existente y compararla con otras de Model Registry, debes especificar un ID de modelo de BigQuery ML diferente cuando crees el modelo y, luego, registrarlo en el ID de modelo de Model Registry original.

Si creas o reemplazas un modelo de BigQuery ML y usas un ID 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.

Registra un modelo de BigQuery ML existente en Model Registry

Los modelos de BigQuery ML no se agregan automáticamente a Model Registry. Puedes usar la sentencia ALTER MODEL para agregar un ID de modelo y registrar el modelo en Model Registry, y también actualizar metadatos, como la descripción y las etiquetas del modelo.

Para obtener más información acerca de cómo actualizar los metadatos del modelo en BigQuery ML, consulta Actualiza los metadatos del modelo.

Para registrar un modelo existente, sigue estos pasos:

SQL

ALTER MODEL [IF EXISTS] <model_name> SET OPTIONS (vertex_ai_model_id="VERTEX_AI_MODEL_ID");

bq

Puedes actualizar un modelo con la herramienta de línea de comandos de bq; para ello, ejecuta el comando bq update y especifica un ID de modelo para el modelo. vertex_model_id puede ser un ID nuevo o un ID de modelo existente de Model Registry. Cada modelo de BigQuery ML solo se puede registrar en un model_id en el Model Registry.

bq update --model --vertex_ai_model_id "VERTEX_AI_MODEL_ID" PROJECT_ID:DATASET.MODEL

API

  1. Ve a Método: models.patch.
  2. Completa los campos Parámetros de la solicitud y Cuerpo de la solicitud.
  3. Haz clic en el botón EJECUTAR.
  {
    "trainingRuns": [
      {
        "vertexAiModelId": "VERTEX_AI_MODEL_ID"
      }
  }
 ```

Si especificas un ID de modelo nuevo cuando registras el modelo, el modelo de BigQuery ML se muestra como la versión 1 del modelo en Model Registry. Para agregar el modelo como una versión nueva de un modelo existente, especifica el ID de modelo existente. Esto registra automáticamente el modelo nuevo como la versión más reciente del modelo existente.

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, si el costo de volver a entrenar es aceptable.

  • 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.

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.

¿Qué sigue?

Usa el notebook Predicción en línea con BigQuery ML para entrenar un modelo con BigQuery ML, registrar el modelo en Model Registry y, luego, implementarlo en un extremo para la predicción en tiempo real.