Ressourcen-Labeling von Vertex AI Pipelines

Je nach Art der Komponente, der Ressource und der Version des Google Cloud Pipeline Components SDK leiten Vertex AI Pipelines die Labels aus Ihrer Pipelineausführung entweder automatisch an die von Google Cloud Pipeline Components generierten Ressourcen weiter oder Sie müssen die generierten Ressourcen selbst labeln. Bei benutzerdefinierten Komponenten müssen Sie den Komponentencode so erstellen, dass die Labels aus einer Umgebungsvariablen angehängt werden. Weitere Informationen finden Sie unter Aus benutzerdefinierten Komponenten generierte Ressourcen.

Ressourcen mit automatischem Labeling

Vertex AI Pipelines fügt den folgenden Ressourcen unabhängig von der Version des Google Cloud Pipeline Components SDK automatisch ein Label hinzu:

CustomJob Ressourcen

Vertex AI Pipelines überträgt die Labels aus Ihrer Pipelineausführung automatisch an CustomJob-Ressourcen. Das wird von den folgenden Komponenten in allen Versionen des Google Cloud Pipeline Components SDK unterstützt:

Ressourcen mit automatischer Labelerstellung in Google Cloud Pipeline Components SDK Version 1.0.31 oder höher

Vertex AI Pipelines fügt den folgenden Ressourcen automatisch ein Label hinzu, wenn Sie das Google Cloud Pipeline Components SDK Version 1.0.31 oder höher verwenden:

BatchPredictionJob Ressourcen

Vertex AI Pipelines leitet automatisch Labels aus Ihrer Pipeline-Ausführung an BatchPredictionJob-Ressourcen weiter, die aus der Komponente ModelBatchPredictOp generiert werden, wenn Sie Version 1.0.31 oder höher des Google Cloud Pipeline Components SDK verwenden.

Vertex AI-endpoint-Ressourcen

Vertex AI Pipelines leitet automatisch Labels aus Ihrer Pipeline-Ausführung an Vertex AI-endpoint-Ressourcen weiter, die von der Komponente EndpointCreateOp generiert werden, wenn Sie Version 1.0.31 oder höher des Google Cloud Pipeline Components SDK verwenden.

HyperparameterTuningJob Ressourcen

Vertex AI Pipelines leitet automatisch Labels aus Ihrer Pipeline-Ausführung an HyperparameterTuningJob-Ressourcen weiter, die aus der Komponente HyperparameterTuningJobRunOp generiert werden, wenn Sie Version 1.0.31 oder höher des Google Cloud Pipeline Components SDK verwenden.

Vertex AI-Datasetressourcen

Vertex AI Pipelines leitet Labels von Ihrer Pipeline-Ausführung automatisch an Vertex AI-Dataset-Ressourcen weiter, die aus den folgenden Vertex AI-Komponenten generiert werden, wenn Sie Version 1.0.31 oder höher des Google Cloud Pipeline Components SDK verwenden:

Google Cloud BigQuery-Jobressourcen

Vertex AI Pipelines leitet automatisch Labels aus Ihrer Pipeline-Ausführung an Google Cloud BigQuery-Jobressourcen weiter, die aus einer der BigQuery ML-Komponenten generiert wurden, wenn Sie Version 1.0.31 oder höher des Google Cloud Pipeline Components SDK verwenden.

Google Cloud Ressourcen für Dataproc-Jobs

Vertex AI Pipelines leitet automatisch Labels aus Ihrer Pipeline-Ausführung an Google Cloud Dataproc-Jobressourcen weiter, die aus einer der Dataproc-serverlosen Komponenten generiert wurden, wenn Sie Version 1.0.31 oder höher des Google Cloud Pipeline Components SDK verwenden.

TrainingPipeline- und Model-Ressourcen

Vertex AI Pipelines leitet Labels aus Ihrer Pipeline-Ausführung automatisch an TrainingPipeline- und Model-Ressourcen weiter, die aus den folgenden AutoML-Komponenten generiert werden, wenn Sie Version 1.0.31 oder höher des Google Cloud Pipeline Components SDK verwenden:

Google Cloud BigQuery-Tabellenressourcen

Vertex AI Pipelines leitet automatisch Labels aus Ihrer Pipeline weiter, indem Sie Google Cloud BigQuery-Tabellenressourcenressourcen ausführen, die aus der Komponente ForecastingPreprocessingOp generiert wurden, wenn Sie Version 1.0.31 oder höher des Google Cloud Pipeline Components SDK verwenden.

Ressourcen ohne automatisches Labeling

Vertex AI Pipelines fügt den folgenden Ressourcen unabhängig von der Version des Google Cloud Pipeline Components SDK kein Label hinzu:

Google Cloud Dataflow-Ressourcen

Vertex AI Pipelines fügt Dataflow-Ressourcen, die von der DataflowPythonJobOp-Komponente generiert werden, nicht automatisch ein Label hinzu. Sie können Anweisungen in Ihren Code aufnehmen, um die Ressourcen zu labeln.

Mit dem folgenden Codebeispiel können Sie Abrechnungslabels aus Ihrer Pipeline-Ausführung an alle Google Cloud Dataflow-Ressourcen weitergeben, die mit der Komponente DataflowPythonJobOp generiert wurden:

  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:

Aus benutzerdefinierten Komponenten generierte Ressourcen

Vertex AI Pipelines fügt Google Cloud -Ressourcen, die aus benutzerdefinierten Komponenten generiert wurden, nicht automatisch ein Label hinzu. Sie können Anweisungen in Ihren Code aufnehmen, um die Labels aus der Umgebungsvariablen VERTEX_AI_PIPELINES_RUN_LABELS abzurufen und diese Labels den Google Cloud Ressourcen anzuhängen, die bei der Laufzeit mit der Komponente generiert wurden.

Die Umgebungsvariable VERTEX_AI_PIPELINE_RUN_LABELS enthält die Labels im JSON-Format als Schlüssel/Wert-Paare.

Beispiel: { "label1_key": "label1_value", "label2_key": "label2_value", ...}

Wenn Sie das Vertex AI SDK für Python verwenden, verwenden Sie das folgende Codebeispiel in Ihrem Komponentencode, um Labels von der Umgebungsvariablen an eine neue Ressource weiterzuleiten, die von der Komponente generiert wird:

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"))
)

Dabei gilt:

  • PROJECT_ID: Das Google Cloud-Projekt, in dem diese Pipeline ausgeführt wird.

  • LOCATION: Der Standort oder die Region, in der diese Pipeline ausgeführt wird.

  • RESOURCE: Google Cloud Ressource, die aus der Komponente generiert wird, z. B. CustomJob oder Model.

Sie können auch das Dienstprogramm gcp_labels_util.attach_system_labels verwenden, wenn Sie die Umgebungsvariable mit Python parsen möchten. Sie können dieses Dienstprogramm nur verwenden, wenn Sie Zugriff auf die Google Cloud Pipeline Components-Bibliothek haben und Python verwenden. Weitere Informationen finden Sie im Quellcode der Dienstfunktion in GitHub.

Ressourcen ohne Labelunterstützung

Vertex AI Pipelines unterstützt die Weiterleitung von Abrechnungslabels nicht zu den folgenden Ressourcen:

Ressourcen zu ML-Metadaten

ML-Metadatenressourcen werden auf Store-Ebene abgerechnet. Sie können die Kosten auf Ressourcenebene anhand der Abrechnungslabels nicht verstehen.

Cloud Storage-Ressourcen

Vertex AI Pipelines überträgt keine Abrechnungslabels auf Cloud Storage-Ressourcen wie Cloud Storage-Buckets.

Nächste Schritte