Treten Sie der SIG TFX-Addons-Community bei und helfen Sie mit, TFX noch besser zu machen! SIG TFX-Addons beitreten

Verwenden der TFX-Befehlszeilenschnittstelle

Die TFX-Befehlszeilenschnittstelle (CLI) führt mithilfe von Pipeline-Orchestratoren wie Kubeflow Pipelines und Vertex Pipelines eine vollständige Palette von Pipeline-Aktionen aus. Der lokale Orchestrator kann auch für eine schnellere Entwicklung oder ein schnelleres Debuggen verwendet werden. Als experimentelle Funktionen werden Apache Beam und Apache Airflow unterstützt. Sie können die CLI beispielsweise verwenden, um:

  • Erstellen, aktualisieren und löschen Sie Pipelines.
  • Führen Sie eine Pipeline aus und überwachen Sie die Ausführung auf verschiedenen Orchestratoren.
  • Listen Sie Pipelines und Pipelineausführungen auf.

Über die TFX-CLI

Die TFX-CLI wird als Teil des TFX-Pakets installiert. Alle CLI-Befehle folgen der folgenden Struktur:

tfx command-group command flags

Die folgende command-group Optionen werden derzeit unterstützt:

  • tfx Pipeline - Erstellen und TFX - Pipelines verwalten.
  • tfx Lauf - Erstellen und Läufe von TFX - Pipelines auf verschiedene Orchestrierung Plattformen verwalten.
  • tfx template - Experimental - Befehle für das Auflisten und Kopieren TFX Pipeline - Vorlagen.

Jede Befehlsgruppe stellt einen Satz von commands . Folgen Sie den Anweisungen in der Pipeline - Befehle , Befehle auszuführen , und Template - Befehle Abschnitte , um mehr über diese Befehle.

Mit Flags können Sie Argumente an CLI-Befehle übergeben. (Worte in Flaggen werden entweder mit einem Bindestrich getrennt - ) oder einen Unterstrich ( _ ). Zum Beispiel kann die Pipeline Name Flag entweder als angegeben werden --pipeline-name oder --pipeline_name . Dieses Dokument spezifiziert Flags mit Unterstrichen der Kürze halber. Erfahren Sie mehr über flags in der TFX CLI verwendet .

tfx-Pipeline

Die Struktur für die Befehle in der tfx pipeline ist wie folgt:

tfx pipeline command required-flags [optional-flags]

In den folgenden Abschnitten mehr über die Befehle in der lernen tfx pipeline - tfx pipeline - Befehlsgruppe.

schaffen

Erstellt eine neue Pipeline im angegebenen Orchestrator.

Verwendungszweck:

tfx pipeline create --pipeline_path=pipeline-path [--endpoint=endpoint --engine=engine \
--iap_client_id=iap-client-id --namespace=namespace \
--build_image --build_base_image=build-base-image]
--pipeline_path = pipeline-path
Der Pfad zur Pipeline-Konfigurationsdatei.
--endpoint = endpoint

(Optional.) Endpunkt des Kubeflow Pipelines API-Dienstes. Der Endpunkt Ihres Kubeflow Pipelines API-Dienstes ist mit der URL des Kubeflow Pipelines-Dashboards identisch. Ihr Endpunktwert sollte etwa so aussehen:

https://host-name/pipeline

Wenn Sie den Endpunkt für Ihren Kubeflow Pipelines-Cluster nicht kennen, wenden Sie sich an Ihren Clusteradministrator.

Wenn die --endpoint nicht angegeben ist, wird der in-Cluster - Dienst der DNS - Name als Standardwert verwendet. Dieser Name funktioniert nur , wenn die CLI - Befehl ausgeführt wird in einer Hülse auf dem Kubeflow Pipeline Cluster, wie eine Kubeflow Jupyter Notebooks Instanz.

--engine = engine

(Optional.) Der Orchestrator, der für die Pipeline verwendet werden soll. Der Wert von engine muss einem der folgenden Werte entsprechen:

  • kubeflow: Sätze Motor Kubeflow
  • local: Sätze Motor an lokale Orchestrierung
  • Vertex: Sets Motor Vertex Pipelines
  • Luftstrom: (experimentell) setzt Motor Apache Airflow
  • Balken: (experimentell) setzt Motor Apache Strahl

Wenn der Motor nicht eingestellt ist, wird der Motor basierend auf der Umgebung automatisch erkannt.

** Wichtiger Hinweis: Der vom DagRunner in der Pipeline-Konfigurationsdatei benötigte Orchestrator muss mit der ausgewählten oder automatisch erkannten Engine übereinstimmen. Die automatische Motorerkennung basiert auf der Benutzerumgebung. Wenn Apache Airflow und Kubeflow Pipelines nicht installiert sind, wird standardmäßig der lokale Orchestrator verwendet.

