Etiquetado de recursos de Vertex AI Pipelines

Según el tipo de componente, recurso y versión del SDK de componentes de canalización de Google Cloud, Vertex AI Pipelines propaga automáticamente las etiquetas de la ejecución de la canalización a los recursos generados a partir de componentes de canalización de Google Cloud o requiere que etiquetes los recursos generados. En el caso de los componentes definidos por el usuario, debes crear el código de tu componente para adjuntar las etiquetas de una variable de entorno. Para obtener más información, consulta Recursos generados a partir de componentes definidos por el usuario.

Recursos con etiquetado automático

Vertex AI Pipelines etiqueta automáticamente los siguientes recursos, independientemente de la versión del SDK de componentes de canalización de Google Cloud:

CustomJob recursos

Vertex AI Pipelines propaga automáticamente las etiquetas de la ejecución de la canalización a los recursos CustomJob. Esto es compatible con los siguientes componentes en todas las versiones del SDK de componentes de canalización de Google Cloud:

Recursos con etiquetado automático en el SDK de componentes de canalización de Google Cloud v1.0.31 o posterior

Vertex AI Pipelines etiqueta automáticamente los siguientes recursos si usas el SDK de componentes de canalización de Google Cloud v1.0.31 o una versión posterior:

BatchPredictionJob recursos

Vertex AI Pipelines propaga de forma automática las etiquetas de la ejecución de tu canalización a los recursos BatchPredictionJob generados a partir del componente ModelBatchPredictOp si usas la versión v1.0.31 o una posterior del SDK de componentes de canalización de Google Cloud.

Recursos endpoint de Vertex AI

Vertex AI Pipelines propaga de forma automática las etiquetas de la ejecución de tu canalización a los recursos endpoint de Vertex AI generados a partir del componente EndpointCreateOp si usas la versión v1.0.31 o una posterior del SDK de componentes de canalización de Google Cloud.

HyperparameterTuningJob recursos

Vertex AI Pipelines propaga de forma automática las etiquetas de la ejecución de tu canalización a los recursos HyperparameterTuningJob generados a partir del componente HyperparameterTuningJobRunOp si usas la versión v1.0.31 o una posterior del SDK de componentes de canalización de Google Cloud.

Recursos del conjunto de datos de Vertex AI

Vertex AI Pipelines propaga automáticamente las etiquetas de la ejecución de tu canalización a los recursos del conjunto de datos de Vertex AI generados a partir de los siguientes componentes de Vertex AI si usas la versión v1.0.31 o posterior del SDK de componentes de canalización de Google Cloud:

Recursos de trabajo de BigQuery de Google Cloud

Vertex AI Pipelines propaga automáticamente las etiquetas de la ejecución de la canalización a los recursos de recursos de trabajo de BigQuery de Google Cloud generados desde cualquiera de los componentes de BigQuery ML si usas la versión v1.0.31 o superior del SDK de componentes de canalización de Google Cloud.

Recursos del trabajo de Dataproc para Google Cloud

Vertex AI Pipelines propaga automáticamente las etiquetas de la ejecución de la canalización a los recursos de recursos de trabajo de Google Cloud Dataproc generados a partir de cualquiera de los componentes de Dataproc Serverless si usas la versión v1.0.31 o superior del SDK de componentes de Google Cloud Pipelines.

Recursos TrainingPipeline y Model.

Vertex AI Pipelines propaga de forma automática las etiquetas de la ejecución de tu canalización a los recursos de recursos TrainingPipeline y Model generados a partir de los siguientes componentes de AutoML si usas la versión v1.0.31 o una posterior del SDK de componentes de canalización de Google Cloud:

Recursos de la tabla de Google Cloud BigQuery

Vertex AI Pipelines propaga automáticamente las etiquetas de los recursos de la tabla de Google Cloud BigQuery que se ejecutan en el componente ForecastingPreprocessingOp si usas la versión v1.0.31 o superior del SDK de componentes de canalización de Google Cloud.

Recursos sin etiquetado automático

Vertex AI Pipelines no etiqueta los siguientes recursos de forma automática, sin importar la versión del SDK de componentes de canalización de Google Cloud:

Recursos de Google Cloud Dataflow

Vertex AI Pipelines no etiqueta de forma automática los recursos de Dataflow que genera el componente DataflowPythonJobOp. Puedes incluir instrucciones en tu código para etiquetar los recursos.

Usa la siguiente muestra de código para propagar las etiquetas de facturación de tu canalización que se ejecuta en cualquier recurso de Google Cloud Dataflow generado con el 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 generados a partir de componentes definidos por el usuario

Vertex AI Pipelines no etiqueta de forma automática los recursos de Google Cloud generados a partir de componentes definidos por el usuario. Puedes incluir instrucciones en tu código para recuperar las etiquetas de la variable de entorno VERTEX_AI_PIPELINES_RUN_LABELS y adjuntarlas a los recursos de Google Cloud generados con el componente en el entorno de ejecución.

La variable de entorno VERTEX_AI_PIPELINE_RUN_LABELS contiene las etiquetas en formato JSON como pares clave-valor.

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

Si usas el SDK de Vertex AI para Python, usa la siguiente muestra de código en el código del componente para propagar las etiquetas de la variable de entorno a un recurso nuevo generado a partir del 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"))
)

Reemplaza lo siguiente:

  • PROJECT_ID: Es el proyecto de Google Cloud en el que se ejecuta esta canalización.

  • LOCATION: La ubicación o región en la que se ejecuta esta canalización.

  • RESOURCE: Recurso de Google Cloud generado a partir del componente, por ejemplo, CustomJob o Model.

También puedes usar la utilidad gcp_labels_util.attach_system_labels si deseas usar Python para analizar la variable de entorno. Puedes usar esta utilidad solo si tienes acceso a la biblioteca de componentes de canalización de Google Cloud y usas Python. Para obtener más información, consulta el código fuente de la función de utilidad en GitHub.

Recursos sin compatibilidad con el etiquetado

Vertex AI Pipelines no admite la propagación de etiquetas de facturación a los siguientes recursos:

Recursos de ML Metadata

Los recursos de ML Metadata se facturan a nivel de almacén. No puedes usar etiquetas de facturación para comprender el costo a nivel de recurso.

Recursos de Cloud Storage

Vertex AI Pipelines no propaga etiquetas de facturación a los recursos de Cloud Storage, como los buckets de Cloud Storage.

¿Qué sigue?