Ressourcen-Labeling von Vertex AI Pipelines

Abhängig vom Typ der Komponente, der Ressource und der Version des Google Cloud Pipeline Components SDK leitet Vertex AI Pipelines die Labels aus Ihrer Pipeline-Ausführung entweder automatisch an die Ressourcen weiter, die aus Google Cloud Pipeline Components generiert werden, oder Sie müssen die generierten Ressourcen selbst labeln. Bei nutzerdefinierten Komponenten müssen Sie den Komponentencode so erstellen, dass die Labels aus einer Umgebungsvariable angehängt werden. Weitere Informationen finden Sie unter Ressourcen, die aus benutzerdefinierten Komponenten generiert werden.

Ressourcen mit automatischer Kennzeichnung

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 leitet die Labels aus Ihrer Pipeline-Ausführung automatisch an CustomJob-Ressourcen weiter. Dies 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 EndpointCreateOp-Komponente 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-Dataset-Ressourcen

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-Jobressourcenressourcen 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 Dataproc-Job-Ressourcen

Vertex AI Pipelines leitet automatisch Labels aus Ihrer Pipeline-Ausführung an Google Cloud Dataproc-Jobressourcenressourcen weiter, die aus einer der serverlosen Dataproc-Komponenten erstellt 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-Ausführung an Google Cloud BigQuery-Tabellenressourcen weiter, die aus der Komponente ForecastingPreprocessingOp generiert werden, wenn Sie Version 1.0.31 oder höher des Google Cloud Pipeline Components SDK verwenden.

Ressourcen ohne automatische Kennzeichnung

Vertex AI Pipelines fügt die folgenden Ressourcen unabhängig von der Version des Google Cloud Pipeline Components SDK nicht automatisch ein 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 kennzeichnen.

Mit dem folgenden Codebeispiel können Sie Abrechnungslabels aus Ihrem Pipeline-Lauf 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:

Ressourcen, die aus benutzerdefinierten Komponenten generiert werden

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 einfügen, um die Labels aus der Umgebungsvariable VERTEX_AI_PIPELINES_RUN_LABELS abzurufen und diese Labels an die Google Cloud -Ressourcen anzuhängen, die zur Laufzeit mit der Komponente generiert werden.

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, können Sie mit dem folgenden Codebeispiel Labels aus der Umgebungsvariable an eine neue Ressource weitergeben, die aus 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 gcp_labels_util.attach_system_labels-Dienstprogramm 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 Unterstützung für Labels

Vertex AI Pipelines unterstützt die Weitergabe von Abrechnungslabels an die folgenden Ressourcen nicht:

ML-Metadaten-Ressourcen

ML Metadata-Ressourcen werden auf Speicherebene 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