Gerenciar modelos do BigQuery ML na Vertex AI

É possível registrar modelos do BigQuery ML com o Vertex AI Model Registry e gerenciá-los com modelos da Vertex AI sem precisar exportá-los. Ao registrar modelos com o Model Registry, é possível controlar versões, avaliar e implantar os modelos para previsão on-line usando uma única interface e sem precisar de um contêiner de exibição. Se você não conhece a Vertex AI e como ela se integra ao BigQuery ML, consulte Usuários da Vertex AI para BigQuery.

Para saber mais sobre a previsão da Vertex AI, consulte Visão geral de como receber previsões na Vertex AI.

Para saber como gerenciar os modelos do BigQuery ML da Vertex AI Model Registry, consulte Introdução à Vertex AI Model Registry.

Pré-requisitos

Para registrar modelos do BigQuery ML no Model Registry, é preciso atender a vários pré-requisitos.

Ativar a API Vertex AI

Ative a API Vertex AI no projeto antes de registrar modelos do BigQuery ML no Model Registry. Você pode fazer isso usando as APIs e Serviços no console do Google Cloud ou executando o seguinte comando da CLI do Google Cloud:

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

Conceder permissões do IAM

A conta de serviço ou de usuário usada para registrar modelos do BigQuery ML no Registro de modelos precisa ter o papel Administrador da Vertex AI (roles/aiplatform.admin). Para saber mais sobre os papéis e permissões da Vertex AI, consulte Controle de acesso com o IAM.

Use o comando a seguir para conceder o papel de administrador da Vertex AI a uma conta de serviço:

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

Use o seguinte comando para conceder o papel de administrador da Vertex AI a uma conta de usuário:

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

Registrar modelos

Ao criar um modelo do BigQuery ML, é possível usar a opção MODEL_REGISTRY na instrução CREATE MODEL para registrar o modelo no Model Registry. A instrução CREATE MODEL também contém a opção VERTEX_AI_MODEL_ID para especificar o ID do modelo e a opção VERTEX_AI_MODEL_VERSION_ALIASES para especificar um ou mais aliases de versão do modelo, que podem ser usados para simplificar a implantação, gerenciar modelos e ativar a Vertex Explainable AI em modelos.

Se você definir a opção MODEL_REGISTRY ao criar um modelo, ele é exibido automaticamente no Model Registry depois de concluir o treinamento no BigQuery ML. Você pode usar a coluna Origem na página Model Registry do console do Google Cloud para saber a origem de um modelo.

Depois que um modelo do BigQuery ML é registrado, é possível usar recursos do Model Registry com seu modelo. Você pode implantar o modelo em um endpoint, comparar versões do modelo, fazer previsões, monitorar o modelo e visualizar as avaliações dele. Além disso, se você quiser entender quais atributos contribuem para suas previsões, poderá usar a Vertex Explainable AI para receber explicações baseadas em recursos sobre seu modelo.

Todos os modelos criados com o BigQuery ML ainda são exibidos na interface do usuário do BigQuery, mesmo que não estejam registrados no Model Registry.

Especificar um ID do modelo da Vertex AI

Para facilitar o gerenciamento de modelos, especifique um ID de modelo da Vertex AI usando a opção VERTEX_AI_MODEL_ID ao criar o modelo. O ID do modelo está associado ao seu modelo do BigQuery ML e pode ser visto no Vertex Model Registry.

O ID do modelo da Vertex AI não aceita letras maiúsculas. Se você não especificar um ID de modelo da Vertex AI, o ID do modelo do BigQuery ML é usado. Nesse caso, confira se o ID do modelo do BigQuery ML também está em letras minúsculas. Veja uma lista completa dos requisitos de ID do modelo nas especificações da documentação de referência de uploads.

Para atualizar o ID do modelo da Vertex AI, exclua o modelo e recrie-o com o novo ID correto do modelo da Vertex AI. Não é possível atualizar o ID do modelo da Vertex AI usando o comando ALTER MODEL.

Especificar um alias de modelo da Vertex AI