--iap_client_id = iap-client-id
(Optional.) Client-ID für IAP-geschützten Endpunkt bei Verwendung von Kubeflow Pipelines.
--namespace = namespace
(Optional.) Kubernetes-Namespace zum Herstellen einer Verbindung mit der Kubeflow Pipelines API. Wenn der Namespace nicht angegeben ist, auf den Wert Standardwerte kubeflow .
--build_image

(Optional) . Wenn der engine kubeflow oder Vertex ist, schafft TFX einen Container für Ihre Pipeline , falls angegeben. `Dockerfile` im aktuellen Verzeichnis wird verwendet und TFX generiert automatisch eines, wenn es nicht existiert.

Das erstellte Image wird an die Remote-Registrierung gepusht, die in `KubeflowDagRunnerConfig` oder `KubeflowV2DagRunnerConfig` angegeben ist.

--build_base_image = build-base-image

(Optional) . Wenn der engine kubeflow ist, schafft TFX einen Container für Ihre Pipeline. Das Build-Basis-Image gibt das Basis-Container-Image an, das beim Erstellen des Pipeline-Container-Image verwendet wird.

Beispiele:

Kubeflow:

tfx pipeline create --engine=kubeflow --pipeline_path=pipeline-path \
--iap_client_id=iap-client-id --namespace=namespace --endpoint=endpoint \
--build_image

Lokal:

tfx pipeline create --engine=local --pipeline_path=pipeline-path

Scheitel:

tfx pipeline create --engine=vertex --pipeline_path=pipeline-path \
--build_image

Um die Engine automatisch aus der Benutzerumgebung zu erkennen, vermeiden Sie einfach die Verwendung des Engine-Flags wie im folgenden Beispiel. Weitere Informationen finden Sie im Abschnitt Flags.

tfx pipeline create --pipeline_path=pipeline-path

aktualisieren

Aktualisiert eine vorhandene Pipeline im angegebenen Orchestrator.

Verwendungszweck:

tfx pipeline update --pipeline_path=pipeline-path [--endpoint=endpoint --engine=engine \
--iap_client_id=iap-client-id --namespace=namespace --build_image]
--pipeline_path = pipeline-path
Der Pfad zur Pipeline-Konfigurationsdatei.
--endpoint = endpoint

(Optional.) Endpunkt des Kubeflow Pipelines API-Dienstes. Der Endpunkt Ihres Kubeflow Pipelines API-Dienstes ist mit der URL des Kubeflow Pipelines-Dashboards identisch. Ihr Endpunktwert sollte etwa so aussehen:

https://host-name/pipeline

Wenn Sie den Endpunkt für Ihren Kubeflow Pipelines-Cluster nicht kennen, wenden Sie sich an Ihren Clusteradministrator.

Wenn die --endpoint nicht angegeben ist, wird der in-Cluster - Dienst der DNS - Name als Standardwert verwendet. Dieser Name funktioniert nur , wenn die CLI - Befehl ausgeführt wird in einer Hülse auf dem Kubeflow Pipeline Cluster, wie eine Kubeflow Jupyter Notebooks Instanz.

--engine = engine

(Optional.) Der Orchestrator, der für die Pipeline verwendet werden soll. Der Wert von engine muss einem der folgenden Werte entsprechen:

  • kubeflow: Sätze Motor Kubeflow
  • local: Sätze Motor an lokale Orchestrierung
  • Vertex: Sets Motor Vertex Pipelines
  • Luftstrom: (experimentell) setzt Motor Apache Airflow
  • Balken: (experimentell) setzt Motor Apache Strahl

Wenn der Motor nicht eingestellt ist, wird der Motor basierend auf der Umgebung automatisch erkannt.

** Wichtiger Hinweis: Der vom DagRunner in der Pipeline-Konfigurationsdatei benötigte Orchestrator muss mit der ausgewählten oder automatisch erkannten Engine übereinstimmen. Die automatische Motorerkennung basiert auf der Benutzerumgebung. Wenn Apache Airflow und Kubeflow Pipelines nicht installiert sind, wird standardmäßig der lokale Orchestrator verwendet.

--iap_client_id = iap-client-id
(Optional.) Client-ID für IAP-geschützten Endpunkt.
--namespace = namespace
(Optional.) Kubernetes-Namespace zum Herstellen einer Verbindung mit der Kubeflow Pipelines API. Wenn der Namespace nicht angegeben ist, auf den Wert Standardwerte kubeflow .
--build_image

(Optional) . Wenn der engine kubeflow oder Vertex ist, schafft TFX einen Container für Ihre Pipeline , falls angegeben. `Dockerfile` im aktuellen Verzeichnis wird verwendet.

