Rotulagem de recursos pelo Vertex AI Pipelines

Dependendo do tipo de componente, recurso e da versão do SDK dos Google Cloud componentes de pipeline, os pipelines da Vertex AI propagam automaticamente os rótulos da execução do pipeline para os recursos gerados pelos Google Cloud componentes de pipeline ou exigem que você rotule os recursos gerados. No caso de componentes definidos pelo usuário, é necessário criar o código do componente para anexar os identificadores de uma variável de ambiente. Para mais informações, consulte Recursos gerados a partir de componentes definidos pelo usuário.

Recursos com rotulagem automática

Os pipelines da Vertex AI rotulam automaticamente os seguintes recursos, seja qual for a versão do SDK dos componentes do pipeline: Google Cloud

CustomJob recursos

Os pipelines da Vertex AI propagam automaticamente os rótulos da execução do pipeline para os recursos CustomJob. Isso é compatível com os seguintes componentes em todas as versões do SDK de componentes de pipeline do Google Cloud :

Recursos com rotulagem automática no SDK dos componentes do pipeline Google Cloud v1.0.31 ou mais recente

Os pipelines da Vertex AI rotulam automaticamente os seguintes recursos, se você usa o SDK dos componentes de pipeline Google Cloud v1.0.31 ou mais recente:

BatchPredictionJob recursos

Os pipelines da Vertex AI propagam automaticamente os rótulos da execução do pipeline para os recursos BatchPredictionJob gerados pelo componente ModelBatchPredictOp se você usa a versão 1.0.31 ou mais recente do SDK dos componentes de pipeline do Google Cloud .

Recursos endpoint da Vertex AI

Os pipelines da Vertex AI propagam automaticamente os rótulos da execução do pipeline para os recursos endpoint da Vertex AI gerados pelo componente EndpointCreateOp se você usa a versão 1.0.31 ou mais recente do SDK dos componentes de pipeline Google Cloud .

HyperparameterTuningJob recursos

Os pipelines da Vertex AI propagam automaticamente os rótulos da execução do pipeline para os recursos HyperparameterTuningJob gerados pelo componente HyperparameterTuningJobRunOp se você usa a versão 1.0.31 ou mais recente do SDK dos componentes de pipeline do Google Cloud .

Recursos do conjunto de dados da Vertex AI

Os pipelines da Vertex AI propagam automaticamente os rótulos da execução do pipeline para os recursos do conjunto de dados da Vertex AI gerados a partir dos seguintes componentes da Vertex AI se você usa a versão 1.0.31 ou mais recente do SDK dos componentes de pipeline Google Cloud :

Google Cloud Recursos de jobs do BigQuery

Os pipelines da Vertex AI propagam automaticamente os rótulos da execução do pipeline para Google Cloud os recursos do job do BigQuery gerados a partir de qualquer um dos componentes do BigQuery ML, se você usar a versão 1.0.31 ou mais recente do SDK dos componentes do pipeline Google Cloud .

Google Cloud Recursos de jobs do Dataproc

Os pipelines da Vertex AI propagam automaticamente os rótulos da execução do pipeline para os recursos do Google Cloud job do Dataproc gerados a partir de qualquer um dos componentes do Dataproc sem servidor, se você usar a versão 1.0.31 ou mais recente do SDK dos componentes de pipeline do Google Cloud .

Recursos TrainingPipeline e Model

Os pipelines da Vertex AI propagam automaticamente os rótulos da execução do pipeline para os recursos TrainingPipeline e Model gerados pelos seguintes componentes do AutoML se você usa a versão 1.0.31 ou mais recente do SDK dos componentes de pipeline do Google Cloud :

Google Cloud Recursos da tabela do BigQuery

O Vertex AI Pipelines propaga automaticamente os rótulos da execução do pipeline Google Cloud dos recursos de tabela do BigQuery gerados pelo componente ForecastingPreprocessingOp se você usa a versão 1.0.31 ou mais recente do Google Cloud SDK dos componentes de pipeline.

Recursos sem rotulagem automática

Os pipelines da Vertex AI não rotulam os seguintes recursos automaticamente, seja qual for a versão do SDK dos componentes do pipeline: Google Cloud

Google Cloud Recursos do Dataflow

Os pipelines da Vertex AI não rotulam automaticamente os recursos do Dataflow gerados pelo componente DataflowPythonJobOp. Você pode incluir instruções no código para rotular os recursos.

Use o exemplo de código a seguir para propagar os rótulos de faturamento da execução do pipeline para qualquer recurso do Google Cloud Dataflow gerado com o componente DataflowPythonJobOp:

  import argparse
  import apache_beam as beam
  ...
  def run(argv=None):
    parser = argparse.ArgumentParser()
    # Don't add `--labels` to the argument list, so that they will be passed to the pipeline_options 
    parser.add_argument('--input', )
    parser.add_argument('--output', )
  ...
    known_args, pipeline_args = parser.parse_known_args(argv)
    pipeline_options = PipelineOptions(pipeline_args)
    with beam.Pipeline(options=pipeline_options) as p:

Recursos gerados por componentes definidos pelo usuário

Os pipelines da Vertex AI não rotulam automaticamente os recursos Google Cloud gerados com componentes definidos pelo usuário. É possível incluir instruções no código para recuperar os rótulos da variável de ambiente VERTEX_AI_PIPELINES_RUN_LABELS e anexá-los aos recursos Google Cloud gerados usando o componente no ambiente de execução.

A variável de ambiente VERTEX_AI_PIPELINE_RUN_LABELS contém os rótulos no formato JSON como pares de chave-valor.

Por exemplo: { "label1_key": "label1_value", "label2_key": "label2_value", ...}

Se você estiver usando o SDK Vertex AI para Python, use o exemplo de código a seguir no código do componente para propagar os rótulos da variável de ambiente para um novo recurso gerado pelo componente:

import os
import json
from google.cloud import aiplatform

aiplatform.init(
  project='PROJECT_ID',
  location='LOCATION'
)

aiplatform.RESOURCE.create(
  ...
  json.loads(os.getenv("VERTEX_AI_PIPELINES_RUN_LABELS"))
)

Substitua:

  • PROJECT_ID: o projeto do Google Cloud em que este pipeline é executado.

  • LOCATION: o local ou a região em que o pipeline é executado.

  • RESOURCE: Google Cloud recurso gerado pelo componente, por exemplo, CustomJob ou Model.

Também é possível usar o utilitário gcp_labels_util.attach_system_labels se você quiser usar o Python para analisar a variável de ambiente. Esse utilitário só poderá ser usado se você tiver acesso à biblioteca de componentes do pipeline Google Cloud e estiver usando o Python. Para mais informações, consulte o código-fonte da função utilitária no GitHub.

Recursos sem suporte de identificação

Os pipelines da Vertex AI não são compatíveis com a propagação do rótulo de faturamento para os seguintes recursos:

Recursos de ML Metadata

Os recursos do ML Metadata são faturados no nível da loja. Não é possível usar rótulos de faturamento para entender o custo no nível do recurso.

Recursos do Cloud Storage

O Vertex AI Pipelines não propaga rótulos de faturamento para recursos do Cloud Storage, como buckets do Cloud Storage.

A seguir