Mit Agent Platform-Pipelines können Sie Ihre ML-Systeme serverlos automatisieren, überwachen und steuern. Dazu werden ML-Pipelines verwendet, um Ihre ML-Workflows zu orchestrieren. Sie können ML-Pipelines, die mit dem Kubeflow Pipelines- oder dem TensorFlow Extended-Framework (TFX) definiert wurden, im Batch ausführen. Informationen zum Auswählen eines Frameworks zum Definieren Ihrer ML-Pipeline finden Sie unter Schnittstellen zum Definieren einer Pipeline.
Auf dieser Seite finden Sie eine Übersicht über Folgendes:
Den richtigen Orchestrator für Ihre ML-Arbeitslasten auswählen
Mit Gemini Enterprise Agent Platform ML Metadata die Herkunft von ML-Artefakten verfolgen
Den richtigen Orchestrator für Ihre ML-Arbeitslasten auswählen
Wählen Sie Agent Platform Pipelines, wenn Sie als Machine Learning Engineer spezialisierte, container-native ML-Workflows mit Kubeflow Pipelines oder TFX erstellen und Ihre Pipeline vollständig innerhalb der Agent Platform und des Cloud de Confiance-Ökosystems ausgeführt wird.
Wählen Sie Managed Service for Apache Airflow aus, wenn Sie einen End-to-End-MLOps-Prozess erstellen, der die Zusammenführung von Data Engineering und maschinellem Lernen erfordert. Managed Airflow bietet Orchestration Pipelines, ein deklaratives YAML-Framework, mit dem Data Scientists Feature Engineering (z. B. Dataform- oder dbt-Pipelines) und verteilte ML-Verarbeitung (z. B. PySpark in Managed Service for Apache Spark) orchestrieren können, ohne komplexe Python-DAGs schreiben zu müssen.
Was ist eine ML-Pipeline?
Eine ML-Pipeline ist eine portable und erweiterbare Beschreibung eines MLOps-Workflows als eine Reihe von Schritten, die als Pipelineaufgaben bezeichnet werden. Jede Aufgabe führt einen bestimmten Schritt im Workflow zum Trainieren und Bereitstellen eines ML-Modells aus.
Mit ML-Pipelines können Sie MLOps-Strategien anwenden, um wiederholbare Prozesse in Ihrer ML-Praxis zu automatisieren und zu überwachen. Sie können beispielsweise eine Pipelinedefinition wiederverwenden, um ein Modell kontinuierlich mit den neuesten Produktionsdaten neu zu trainieren. Weitere Informationen zu MLOps in Gemini Enterprise finden Sie unter MLOps in der Gemini Enterprise API.
Struktur einer ML-Pipeline
Eine ML-Pipeline ist ein gerichteter azyklischer Graph (DAG) von containerisierten Pipelineaufgaben, die über Eingabe-Ausgabe-Abhängigkeiten miteinander verbunden sind. Sie können jede Aufgabe entweder in Python oder als vordefiniertes Container-Image erstellen.
Sie können die Pipeline mit dem Kubeflow Pipelines SDK oder dem TFX SDK als DAG definieren, sie in die YAML-Datei für die Zwischendarstellung kompilieren und dann die Pipeline ausführen. Pipelineaufgaben werden standardmäßig parallel ausgeführt. Sie können die Aufgaben verknüpfen, um sie nacheinander auszuführen. Weitere Informationen zu Pipelineaufgaben finden Sie unter Pipelineaufgabe. Weitere Informationen zum Workflow zum Definieren, Kompilieren und Ausführen der Pipeline finden Sie unter Lebenszyklus einer ML-Pipeline.
Pipeline-Aufgaben und -Komponenten
Eine Pipelineaufgabe ist eine Instanziierung einer Pipelinekomponente mit bestimmten Eingaben. Beim Definieren Ihrer ML-Pipeline können Sie mehrere Aufgaben miteinander verknüpfen, um einen DAG zu bilden. Dazu leiten Sie die Ausgaben einer Pipeline-Aufgabe an die Eingaben für die nächste Pipeline-Aufgabe im ML-Workflow weiter. Sie können die Eingaben für die ML-Pipeline auch als Eingaben für eine Pipeline-Aufgabe verwenden.
Pipeline-Komponente
Eine Pipelinekomponente ist ein eigenständiger Codesatz, der einen bestimmten Schritt eines ML-Workflows ausführt, z. B. Datenvorverarbeitung, Modelltraining oder Modellbereitstellung. Eine Komponente besteht in der Regel aus Folgendem:
Eingaben: Eine Komponente kann einen oder mehrere Eingabeparameter und Artefakte haben.
Ausgaben: Jede Komponente hat einen oder mehrere Ausgabeparameter oder Artefakte.
Logik: Dies ist der ausführbare Code der Komponente. Bei containerisierten Komponenten enthält die Logik auch die Definition der Umgebung oder des Container-Images, in der die Komponente ausgeführt wird.
Komponenten sind die Grundlage für die Definition von Aufgaben in einer ML-Pipeline. Zum Definieren von Pipelineaufgaben können Sie entweder vordefinierte Cloud de Confiance by S3NS Pipeline-Komponenten verwenden oder eigene benutzerdefinierte Komponenten erstellen.
Vordefinierte Komponenten
Verwenden Sie vordefinierte Cloud de Confiance by S3NS -Pipeline-Komponenten, wenn Sie Funktionen der Gemini Enterprise API wie AutoML in Ihrer Pipeline verwenden möchten. Informationen zum Definieren einer Pipeline mit Cloud de Confiance by S3NS -Pipeline-Komponenten finden Sie unter Pipeline erstellen.
Benutzerdefinierte Komponenten
Sie können eigene benutzerdefinierte Komponenten für Ihre ML-Pipeline erstellen. Weitere Informationen zum Erstellen benutzerdefinierter Komponenten finden Sie unter Eigene Pipeline-Komponenten erstellen.
Informationen zum Erstellen benutzerdefinierter Kubeflow Pipelines-Komponenten finden Sie im Tutorial-Notebook auf GitHub Pipelines mit einfachen Komponenten basierend auf Python-Funktionen. Informationen zum Erstellen benutzerdefinierter TFX-Komponenten finden Sie in der Anleitung zu TFX-Python-Funktionskomponenten in den Anleitungen zu TensorFlow Extended in der Produktion.
Pipeline-Task
Eine Pipeline-Aufgabe ist die Instanziierung einer Pipeline-Komponente und führt einen bestimmten Schritt in Ihrem ML-Workflow aus. Sie können ML-Pipeline-Aufgaben entweder mit Python oder als vordefinierte Container-Images erstellen.
Innerhalb einer Aufgabe können Sie die On-Demand-Rechenfunktionen der Gemini Enterprise Agent Platform mit Kubernetes erweitern, um die Ausführung Ihres Codes skalierbar zu gestalten oder die Arbeitslast an eine andere Ausführungs-Engine wie BigQuery, Dataflow oder Managed Service for Apache Spark zu delegieren.
Lebenszyklus einer ML-Pipeline
Von der Definition bis zur Ausführung und Überwachung umfasst der Lebenszyklus einer ML-Pipeline die folgenden allgemeinen Phasen:
Definieren: Der Prozess zum Definieren einer ML-Pipeline und ihrer Aufgabe wird auch als Erstellen einer Pipeline bezeichnet. Führen Sie in diesem Abschnitt die folgenden Schritte aus:
ML-Framework auswählen: Agent Platform Pipelines unterstützt ML-Pipelines, die mit dem TFX- oder Kubeflow Pipelines-Framework definiert wurden. Informationen zum Auswählen eines Frameworks für die Erstellung Ihrer Pipeline finden Sie unter Schnittstellen zum Definieren einer Pipeline.
Pipelineaufgaben definieren und Pipeline konfigurieren: Weitere Informationen finden Sie unter Pipeline erstellen.
Kompilieren: In dieser Phase führen Sie die folgenden Schritte aus:
Generieren Sie Ihre ML-Pipeline-Definition in einer kompilierten YAML-Datei für die Zwischendarstellung, mit der Sie Ihre ML-Pipeline ausführen können.
Optional: Sie können die kompilierte YAML-Datei als Pipelinevorlage in ein Repository hochladen und wiederverwenden, um ML-Pipelineausführungen zu erstellen.
Ausführen: Erstellen Sie eine Ausführungsinstanz Ihrer ML-Pipeline mithilfe der kompilierten YAML-Datei oder einer Pipelinevorlage. Die Ausführungsinstanz einer Pipeline-Definition wird als Pipeline-Ausführung bezeichnet.
Sie können eine einmalige Pipelineausführung erstellen oder die Scheduler API verwenden, um wiederkehrende Pipelineausführungen aus derselben ML-Pipelinedefinition zu erstellen. Sie können auch einer vorhandene Pipelineausführung klonen. Wie Sie eine Schnittstelle zum Ausführen einer ML-Pipeline auswählen, erfahren Sie unter Schnittstellen zum Ausführen einer Pipeline. Weitere Informationen zum Erstellen einer Pipelineausführung finden Sie unter Pipeline ausführen.
Ausführungen überwachen, visualisieren und analysieren: Nachdem Sie eine Pipelineausführung erstellt haben, können Sie Folgendes tun, um die Leistung, den Status und die Kosten von Pipelineausführungen zu überwachen:
E-Mail-Benachrichtigungen für Pipelinefehler konfigurieren Weitere Informationen finden Sie unter E-Mail-Benachrichtigungen konfigurieren.
Mit Cloud Logging Logeinträge für Monitoring-Ereignisse erstellen Weitere Informationen finden Sie unter Pipeline-Joblogs ansehen.
Pipelineausführungen visualisieren, analysieren und vergleichen Weitere Informationen finden Sie unter Pipeline-Ergebnisse visualisieren und analysieren.
Verwenden Sie den Cloud Billing-Export nach BigQuery, um die Kosten für Pipelineausführungen zu analysieren. Weitere Informationen finden Sie unter Kosten für Pipelineausführungen nachvollziehen.
Optional: Pipelineausführungen beenden oder löschen: Es gibt keine Einschränkung, wie lange Sie eine Pipelineausführung aktiv halten können. Optional können Sie Folgendes tun:
Pipelineausführung beenden.
Pipeline-Ausführungsplan pausieren oder fortsetzen
Löschen Sie eine vorhandene Pipelinevorlage, eine Pipelineausführung oder einen Zeitplan für die Pipelineausführung.
Was ist eine Pipelineausführung?
Eine Pipelineausführung ist eine Ausführungsinstanz Ihrer ML-Pipelinedefinition. Jede Pipelineausführung wird durch einen eindeutigen Ausführungsnamen identifiziert. Mit Agent Platform Pipelines können Sie eine ML-Pipelineausführung auf folgende Arten erstellen:
Kompilierte YAML-Definition einer Pipeline verwenden
Pipelinevorlage aus der Vorlagengalerie verwenden
Weitere Informationen zum Erstellen einer Pipelineausführung finden Sie unter Pipeline ausführen. Weitere Informationen zum Erstellen einer Pipelineausführung aus einer Pipelinevorlage, finden Sie unter Pipelinevorlage erstellen, hochladen und verwenden.
Informationen zum Erfassen und Speichern von Metadaten für Pipelineausführungen mit Agent Platform ML Metadata finden Sie unter Agent Platform ML Metadata zum Verfolgen der Herkunft von ML-Artefakten verwenden.
Informationen dazu, wie Sie Pipelineausführungen verwenden, um mit Gemini Enterprise Agent Platform-Experimenten mit Ihrem ML-Workflow zu experimentieren, finden Sie unter Pipelineausführungen zu Experimenten hinzufügen.
Herkunft von ML-Artefakten verfolgen
Eine Pipelineausführung enthält mehrere Artefakte und Parameter, einschließlich Pipeline-Metadaten. Um Änderungen der Leistung oder Accuracy Ihres ML-Systems zu verstehen, müssen Sie die Metadaten und die Herkunft von ML-Artefakten aus Ihren ML-Pipelineausführungen analysieren. Die Abstammung eines ML-Artefakts umfasst alle Faktoren, die zu seiner Erstellung beigetragen haben, sowie Metadaten und Verweise auf aus ihm abgeleitete Artefakte.
Mithilfe von Herkunftsgrafiken können Sie die vorgelagerte Ursache und die nachgelagerte Auswirkung analysieren. Jede Pipelineausführung erzeugt ein Herkunftsdiagramm der Parameter und Artefakte, die in die Ausführung eingegeben werden, während der Ausführung materialisiert und von der Ausführung ausgegeben werden. Die Metadaten, aus denen dieses Herkunftsdiagramm besteht, werden in Agent Platform ML Metadata gespeichert. Diese Metadaten können auch mit Knowledge Catalog synchronisiert werden.
Agent Platform ML Metadata verwenden, um die Herkunft von Pipeline-Artefakten zu verfolgen
Wenn Sie eine Pipeline mit Agent Platform-Pipelines ausführen, werden alle Parameter und Artefaktmetadaten, die von der Pipeline verwendet und generiert werden, in Agent Platform ML Metadata gespeichert. Agent Platform ML Metadata ist eine verwaltete Implementierung der ML Metadata-Bibliothek in TensorFlow und unterstützt die Registrierung und das Schreiben benutzerdefinierter Metadatenschemas. Wenn Sie eine Pipelineausführung in Agent Platform Pipelines erstellen, werden Metadaten aus der Pipelineausführung im Standardmetadatenspeicher für das Projekt und die Region gespeichert, in der Sie die Pipeline ausführen.
Herkunft von Pipeline-Artefakten mit Knowledge Catalog verfolgen
Knowledge Catalog ist eine globale und projektübergreifende Datenstruktur, die in mehrere Systeme innerhalb von Cloud de Confiance by S3NSintegriert ist, z. B. Agent Platform, BigQuery und Managed Service for Apache Airflow. In Knowledge Catalog können Sie nach einem Pipeline-Artefakt suchen und sich das zugehörige Herkunftsdiagramm ansehen. Um Artefaktkonflikte zu vermeiden, wird jede im Knowledge Catalog katalogisierte Ressource mit einem voll qualifizierten Namen (FQN) identifiziert.
Weitere Informationen zu den Nutzungskosten für Knowledge Catalog
Weitere Informationen zum Verfolgen der Herkunft von ML-Artefakten mit Agent Platform ML Metadata und Knowledge Catalog finden Sie unter Herkunft von Pipeline-Artefakten verfolgen.
Weitere Informationen zum Visualisieren, Analysieren und Vergleichen von Pipelineausführungen finden Sie unter Pipelineergebnisse visualisieren und analysieren. Eine Liste der in Cloud de Confiance by S3NS Pipeline-Komponenten definierten Artefakttypen von Erstanbietern finden Sie unter ML-Metadaten-Artefakttypen.
Pipelineausführungen zu Tests hinzufügen
Mit Agent Platform Experiments können Sie verschiedene Modellarchitekturen, Hyperparameter und Trainingsumgebungen verfolgen und analysieren, um das beste Modell für Ihren ML-Anwendungsfall zu finden. Nachdem Sie eine ML-Pipelineausführung erstellt haben, können Sie sie mit einem Test oder einer Testausführung verknüpfen. So können Sie mit verschiedenen Variablen wie Hyperparametern, Anzahl der Trainingsschritte oder Iterationen experimentieren.
Weitere Informationen zum Experimentieren mit ML-Workflows mithilfe von Agent Platform Experiments finden Sie unter Einführung in Agent Platform Experiments.