Das erstellte Image wird an die Remote-Registrierung gepusht, die in `KubeflowDagRunnerConfig` oder `KubeflowV2DagRunnerConfig` angegeben ist.

Beispiele:

Kubeflow:

tfx pipeline update --engine=kubeflow --pipeline_path=pipeline-path \
--iap_client_id=iap-client-id --namespace=namespace --endpoint=endpoint \
--build_image

Lokal:

tfx pipeline update --engine=local --pipeline_path=pipeline-path

Scheitel:

tfx pipeline update --engine=vertex --pipeline_path=pipeline-path \
--build_image

kompilieren

Kompiliert die Pipeline-Konfigurationsdatei, um eine Workflow-Datei in Kubeflow zu erstellen, und führt beim Kompilieren die folgenden Prüfungen durch:

  1. Überprüft, ob der Pipelinepfad gültig ist.
  2. Überprüft, ob die Pipeline-Details erfolgreich aus der Pipeline-Konfigurationsdatei extrahiert wurden.
  3. Überprüft, ob der DagRunner in der Pipeline-Konfiguration mit der Engine übereinstimmt.
  4. Überprüft, ob die Workflow-Datei erfolgreich im angegebenen Paketpfad erstellt wurde (nur für Kubeflow).

Empfohlene Verwendung vor dem Erstellen oder Aktualisieren einer Pipeline.

Verwendungszweck:

tfx pipeline compile --pipeline_path=pipeline-path [--engine=engine]
--pipeline_path = pipeline-path
Der Pfad zur Pipeline-Konfigurationsdatei.
--engine = engine

(Optional.) Der Orchestrator, der für die Pipeline verwendet werden soll. Der Wert von engine muss einem der folgenden Werte entsprechen:

  • kubeflow: Sätze Motor Kubeflow
  • local: Sätze Motor an lokale Orchestrierung
  • Vertex: Sets Motor Vertex Pipelines
  • Luftstrom: (experimentell) setzt Motor Apache Airflow
  • Balken: (experimentell) setzt Motor Apache Strahl

Wenn der Motor nicht eingestellt ist, wird der Motor basierend auf der Umgebung automatisch erkannt.

** Wichtiger Hinweis: Der vom DagRunner in der Pipeline-Konfigurationsdatei benötigte Orchestrator muss mit der ausgewählten oder automatisch erkannten Engine übereinstimmen. Die automatische Motorerkennung basiert auf der Benutzerumgebung. Wenn Apache Airflow und Kubeflow Pipelines nicht installiert sind, wird standardmäßig der lokale Orchestrator verwendet.

Beispiele:

Kubeflow:

tfx pipeline compile --engine=kubeflow --pipeline_path=pipeline-path

Lokal:

tfx pipeline compile --engine=local --pipeline_path=pipeline-path

Scheitel:

tfx pipeline compile --engine=vertex --pipeline_path=pipeline-path

löschen

Löscht eine Pipeline aus dem angegebenen Orchestrator.

Verwendungszweck:

tfx pipeline delete --pipeline_path=pipeline-path [--endpoint=endpoint --engine=engine \
--iap_client_id=iap-client-id --namespace=namespace]
--pipeline_path = pipeline-path
Der Pfad zur Pipeline-Konfigurationsdatei.
--endpoint = endpoint

(Optional.) Endpunkt des Kubeflow Pipelines API-Dienstes. Der Endpunkt Ihres Kubeflow Pipelines API-Dienstes ist mit der URL des Kubeflow Pipelines-Dashboards identisch. Ihr Endpunktwert sollte etwa so aussehen:

https://host-name/pipeline

Wenn Sie den Endpunkt für Ihren Kubeflow Pipelines-Cluster nicht kennen, wenden Sie sich an Ihren Clusteradministrator.

Wenn die --endpoint nicht angegeben ist, wird der in-Cluster - Dienst der DNS - Name als Standardwert verwendet. Dieser Name funktioniert nur , wenn die CLI - Befehl ausgeführt wird in einer Hülse auf dem Kubeflow Pipeline Cluster, wie eine Kubeflow Jupyter Notebooks Instanz.

--engine = engine

(Optional.) Der Orchestrator, der für die Pipeline verwendet werden soll. Der Wert von engine muss einem der folgenden Werte entsprechen:

  • kubeflow: Sätze Motor Kubeflow
  • local: Sätze Motor an lokale Orchestrierung
  • Vertex: Sets Motor Vertex Pipelines
  • Luftstrom: (experimentell) setzt Motor Apache Airflow
  • Balken: (experimentell) setzt Motor Apache Strahl

Wenn der Motor nicht eingestellt ist, wird der Motor basierend auf der Umgebung automatisch erkannt.