Para especificar um alias de modelo, especifique a opção VERTEX_AI_MODEL_VERSION_ALIASES ao criar o modelo. Os aliases de modelo são úteis para buscar ou implantar uma versão de modelo específica por referência sem precisar do ID da versão. Dessa forma, eles operam de maneira semelhante às tags do Docker ou às referências de ramificação no Git.

Para saber mais sobre como os aliases do Model Registry funcionam, consulte Como usar aliases de versão de modelo.

Registrar várias versões de modelos do BigQuery ML

Se você quiser criar uma nova versão de um modelo do BigQuery ML compará-lo com outros no Model Registry, precisa especificar um ID de modelo diferente do BigQuery ML ao criar o modelo e, em seguida, registrá-lo no ID do modelo original do Model Registry.

Se você criar ou substituir um modelo do BigQuery ML e usar um ID do modelo do BigQuery ML que já está associado a um modelo no Model Registry, a versão atual do modelo do Model Registry é excluída e substituída pelo novo modelo.

Registrar um modelo atual do BigQuery ML no Model Registry

Os modelos do BigQuery ML não são adicionados automaticamente ao Model Registry. É possível usar a declaração ALTER MODEL para adicionar um ID de modelo e registrar o modelo no Model Registry, além de atualizar metadados, como a descrição e os rótulos do modelo.

Para saber mais sobre como atualizar metadados do modelo no BigQuery ML, consulte Atualizar metadados do modelo.

Para registrar um modelo atual, faça o seguinte:

SQL

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

bq

É possível atualizar um modelo com a ferramenta de linha de comando bq. Basta executar o comando bq update e especificar um ID de modelo para o modelo. O vertex_model_id pode ser um novo ID ou um ID de modelo do Model Registry. Cada modelo do BigQuery ML só pode ser registrado em um model_id no Model Registry.

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

API

  1. Acesse Método: models.patch
  2. Preencha os Parâmetros de solicitação e o Corpo da solicitação.
  3. Clique no botão EXECUTAR.
  {
    "trainingRuns": [
      {
        "vertexAiModelId": "VERTEX_AI_MODEL_ID"
      }
  }
 ```

Se você especificar um novo ID de modelo ao registrá-lo, o modelo do BigQuery ML é exibido como versão 1 no Model Registry. Para adicionar o modelo como uma nova versão de um modelo atual, especifique o ID do modelo atual. Isso registra automaticamente o novo modelo como a versão mais recente do atual.

Mudar o ID de um modelo registrado do BigQuery ML

Depois que um modelo do BigQuery ML é registrado no Model Registry, não será possível alterar o valor VERTEX_AI_MODEL_ID. Para registrar o modelo com um novo VERTEX_AI_MODEL_ID, use uma das seguintes opções:

  • Exclua o modelo e recrie-o se o custo do retreinamento for aceitável.

  • Copie o modelo e use a instrução ALTER MODEL para registrar o novo modelo com um novo valor VERTEX_AI_MODEL_ID.

Considerações sobre o local

Se você registrar um modelo multirregional do BigQuery ML no Model Registry, o modelo se torna um modelo regional na Vertex AI. Um modelo multirregional dos EUA do BigQuery ML é sincronizado com a Vertex AI (us-central1), e um modelo multirregional da UE do BigQuery é sincronizado com a Vertex AI (europe-west4). Para os modelos de região única, não há mudanças.

Para informações sobre como atualizar locais de modelos, consulte Como escolher seu local.

Excluir modelos do BigQuery ML do Model Registry

Para excluir um modelo do BigQuery ML do Model Registry, exclua o modelo no BigQuery ML. O modelo é removido automaticamente do Model Registry.

Há várias maneiras de excluir um modelo do BigQuery ML. Para mais informações, consulte Excluir modelos.

Se você quiser excluir um modelo no BigQuery ML que foi registrado no Model Registry e implantado em um endpoint, primeiro use o Model Registry para cancelar a implantação do modelo. Em seguida, você pode retornar ao BigQuery ML e excluir o modelo. Para mais informações sobre como cancelar a implantação de um modelo, consulte Excluir um endpoint.

A seguir

Use o notebook de previsão on-line com o BigQuery ML para treinar um modelo usando o BigQuery ML, registrar o modelo no Model Registry e implantá-lo em um endpoint para previsão em tempo real.