** Wichtiger Hinweis: Der vom DagRunner in der Pipeline-Konfigurationsdatei benötigte Orchestrator muss mit der ausgewählten oder automatisch erkannten Engine übereinstimmen. Die automatische Motorerkennung basiert auf der Benutzerumgebung. Wenn Apache Airflow und Kubeflow Pipelines nicht installiert sind, wird standardmäßig der lokale Orchestrator verwendet.

--iap_client_id = iap-client-id
(Optional.) Client-ID für IAP-geschützten Endpunkt.
--namespace = namespace
(Optional.) Kubernetes-Namespace zum Herstellen einer Verbindung mit der Kubeflow Pipelines API. Wenn der Namespace nicht angegeben ist, auf den Wert Standardwerte kubeflow .

Beispiele:

Kubeflow:

tfx pipeline delete --engine=kubeflow --pipeline_name=pipeline-name \
--iap_client_id=iap-client-id --namespace=namespace --endpoint=endpoint

Lokal:

tfx pipeline delete --engine=local --pipeline_name=pipeline-name

Scheitel:

tfx pipeline delete --engine=vertex --pipeline_name=pipeline-name

aufführen

Listet alle Pipelines im angegebenen Orchestrator auf.

Verwendungszweck:

tfx pipeline list [--endpoint=endpoint --engine=engine \
--iap_client_id=iap-client-id --namespace=namespace]
--endpoint = endpoint

(Optional.) Endpunkt des Kubeflow Pipelines API-Dienstes. Der Endpunkt Ihres Kubeflow Pipelines API-Dienstes ist mit der URL des Kubeflow Pipelines-Dashboards identisch. Ihr Endpunktwert sollte etwa so aussehen:

https://host-name/pipeline

Wenn Sie den Endpunkt für Ihren Kubeflow Pipelines-Cluster nicht kennen, wenden Sie sich an Ihren Clusteradministrator.

Wenn die --endpoint nicht angegeben ist, wird der in-Cluster - Dienst der DNS - Name als Standardwert verwendet. Dieser Name funktioniert nur , wenn die CLI - Befehl ausgeführt wird in einer Hülse auf dem Kubeflow Pipeline Cluster, wie eine Kubeflow Jupyter Notebooks Instanz.

--engine = engine

(Optional.) Der Orchestrator, der für die Pipeline verwendet werden soll. Der Wert von engine muss einem der folgenden Werte entsprechen:

  • kubeflow: Sätze Motor Kubeflow
  • local: Sätze Motor an lokale Orchestrierung
  • Vertex: Sets Motor Vertex Pipelines
  • Luftstrom: (experimentell) setzt Motor Apache Airflow
  • Balken: (experimentell) setzt Motor Apache Strahl

Wenn der Motor nicht eingestellt ist, wird der Motor basierend auf der Umgebung automatisch erkannt.

** Wichtiger Hinweis: Der vom DagRunner in der Pipeline-Konfigurationsdatei benötigte Orchestrator muss mit der ausgewählten oder automatisch erkannten Engine übereinstimmen. Die automatische Motorerkennung basiert auf der Benutzerumgebung. Wenn Apache Airflow und Kubeflow Pipelines nicht installiert sind, wird standardmäßig der lokale Orchestrator verwendet.

--iap_client_id = iap-client-id
(Optional.) Client-ID für IAP-geschützten Endpunkt.
--namespace = namespace
(Optional.) Kubernetes-Namespace zum Herstellen einer Verbindung mit der Kubeflow Pipelines API. Wenn der Namespace nicht angegeben ist, auf den Wert Standardwerte kubeflow .

Beispiele:

Kubeflow:

tfx pipeline list --engine=kubeflow --iap_client_id=iap-client-id \
--namespace=namespace --endpoint=endpoint

Lokal:

tfx pipeline list --engine=local

Scheitel:

tfx pipeline list --engine=vertex

tfx-Lauf

Die Struktur für die Befehle in der tfx run ist wie folgt:

tfx run command required-flags [optional-flags]

In den folgenden Abschnitten mehr über die Befehle in der lernen tfx run

schaffen

Erstellt eine neue Ausführungsinstanz für eine Pipeline im Orchestrator. Für Kubeflow wird die neueste Pipelineversion der Pipeline im Cluster verwendet.

Verwendungszweck:

tfx run create --pipeline_name=pipeline-name [--endpoint=endpoint \
--engine=engine --iap_client_id=iap-client-id --namespace=namespace]
--pipeline_name = pipeline-name
Der Name der Pipeline.
--endpoint = endpoint

(Optional.) Endpunkt des Kubeflow Pipelines API-Dienstes. Der Endpunkt Ihres Kubeflow Pipelines API-Dienstes ist mit der URL des Kubeflow Pipelines-Dashboards identisch. Ihr Endpunktwert sollte etwa so aussehen:

https://host-name/pipeline

Wenn Sie den Endpunkt für Ihren Kubeflow Pipelines-Cluster nicht kennen, wenden Sie sich an Ihren Clusteradministrator.

Wenn die --endpoint nicht angegeben ist, wird der in-Cluster - Dienst der DNS - Name als Standardwert verwendet. Dieser Name funktioniert nur , wenn die CLI - Befehl ausgeführt wird in einer Hülse auf dem Kubeflow Pipeline Cluster, wie eine Kubeflow Jupyter Notebooks Instanz.

--engine = engine

(Optional.) Der Orchestrator, der für die Pipeline verwendet werden soll. Der Wert von engine muss einem der folgenden Werte entsprechen:

  • kubeflow: Sätze Motor Kubeflow
  • local: Sätze Motor an lokale Orchestrierung
  • Vertex: Sets Motor Vertex Pipelines
  • Luftstrom: (experimentell) setzt Motor Apache Airflow
  • Balken: (experimentell) setzt Motor Apache Strahl

Wenn der Motor nicht eingestellt ist, wird der Motor basierend auf der Umgebung automatisch erkannt.

** Wichtiger Hinweis: Der vom DagRunner in der Pipeline-Konfigurationsdatei benötigte Orchestrator muss mit der ausgewählten oder automatisch erkannten Engine übereinstimmen. Die automatische Motorerkennung basiert auf der Benutzerumgebung. Wenn Apache Airflow und Kubeflow Pipelines nicht installiert sind, wird standardmäßig der lokale Orchestrator verwendet.

--iap_client_id = iap-client-id
(Optional.) Client-ID für IAP-geschützten Endpunkt.
--namespace = namespace
(Optional.) Kubernetes-Namespace zum Herstellen einer Verbindung mit der Kubeflow Pipelines API. Wenn der Namespace nicht angegeben ist, auf den Wert Standardwerte kubeflow .
--project = GCP-project-id
(Für Vertex erforderlich.) GCP-Projekt-ID für die Vertex-Pipeline.
--region = GCP-region
(Erforderlich für Vertex.) Name der GCP-Region wie us-central1. Informationen zu verfügbaren Regionen finden Sie in der [Vertex-Dokumentation](https://cloud.google.com/vertex-ai/docs/general/locations).
--project=some_project --region=us-central1

Beispiele:

Kubeflow:

tfx run create --engine=kubeflow --pipeline_name=pipeline-name --iap_client_id=iap-client-id \
--namespace=namespace --endpoint=endpoint

Lokal:

tfx run create --engine=local --pipeline_name=pipeline-name

Scheitel:

tfx run create --engine=vertex --pipeline_name=pipeline-name --project=gcp-project-id --region=gcp-region

beenden

Stoppt eine Ausführung einer bestimmten Pipeline.

** Wichtiger Hinweis: Derzeit nur in Kubeflow unterstützt.

Verwendungszweck:

tfx run terminate --run_id=run-id [--endpoint=endpoint --engine=engine \
--iap_client_id=iap-client-id --namespace=namespace]
--run_id = run-id
Eindeutiger Bezeichner für eine Pipelineausführung.
--endpoint = endpoint

(Optional.) Endpunkt des Kubeflow Pipelines API-Dienstes. Der Endpunkt Ihres Kubeflow Pipelines API-Dienstes ist mit der URL des Kubeflow Pipelines-Dashboards identisch. Ihr Endpunktwert sollte etwa so aussehen:

https://host-name/pipeline

Wenn Sie den Endpunkt für Ihren Kubeflow Pipelines-Cluster nicht kennen, wenden Sie sich an Ihren Clusteradministrator.

Wenn die --endpoint nicht angegeben ist, wird der in-Cluster - Dienst der DNS - Name als Standardwert verwendet. Dieser Name funktioniert nur , wenn die CLI - Befehl ausgeführt wird in einer Hülse auf dem Kubeflow Pipeline Cluster, wie eine Kubeflow Jupyter Notebooks Instanz.

--engine = engine

(Optional.) Der Orchestrator, der für die Pipeline verwendet werden soll. Der Wert von engine muss einem der folgenden Werte entsprechen:

  • kubeflow: Sätze Motor Kubeflow

Wenn der Motor nicht eingestellt ist, wird der Motor basierend auf der Umgebung automatisch erkannt.

** Wichtiger Hinweis: Der vom DagRunner in der Pipeline-Konfigurationsdatei benötigte Orchestrator muss mit der ausgewählten oder automatisch erkannten Engine übereinstimmen. Die automatische Motorerkennung basiert auf der Benutzerumgebung. Wenn Apache Airflow und Kubeflow Pipelines nicht installiert sind, wird standardmäßig der lokale Orchestrator verwendet.

--iap_client_id = iap-client-id
(Optional.) Client-ID für IAP-geschützten Endpunkt.
--namespace = namespace
(Optional.) Kubernetes-Namespace zum Herstellen einer Verbindung mit der Kubeflow Pipelines API. Wenn der Namespace nicht angegeben ist, auf den Wert Standardwerte kubeflow .

Beispiele:

Kubeflow:

tfx run delete --engine=kubeflow --run_id=run-id --iap_client_id=iap-client-id \
--namespace=namespace --endpoint=endpoint

aufführen

Listet alle Ausführungen einer Pipeline auf.

** Wichtiger Hinweis: Derzeit nicht in Local und Apache Beam unterstützt.

Verwendungszweck:

tfx run list --pipeline_name=pipeline-name [--endpoint=endpoint \
--engine=engine --iap_client_id=iap-client-id --namespace=namespace]
--pipeline_name = pipeline-name
Der Name der Pipeline.
--endpoint = endpoint

(Optional.) Endpunkt des Kubeflow Pipelines API-Dienstes. Der Endpunkt Ihres Kubeflow Pipelines API-Dienstes ist mit der URL des Kubeflow Pipelines-Dashboards identisch. Ihr Endpunktwert sollte etwa so aussehen:

https://host-name/pipeline

Wenn Sie den Endpunkt für Ihren Kubeflow Pipelines-Cluster nicht kennen, wenden Sie sich an Ihren Clusteradministrator.

Wenn die --endpoint nicht angegeben ist, wird der in-Cluster - Dienst der DNS - Name als Standardwert verwendet. Dieser Name funktioniert nur , wenn die CLI - Befehl ausgeführt wird in einer Hülse auf dem Kubeflow Pipeline Cluster, wie eine Kubeflow Jupyter Notebooks Instanz.

--engine = engine

(Optional.) Der Orchestrator, der für die Pipeline verwendet werden soll. Der Wert von engine muss einem der folgenden Werte entsprechen:

  • kubeflow: Sätze Motor Kubeflow
  • Luftstrom: (experimentell) setzt Motor Apache Airflow

Wenn der Motor nicht eingestellt ist, wird der Motor basierend auf der Umgebung automatisch erkannt.

** Wichtiger Hinweis: Der vom DagRunner in der Pipeline-Konfigurationsdatei benötigte Orchestrator muss mit der ausgewählten oder automatisch erkannten Engine übereinstimmen. Die automatische Motorerkennung basiert auf der Benutzerumgebung. Wenn Apache Airflow und Kubeflow Pipelines nicht installiert sind, wird standardmäßig der lokale Orchestrator verwendet.

--iap_client_id = iap-client-id
(Optional.) Client-ID für IAP-geschützten Endpunkt.
--namespace = namespace
(Optional.) Kubernetes-Namespace zum Herstellen einer Verbindung mit der Kubeflow Pipelines API. Wenn der Namespace nicht angegeben ist, auf den Wert Standardwerte kubeflow .

Beispiele:

Kubeflow:

tfx run list --engine=kubeflow --pipeline_name=pipeline-name --iap_client_id=iap-client-id \
--namespace=namespace --endpoint=endpoint

Status

Gibt den aktuellen Status eines Laufs zurück.

** Wichtiger Hinweis: Derzeit nicht in Local und Apache Beam unterstützt.

Verwendungszweck:

tfx run status --pipeline_name=pipeline-name --run_id=run-id [--endpoint=endpoint \
--engine=engine --iap_client_id=iap-client-id --namespace=namespace]
--pipeline_name = pipeline-name
Der Name der Pipeline.
--run_id = run-id
Eindeutiger Bezeichner für eine Pipelineausführung.
--endpoint = endpoint

(Optional.) Endpunkt des Kubeflow Pipelines API-Dienstes. Der Endpunkt Ihres Kubeflow Pipelines API-Dienstes ist mit der URL des Kubeflow Pipelines-Dashboards identisch. Ihr Endpunktwert sollte etwa so aussehen:

https://host-name/pipeline

Wenn Sie den Endpunkt für Ihren Kubeflow Pipelines-Cluster nicht kennen, wenden Sie sich an Ihren Clusteradministrator.

Wenn die --endpoint nicht angegeben ist, wird der in-Cluster - Dienst der DNS - Name als Standardwert verwendet. Dieser Name funktioniert nur , wenn die CLI - Befehl ausgeführt wird in einer Hülse auf dem Kubeflow Pipeline Cluster, wie eine Kubeflow Jupyter Notebooks Instanz.

--engine = engine

(Optional.) Der Orchestrator, der für die Pipeline verwendet werden soll. Der Wert von engine muss einem der folgenden Werte entsprechen:

  • kubeflow: Sätze Motor Kubeflow
  • Luftstrom: (experimentell) setzt Motor Apache Airflow

Wenn der Motor nicht eingestellt ist, wird der Motor basierend auf der Umgebung automatisch erkannt.

** Wichtiger Hinweis: Der vom DagRunner in der Pipeline-Konfigurationsdatei benötigte Orchestrator muss mit der ausgewählten oder automatisch erkannten Engine übereinstimmen. Die automatische Motorerkennung basiert auf der Benutzerumgebung. Wenn Apache Airflow und Kubeflow Pipelines nicht installiert sind, wird standardmäßig der lokale Orchestrator verwendet.

--iap_client_id = iap-client-id
(Optional.) Client-ID für IAP-geschützten Endpunkt.
--namespace = namespace
(Optional.) Kubernetes-Namespace zum Herstellen einer Verbindung mit der Kubeflow Pipelines API. Wenn der Namespace nicht angegeben ist, auf den Wert Standardwerte kubeflow .

Beispiele:

Kubeflow:

tfx run status --engine=kubeflow --run_id=run-id --pipeline_name=pipeline-name \
--iap_client_id=iap-client-id --namespace=namespace --endpoint=endpoint

löschen

Löscht eine Ausführung einer bestimmten Pipeline.

** Wichtiger Hinweis: Derzeit nur in Kubeflow unterstützt

Verwendungszweck:

tfx run delete --run_id=run-id [--engine=engine --iap_client_id=iap-client-id \
--namespace=namespace --endpoint=endpoint]
--run_id = run-id
Eindeutiger Bezeichner für eine Pipelineausführung.
--endpoint = endpoint

(Optional.) Endpunkt des Kubeflow Pipelines API-Dienstes. Der Endpunkt Ihres Kubeflow Pipelines API-Dienstes ist mit der URL des Kubeflow Pipelines-Dashboards identisch. Ihr Endpunktwert sollte etwa so aussehen:

https://host-name/pipeline

Wenn Sie den Endpunkt für Ihren Kubeflow Pipelines-Cluster nicht kennen, wenden Sie sich an Ihren Clusteradministrator.

Wenn die --endpoint nicht angegeben ist, wird der in-Cluster - Dienst der DNS - Name als Standardwert verwendet. Dieser Name funktioniert nur , wenn die CLI - Befehl ausgeführt wird in einer Hülse auf dem Kubeflow Pipeline Cluster, wie eine Kubeflow Jupyter Notebooks Instanz.

--engine = engine

(Optional.) Der Orchestrator, der für die Pipeline verwendet werden soll. Der Wert von engine muss einem der folgenden Werte entsprechen:

  • kubeflow: Sätze Motor Kubeflow

Wenn der Motor nicht eingestellt ist, wird der Motor basierend auf der Umgebung automatisch erkannt.

** Wichtiger Hinweis: Der vom DagRunner in der Pipeline-Konfigurationsdatei benötigte Orchestrator muss mit der ausgewählten oder automatisch erkannten Engine übereinstimmen. Die automatische Motorerkennung basiert auf der Benutzerumgebung. Wenn Apache Airflow und Kubeflow Pipelines nicht installiert sind, wird standardmäßig der lokale Orchestrator verwendet.

--iap_client_id = iap-client-id
(Optional.) Client-ID für IAP-geschützten Endpunkt.
--namespace = namespace
(Optional.) Kubernetes-Namespace zum Herstellen einer Verbindung mit der Kubeflow Pipelines API. Wenn der Namespace nicht angegeben ist, auf den Wert Standardwerte kubeflow .

Beispiele:

Kubeflow:

tfx run delete --engine=kubeflow --run_id=run-id --iap_client_id=iap-client-id \
--namespace=namespace --endpoint=endpoint

tfx-Vorlage [Experimentell]

Die Struktur für die Befehle in der tfx template Befehlsgruppe ist wie folgt:

tfx template command required-flags [optional-flags]

In den folgenden Abschnitten mehr über die Befehle in der lernen tfx template Befehlsgruppe. Die Vorlage ist eine experimentelle Funktion und kann jederzeit geändert werden.

aufführen

Listet verfügbare TFX-Pipeline-Vorlagen auf.

Verwendungszweck:

tfx template list

Kopieren

Kopieren Sie eine Vorlage in das Zielverzeichnis.

Verwendungszweck:

tfx template copy --model=model --pipeline_name=pipeline-name \
--destination_path=destination-path
--model = model
Der Name des Modells, das von der Pipelinevorlage erstellt wurde.
--pipeline_name = pipeline-name
Der Name der Pipeline.
--destination_path = destination-path
Der Pfad, in den die Vorlage kopiert werden soll.

Grundlegendes zu TFX-CLI-Flags

Gemeinsame Flaggen

--engine = engine

Der für die Pipeline zu verwendende Orchestrator. Der Wert von engine muss einem der folgenden Werte entsprechen:

  • kubeflow: Sätze Motor Kubeflow
  • local: Sätze Motor an lokale Orchestrierung
  • Vertex: Sets Motor Vertex Pipelines
  • Luftstrom: (experimentell) setzt Motor Apache Airflow
  • Balken: (experimentell) setzt Motor Apache Strahl

Wenn der Motor nicht eingestellt ist, wird der Motor basierend auf der Umgebung automatisch erkannt.

** Wichtiger Hinweis: Der vom DagRunner in der Pipeline-Konfigurationsdatei benötigte Orchestrator muss der ausgewählten oder automatisch erkannten Engine entsprechen. Die automatische Motorerkennung basiert auf der Benutzerumgebung. Wenn Apache Airflow und Kubeflow Pipelines nicht installiert sind, wird standardmäßig der lokale Orchestrator verwendet.

--pipeline_name = pipeline-name
Der Name der Pipeline.
--pipeline_path = pipeline-path
Der Pfad zur Pipeline-Konfigurationsdatei.
--run_id = run-id
Eindeutiger Bezeichner für eine Pipelineausführung.

Kubeflow-spezifische Flags

--endpoint = endpoint

Endpunkt des Kubeflow Pipelines API-Dienstes. Der Endpunkt Ihres Kubeflow Pipelines API-Dienstes ist mit der URL des Kubeflow Pipelines-Dashboards identisch. Ihr Endpunktwert sollte etwa so aussehen:

https://host-name/pipeline

Wenn Sie den Endpunkt für Ihren Kubeflow Pipelines-Cluster nicht kennen, wenden Sie sich an Ihren Clusteradministrator.

Wenn die --endpoint nicht angegeben ist, wird der in-Cluster - Dienst der DNS - Name als Standardwert verwendet. Dieser Name funktioniert nur , wenn die CLI - Befehl ausgeführt wird in einer Hülse auf dem Kubeflow Pipeline Cluster, wie eine Kubeflow Jupyter Notebooks Instanz.

--iap_client_id = iap-client-id
Client-ID für IAP-geschützten Endpunkt.
--namespace = namespace
Kubernetes-Namespace zum Herstellen einer Verbindung mit der Kubeflow Pipelines API. Wenn der Namespace nicht angegeben ist, auf den Wert Standardwerte kubeflow .

Generierte Dateien von TFX CLI

Beim Erstellen und Ausführen von Pipelines werden mehrere Dateien für die Pipeline-Verwaltung generiert.

  • ${HOME}/tfx/local, Strahl, Luftstrom, Scheitelpunkt
    • Pipeline - Metadaten aus der Konfiguration gelesen wird gespeichert unter ${HOME}/tfx/${ORCHESTRATION_ENGINE}/${PIPELINE_NAME} . Dieser Ort kann durch Setzen von Umgebungs varaible wie angepasst werden AIRFLOW_HOME oder KUBEFLOW_HOME . Dieses Verhalten kann in zukünftigen Versionen geändert werden. Dieses Verzeichnis wird verwendet, um Pipeline-Informationen einschließlich Pipeline-IDs im Kubeflow Pipelines-Cluster zu speichern, die zum Erstellen von Läufen oder zum Aktualisieren von Pipelines benötigt werden.
    • Vor TFX 0,25 wurden diese Dateien unter sich ${HOME}/${ORCHESTRATION_ENGINE} . In TFX 0.25 werden Dateien am alten Speicherort automatisch an den neuen Speicherort verschoben, um eine reibungslose Migration zu ermöglichen.
    • Ab TFX 0.27 erstellt kubeflow diese Metadatendateien nicht im lokalen Dateisystem. Unten finden Sie jedoch andere Dateien, die kubeflow erstellt.
  • (Nur Kubeflow) Dockerfile und ein Container-Image
    • Kubeflow Pipelines erfordert zwei Arten von Eingaben für eine Pipeline. Diese Dateien werden von TFX im aktuellen Verzeichnis generiert.
    • Eines ist ein Container-Image, das verwendet wird, um Komponenten in der Pipeline auszuführen. Dieser Behälter Bild aufgebaut wird , wenn eine Pipeline für Kubeflow Pipelines erstellt oder aktualisiert mit --build-image - Flag. TFX CLI generieren Dockerfile wenn nicht vorhanden ist , und bauen und einen Container Bild an der Registrierung in KubeflowDagRunnerConfig angegeben drücken.