Utilizzando l'interfaccia della riga di comando TFX

L'interfaccia della riga di comando (CLI) TFX esegue una gamma completa di azioni della pipeline utilizzando orchestratori di pipeline, come Kubeflow Pipelines e Vertex Pipelines. L'orchestratore locale può essere utilizzato anche per uno sviluppo o un debug più rapidi. Apache Beam e Apache Airflow sono supportati come funzionalità sperimentali. Ad esempio, puoi utilizzare la CLI per:

  • Crea, aggiorna ed elimina pipeline.
  • Eseguire una pipeline e monitorare l'esecuzione su vari orchestratori.
  • Elenca le pipeline e le esecuzioni della pipeline.

Informazioni sulla CLI TFX

La CLI TFX è installata come parte del pacchetto TFX. Tutti i comandi CLI seguono la struttura seguente:

tfx command-group command flags

Sono attualmente supportate le seguenti opzioni command-group :

  • pipeline tfx : crea e gestisci pipeline TFX.
  • tfx run : crea e gestisci esecuzioni di pipeline TFX su varie piattaforme di orchestrazione.
  • modello tfx : comandi sperimentali per elencare e copiare i modelli di pipeline TFX.

Ciascun gruppo di comandi fornisce una serie di commands . Seguire le istruzioni nelle sezioni comandi pipeline , comandi di esecuzione e comandi modello per ulteriori informazioni sull'utilizzo di questi comandi.

I flag ti consentono di passare argomenti ai comandi CLI. Le parole nei flag sono separate con un trattino ( - ) o un carattere di sottolineatura ( _ ). Ad esempio, il flag del nome della pipeline può essere specificato come --pipeline-name o --pipeline_name . Questo documento specifica i flag con trattini bassi per brevità. Ulteriori informazioni sui flags utilizzati nella CLI TFX .

pipeline tfx

La struttura dei comandi nel gruppo di comandi tfx pipeline è la seguente:

tfx pipeline command required-flags [optional-flags]

Utilizza le sezioni seguenti per ulteriori informazioni sui comandi nel gruppo di comandi tfx pipeline .

creare

Crea una nuova pipeline nell'agente di orchestrazione specificato.

Utilizzo:

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
Il percorso del file di configurazione della pipeline.
--endpoint= endpoint

(Facoltativo) Endpoint del servizio API Kubeflow Pipelines. L'endpoint del tuo servizio API Kubeflow Pipelines è lo stesso dell'URL del dashboard Kubeflow Pipelines. Il valore del tuo endpoint dovrebbe essere qualcosa del tipo:

https://host-name/pipeline

Se non conosci l'endpoint per il tuo cluster Kubeflow Pipelines, contatta l'amministratore del cluster.

Se --endpoint non è specificato, il nome DNS del servizio in cluster viene utilizzato come valore predefinito. Questo nome funziona solo se il comando CLI viene eseguito in un pod sul cluster Kubeflow Pipelines, come un'istanza di notebook Kubeflow Jupyter .

--motore= engine

(Facoltativo) L'agente di orchestrazione da utilizzare per la pipeline. Il valore del motore deve corrispondere a uno dei seguenti valori:

  • kubeflow : imposta il motore su Kubeflow
  • local : imposta il motore sull'orchestratore locale
  • vertice : imposta il motore su Vertex Pipelines
  • airflow : (sperimentale) imposta il motore su Apache Airflow
  • beam : (sperimentale) imposta il motore su Apache Beam

Se il motore non è impostato, viene rilevato automaticamente in base all'ambiente.

** Nota importante: l'agente di orchestrazione richiesto da DagRunner nel file di configurazione della pipeline deve corrispondere al motore selezionato o rilevato automaticamente. Il rilevamento automatico del motore si basa sull'ambiente dell'utente. Se Apache Airflow e Kubeflow Pipelines non sono installati, per impostazione predefinita viene utilizzato l'orchestratore locale.

--iap_client_id= iap-client-id
(Facoltativo) ID client per endpoint protetto IAP quando si utilizzano pipeline Kubeflow.
--namespace= namespace
(Facoltativo) Spazio dei nomi Kubernetes per connettersi all'API Kubeflow Pipelines. Se lo spazio dei nomi non è specificato, il valore predefinito è kubeflow .
--build_immagine

(Facoltativo) Quando il engine è kubeflow o vertex , TFX crea un'immagine del contenitore per la pipeline, se specificato. Verrà utilizzato il `Dockerfile` nella directory corrente e TFX ne genererà automaticamente uno se non esiste.

L'immagine creata verrà inviata al registro remoto specificato in "KubeflowDagRunnerConfig" o "KubeflowV2DagRunnerConfig".

--build_base_image= build-base-image

(Facoltativo) Quando il engine è kubeflow , TFX crea un'immagine del contenitore per la tua pipeline. L'immagine di base della build specifica l'immagine del contenitore di base da utilizzare durante la creazione dell'immagine del contenitore della pipeline.

Esempi:

Kubeflow:

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

Locale:

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

Vertice:

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

Per rilevare automaticamente il motore dall'ambiente dell'utente, evita semplicemente di utilizzare il flag del motore come nell'esempio seguente. Per maggiori dettagli consulta la sezione bandiere.

tfx pipeline create --pipeline_path=pipeline-path

aggiornamento

Aggiorna una pipeline esistente nell'agente di orchestrazione specificato.

Utilizzo:

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
Il percorso del file di configurazione della pipeline.
--endpoint= endpoint

(Facoltativo) Endpoint del servizio API Kubeflow Pipelines. L'endpoint del tuo servizio API Kubeflow Pipelines è lo stesso dell'URL del dashboard Kubeflow Pipelines. Il valore del tuo endpoint dovrebbe essere qualcosa del tipo:

https://host-name/pipeline

Se non conosci l'endpoint per il tuo cluster Kubeflow Pipelines, contatta l'amministratore del cluster.

Se --endpoint non è specificato, il nome DNS del servizio in cluster viene utilizzato come valore predefinito. Questo nome funziona solo se il comando CLI viene eseguito in un pod sul cluster Kubeflow Pipelines, come un'istanza di notebook Kubeflow Jupyter .

--motore= engine

(Facoltativo) L'agente di orchestrazione da utilizzare per la pipeline. Il valore del motore deve corrispondere a uno dei seguenti valori:

  • kubeflow : imposta il motore su Kubeflow
  • local : imposta il motore sull'orchestratore locale
  • vertice : imposta il motore su Vertex Pipelines
  • airflow : (sperimentale) imposta il motore su Apache Airflow
  • beam : (sperimentale) imposta il motore su Apache Beam

Se il motore non è impostato, viene rilevato automaticamente in base all'ambiente.

** Nota importante: l'agente di orchestrazione richiesto da DagRunner nel file di configurazione della pipeline deve corrispondere al motore selezionato o rilevato automaticamente. Il rilevamento automatico del motore si basa sull'ambiente dell'utente. Se Apache Airflow e Kubeflow Pipelines non sono installati, per impostazione predefinita viene utilizzato l'orchestratore locale.

--iap_client_id= iap-client-id
(Facoltativo) ID client per endpoint protetto IAP.
--namespace= namespace
(Facoltativo) Spazio dei nomi Kubernetes per connettersi all'API Kubeflow Pipelines. Se lo spazio dei nomi non è specificato, il valore predefinito è kubeflow .
--build_immagine

(Facoltativo) Quando il engine è kubeflow o vertex , TFX crea un'immagine del contenitore per la pipeline, se specificato. Verrà utilizzato il `Dockerfile` nella directory corrente.

L'immagine creata verrà inviata al registro remoto specificato in "KubeflowDagRunnerConfig" o "KubeflowV2DagRunnerConfig".

Esempi:

Kubeflow:

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

Locale:

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

Vertice:

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

compilare

Compila il file di configurazione della pipeline per creare un file del flusso di lavoro in Kubeflow ed esegue i seguenti controlli durante la compilazione:

  1. Controlla se il percorso della pipeline è valido.
  2. Controlla se i dettagli della pipeline vengono estratti correttamente dal file di configurazione della pipeline.
  3. Controlla se il DagRunner nella configurazione della pipeline corrisponde al motore.
  4. Controlla se il file del flusso di lavoro è stato creato correttamente nel percorso del pacchetto fornito (solo per Kubeflow).

Consigliato da utilizzare prima di creare o aggiornare una pipeline.

Utilizzo:

tfx pipeline compile --pipeline_path=pipeline-path [--engine=engine]
--pipeline_path= pipeline-path
Il percorso del file di configurazione della pipeline.
--motore= engine

(Facoltativo) L'agente di orchestrazione da utilizzare per la pipeline. Il valore del motore deve corrispondere a uno dei seguenti valori:

  • kubeflow : imposta il motore su Kubeflow
  • local : imposta il motore sull'orchestratore locale
  • vertice : imposta il motore su Vertex Pipelines
  • airflow : (sperimentale) imposta il motore su Apache Airflow
  • beam : (sperimentale) imposta il motore su Apache Beam

Se il motore non è impostato, viene rilevato automaticamente in base all'ambiente.

** Nota importante: l'agente di orchestrazione richiesto da DagRunner nel file di configurazione della pipeline deve corrispondere al motore selezionato o rilevato automaticamente. Il rilevamento automatico del motore si basa sull'ambiente dell'utente. Se Apache Airflow e Kubeflow Pipelines non sono installati, per impostazione predefinita viene utilizzato l'orchestratore locale.

Esempi:

Kubeflow:

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

Locale:

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

Vertice:

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

eliminare

Elimina una pipeline dall'agente di orchestrazione specificato.

Utilizzo:

tfx pipeline delete --pipeline_path=pipeline-path [--endpoint=endpoint --engine=engine \
--iap_client_id=iap-client-id --namespace=namespace]
--pipeline_path= pipeline-path
Il percorso del file di configurazione della pipeline.
--endpoint= endpoint

(Facoltativo) Endpoint del servizio API Kubeflow Pipelines. L'endpoint del servizio API Kubeflow Pipelines è lo stesso dell'URL del dashboard Kubeflow Pipelines. Il valore del tuo endpoint dovrebbe essere qualcosa del tipo:

https://host-name/pipeline

Se non conosci l'endpoint per il tuo cluster Kubeflow Pipelines, contatta l'amministratore del cluster.

Se --endpoint non è specificato, il nome DNS del servizio in cluster viene utilizzato come valore predefinito. Questo nome funziona solo se il comando CLI viene eseguito in un pod sul cluster Kubeflow Pipelines, come un'istanza di notebook Kubeflow Jupyter .

--motore= engine

(Facoltativo) L'agente di orchestrazione da utilizzare per la pipeline. Il valore del motore deve corrispondere a uno dei seguenti valori:

  • kubeflow : imposta il motore su Kubeflow
  • local : imposta il motore sull'orchestratore locale
  • vertice : imposta il motore su Vertex Pipelines
  • airflow : (sperimentale) imposta il motore su Apache Airflow
  • beam : (sperimentale) imposta il motore su Apache Beam

Se il motore non è impostato, viene rilevato automaticamente in base all'ambiente.

** Nota importante: l'agente di orchestrazione richiesto da DagRunner nel file di configurazione della pipeline deve corrispondere al motore selezionato o rilevato automaticamente. Il rilevamento automatico del motore si basa sull'ambiente dell'utente. Se Apache Airflow e Kubeflow Pipelines non sono installati, per impostazione predefinita viene utilizzato l'orchestratore locale.

--iap_client_id= iap-client-id
(Facoltativo) ID client per endpoint protetto IAP.
--namespace= namespace
(Facoltativo) Spazio dei nomi Kubernetes per connettersi all'API Kubeflow Pipelines. Se lo spazio dei nomi non è specificato, il valore predefinito è kubeflow .

Esempi:

Kubeflow:

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

Locale:

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

Vertice:

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

lista

Elenca tutte le pipeline nell'agente di orchestrazione specificato.

Utilizzo:

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

(Facoltativo) Endpoint del servizio API Kubeflow Pipelines. L'endpoint del tuo servizio API Kubeflow Pipelines è lo stesso dell'URL del dashboard Kubeflow Pipelines. Il valore del tuo endpoint dovrebbe essere qualcosa del tipo:

https://host-name/pipeline

Se non conosci l'endpoint per il tuo cluster Kubeflow Pipelines, contatta l'amministratore del cluster.

Se --endpoint non è specificato, il nome DNS del servizio in cluster viene utilizzato come valore predefinito. Questo nome funziona solo se il comando CLI viene eseguito in un pod sul cluster Kubeflow Pipelines, come un'istanza di notebook Kubeflow Jupyter .

--motore= engine

(Facoltativo) L'agente di orchestrazione da utilizzare per la pipeline. Il valore del motore deve corrispondere a uno dei seguenti valori:

  • kubeflow : imposta il motore su Kubeflow
  • local : imposta il motore sull'orchestratore locale
  • vertice : imposta il motore su Vertex Pipelines
  • airflow : (sperimentale) imposta il motore su Apache Airflow
  • beam : (sperimentale) imposta il motore su Apache Beam

Se il motore non è impostato, viene rilevato automaticamente in base all'ambiente.

** Nota importante: l'agente di orchestrazione richiesto da DagRunner nel file di configurazione della pipeline deve corrispondere al motore selezionato o rilevato automaticamente. Il rilevamento automatico del motore si basa sull'ambiente dell'utente. Se Apache Airflow e Kubeflow Pipelines non sono installati, per impostazione predefinita viene utilizzato l'orchestratore locale.

--iap_client_id= iap-client-id
(Facoltativo) ID client per endpoint protetto IAP.
--namespace= namespace
(Facoltativo) Spazio dei nomi Kubernetes per connettersi all'API Kubeflow Pipelines. Se lo spazio dei nomi non è specificato, il valore predefinito è kubeflow .

Esempi:

Kubeflow:

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

Locale:

tfx pipeline list --engine=local

Vertice:

tfx pipeline list --engine=vertex

tfx eseguito

La struttura dei comandi nel gruppo di comandi tfx run è la seguente:

tfx run command required-flags [optional-flags]

Utilizza le sezioni seguenti per ulteriori informazioni sui comandi nel gruppo di comandi tfx run .

creare

Crea una nuova istanza di esecuzione per una pipeline nell'agente di orchestrazione. Per Kubeflow, viene utilizzata la versione più recente della pipeline nel cluster.

Utilizzo:

tfx run create --pipeline_name=pipeline-name [--endpoint=endpoint \
--engine=engine --iap_client_id=iap-client-id --namespace=namespace]
--pipeline_name= pipeline-name
Il nome della pipeline.
--endpoint= endpoint

(Facoltativo) Endpoint del servizio API Kubeflow Pipelines. L'endpoint del servizio API Kubeflow Pipelines è lo stesso dell'URL del dashboard Kubeflow Pipelines. Il valore del tuo endpoint dovrebbe essere qualcosa del tipo:

https://host-name/pipeline

Se non conosci l'endpoint per il tuo cluster Kubeflow Pipelines, contatta l'amministratore del cluster.

Se --endpoint non è specificato, il nome DNS del servizio in cluster viene utilizzato come valore predefinito. Questo nome funziona solo se il comando CLI viene eseguito in un pod sul cluster Kubeflow Pipelines, come un'istanza di notebook Kubeflow Jupyter .

--motore= engine

(Facoltativo) L'agente di orchestrazione da utilizzare per la pipeline. Il valore del motore deve corrispondere a uno dei seguenti valori:

  • kubeflow : imposta il motore su Kubeflow
  • local : imposta il motore sull'orchestratore locale
  • vertice : imposta il motore su Vertex Pipelines
  • airflow : (sperimentale) imposta il motore su Apache Airflow
  • beam : (sperimentale) imposta il motore su Apache Beam

Se il motore non è impostato, viene rilevato automaticamente in base all'ambiente.

** Nota importante: l'agente di orchestrazione richiesto da DagRunner nel file di configurazione della pipeline deve corrispondere al motore selezionato o rilevato automaticamente. Il rilevamento automatico del motore si basa sull'ambiente dell'utente. Se Apache Airflow e Kubeflow Pipelines non sono installati, per impostazione predefinita viene utilizzato l'orchestratore locale.

--runtime_parameter= parameter-name = parameter-value
(Facoltativo) Imposta il valore di un parametro di runtime. Può essere impostato più volte per impostare valori di più variabili. Applicabile solo al motore "airflow", "kubeflow" e "vertex".
--iap_client_id= iap-client-id
(Facoltativo) ID client per endpoint protetto IAP.
--namespace= namespace
(Facoltativo) Spazio dei nomi Kubernetes per connettersi all'API Kubeflow Pipelines. Se lo spazio dei nomi non è specificato, il valore predefinito è kubeflow .
--project= GCP-project-id
(Obbligatorio per Vertex.) ID progetto GCP per la pipeline vertex.
--region= GCP-region
(Obbligatorio per Vertex.) Nome della regione GCP come us-central1. Consulta la [documentazione Vertex](https://cloud.google.com/vertex-ai/docs/general/locations) per le regioni disponibili.

Esempi:

Kubeflow:

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

Locale:

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

Vertice:

tfx run create --engine=vertex --pipeline_name=pipeline-name \
  --runtime_parameter=var_name=var_value \
  --project=gcp-project-id --region=gcp-region

terminare

Interrompe l'esecuzione di una determinata pipeline.

** Nota importante: attualmente supportato solo in Kubeflow.

Utilizzo:

tfx run terminate --run_id=run-id [--endpoint=endpoint --engine=engine \
--iap_client_id=iap-client-id --namespace=namespace]
--run_id= run-id
Identificatore univoco per l'esecuzione della pipeline.
--endpoint= endpoint

(Facoltativo) Endpoint del servizio API Kubeflow Pipelines. L'endpoint del servizio API Kubeflow Pipelines è lo stesso dell'URL del dashboard Kubeflow Pipelines. Il valore del tuo endpoint dovrebbe essere qualcosa del tipo:

https://host-name/pipeline

Se non conosci l'endpoint per il tuo cluster Kubeflow Pipelines, contatta l'amministratore del cluster.

Se --endpoint non è specificato, il nome DNS del servizio in cluster viene utilizzato come valore predefinito. Questo nome funziona solo se il comando CLI viene eseguito in un pod sul cluster Kubeflow Pipelines, come un'istanza di notebook Kubeflow Jupyter .

--motore= engine

(Facoltativo) L'agente di orchestrazione da utilizzare per la pipeline. Il valore del motore deve corrispondere a uno dei seguenti valori:

  • kubeflow : imposta il motore su Kubeflow

Se il motore non è impostato, viene rilevato automaticamente in base all'ambiente.

** Nota importante: l'agente di orchestrazione richiesto da DagRunner nel file di configurazione della pipeline deve corrispondere al motore selezionato o rilevato automaticamente. Il rilevamento automatico del motore si basa sull'ambiente dell'utente. Se Apache Airflow e Kubeflow Pipelines non sono installati, per impostazione predefinita viene utilizzato l'orchestratore locale.

--iap_client_id= iap-client-id
(Facoltativo) ID client per endpoint protetto IAP.
--namespace= namespace
(Facoltativo) Spazio dei nomi Kubernetes per connettersi all'API Kubeflow Pipelines. Se lo spazio dei nomi non è specificato, il valore predefinito è kubeflow .

Esempi:

Kubeflow:

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

lista

Elenca tutte le esecuzioni di una pipeline.

** Nota importante: attualmente non supportato in Local e Apache Beam.

Utilizzo:

tfx run list --pipeline_name=pipeline-name [--endpoint=endpoint \
--engine=engine --iap_client_id=iap-client-id --namespace=namespace]
--pipeline_name= pipeline-name
Il nome della pipeline.
--endpoint= endpoint

(Facoltativo) Endpoint del servizio API Kubeflow Pipelines. L'endpoint del tuo servizio API Kubeflow Pipelines è lo stesso dell'URL del dashboard Kubeflow Pipelines. Il valore del tuo endpoint dovrebbe essere qualcosa del tipo:

https://host-name/pipeline

Se non conosci l'endpoint per il tuo cluster Kubeflow Pipelines, contatta l'amministratore del cluster.

Se --endpoint non è specificato, il nome DNS del servizio in cluster viene utilizzato come valore predefinito. Questo nome funziona solo se il comando CLI viene eseguito in un pod sul cluster Kubeflow Pipelines, come un'istanza di notebook Kubeflow Jupyter .

--motore= engine

(Facoltativo) L'agente di orchestrazione da utilizzare per la pipeline. Il valore del motore deve corrispondere a uno dei seguenti valori:

  • kubeflow : imposta il motore su Kubeflow
  • airflow : (sperimentale) imposta il motore su Apache Airflow

Se il motore non è impostato, viene rilevato automaticamente in base all'ambiente.

** Nota importante: l'agente di orchestrazione richiesto da DagRunner nel file di configurazione della pipeline deve corrispondere al motore selezionato o rilevato automaticamente. Il rilevamento automatico del motore si basa sull'ambiente dell'utente. Se Apache Airflow e Kubeflow Pipelines non sono installati, per impostazione predefinita viene utilizzato l'orchestratore locale.

--iap_client_id= iap-client-id
(Facoltativo) ID client per endpoint protetto IAP.
--namespace= namespace
(Facoltativo) Spazio dei nomi Kubernetes per connettersi all'API Kubeflow Pipelines. Se lo spazio dei nomi non è specificato, il valore predefinito è kubeflow .

Esempi:

Kubeflow:

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

stato

Restituisce lo stato corrente di un'esecuzione.

** Nota importante: attualmente non supportato in Local e Apache Beam.

Utilizzo:

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
Il nome della pipeline.
--run_id= run-id
Identificatore univoco per l'esecuzione della pipeline.
--endpoint= endpoint

(Facoltativo) Endpoint del servizio API Kubeflow Pipelines. L'endpoint del tuo servizio API Kubeflow Pipelines è lo stesso dell'URL del dashboard Kubeflow Pipelines. Il valore del tuo endpoint dovrebbe essere qualcosa del tipo:

https://host-name/pipeline

Se non conosci l'endpoint per il tuo cluster Kubeflow Pipelines, contatta l'amministratore del cluster.

Se --endpoint non è specificato, il nome DNS del servizio in cluster viene utilizzato come valore predefinito. Questo nome funziona solo se il comando CLI viene eseguito in un pod sul cluster Kubeflow Pipelines, come un'istanza di notebook Kubeflow Jupyter .

--motore= engine

(Facoltativo) L'agente di orchestrazione da utilizzare per la pipeline. Il valore del motore deve corrispondere a uno dei seguenti valori:

  • kubeflow : imposta il motore su Kubeflow
  • airflow : (sperimentale) imposta il motore su Apache Airflow

Se il motore non è impostato, viene rilevato automaticamente in base all'ambiente.

** Nota importante: l'agente di orchestrazione richiesto da DagRunner nel file di configurazione della pipeline deve corrispondere al motore selezionato o rilevato automaticamente. Il rilevamento automatico del motore si basa sull'ambiente dell'utente. Se Apache Airflow e Kubeflow Pipelines non sono installati, per impostazione predefinita viene utilizzato l'orchestratore locale.

--iap_client_id= iap-client-id
(Facoltativo) ID client per endpoint protetto IAP.
--namespace= namespace
(Facoltativo) Spazio dei nomi Kubernetes per connettersi all'API Kubeflow Pipelines. Se lo spazio dei nomi non è specificato, il valore predefinito è kubeflow .

Esempi:

Kubeflow:

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

eliminare

Elimina un'esecuzione di una determinata pipeline.

** Nota importante: attualmente supportato solo in Kubeflow

Utilizzo:

tfx run delete --run_id=run-id [--engine=engine --iap_client_id=iap-client-id \
--namespace=namespace --endpoint=endpoint]
--run_id= run-id
Identificatore univoco per l'esecuzione della pipeline.
--endpoint= endpoint

(Facoltativo) Endpoint del servizio API Kubeflow Pipelines. L'endpoint del servizio API Kubeflow Pipelines è lo stesso dell'URL del dashboard Kubeflow Pipelines. Il valore del tuo endpoint dovrebbe essere qualcosa del tipo:

https://host-name/pipeline

Se non conosci l'endpoint per il tuo cluster Kubeflow Pipelines, contatta l'amministratore del cluster.

Se --endpoint non è specificato, il nome DNS del servizio in cluster viene utilizzato come valore predefinito. Questo nome funziona solo se il comando CLI viene eseguito in un pod sul cluster Kubeflow Pipelines, come un'istanza di notebook Kubeflow Jupyter .

--motore= engine

(Facoltativo) L'agente di orchestrazione da utilizzare per la pipeline. Il valore del motore deve corrispondere a uno dei seguenti valori:

  • kubeflow : imposta il motore su Kubeflow

Se il motore non è impostato, viene rilevato automaticamente in base all'ambiente.

** Nota importante: l'agente di orchestrazione richiesto da DagRunner nel file di configurazione della pipeline deve corrispondere al motore selezionato o rilevato automaticamente. Il rilevamento automatico del motore si basa sull'ambiente dell'utente. Se Apache Airflow e Kubeflow Pipelines non sono installati, per impostazione predefinita viene utilizzato l'orchestratore locale.

--iap_client_id= iap-client-id
(Facoltativo) ID client per endpoint protetto IAP.
--namespace= namespace
(Facoltativo) Spazio dei nomi Kubernetes per connettersi all'API Kubeflow Pipelines. Se lo spazio dei nomi non è specificato, il valore predefinito è kubeflow .

Esempi:

Kubeflow:

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

modello tfx [sperimentale]

La struttura dei comandi nel gruppo di comandi tfx template è la seguente:

tfx template command required-flags [optional-flags]

Utilizza le sezioni seguenti per ulteriori informazioni sui comandi nel gruppo di comandi tfx template . Il modello è una funzionalità sperimentale e soggetta a modifiche in qualsiasi momento.

lista

Elenca i modelli di pipeline TFX disponibili.

Utilizzo:

tfx template list

copia

Copia un modello nella directory di destinazione.

Utilizzo:

tfx template copy --model=model --pipeline_name=pipeline-name \
--destination_path=destination-path
--modello= model
Il nome del modello creato dal modello di pipeline.
--pipeline_name= pipeline-name
Il nome della pipeline.
--destination_path= destination-path
Il percorso in cui copiare il modello.

Comprensione dei flag CLI TFX

Bandiere comuni

--motore= engine

L'orchestratore da utilizzare per la pipeline. Il valore del motore deve corrispondere a uno dei seguenti valori:

  • kubeflow : imposta il motore su Kubeflow
  • local : imposta il motore sull'orchestratore locale
  • vertice : imposta il motore su Vertex Pipelines
  • airflow : (sperimentale) imposta il motore su Apache Airflow
  • beam : (sperimentale) imposta il motore su Apache Beam

Se il motore non è impostato, viene rilevato automaticamente in base all'ambiente.

** Nota importante: l'agente di orchestrazione richiesto da DagRunner nel file di configurazione della pipeline deve corrispondere al motore selezionato o rilevato automaticamente. Il rilevamento automatico del motore si basa sull'ambiente dell'utente. Se Apache Airflow e Kubeflow Pipelines non sono installati, per impostazione predefinita viene utilizzato l'orchestratore locale.

--pipeline_name= pipeline-name
Il nome della pipeline.
--pipeline_path= pipeline-path
Il percorso del file di configurazione della pipeline.
--run_id= run-id
Identificatore univoco per l'esecuzione della pipeline.

Flag specifici di Kubeflow

--endpoint= endpoint

Endpoint del servizio API Kubeflow Pipelines. L'endpoint del servizio API Kubeflow Pipelines è lo stesso dell'URL del dashboard Kubeflow Pipelines. Il valore del tuo endpoint dovrebbe essere qualcosa del tipo:

https://host-name/pipeline

Se non conosci l'endpoint per il tuo cluster Kubeflow Pipelines, contatta l'amministratore del cluster.

Se --endpoint non è specificato, il nome DNS del servizio in cluster viene utilizzato come valore predefinito. Questo nome funziona solo se il comando CLI viene eseguito in un pod sul cluster Kubeflow Pipelines, come un'istanza di notebook Kubeflow Jupyter .

--iap_client_id= iap-client-id
ID client per endpoint protetto IAP.
--namespace= namespace
Spazio dei nomi Kubernetes per connettersi all'API Kubeflow Pipelines. Se lo spazio dei nomi non è specificato, il valore predefinito è kubeflow .

File generati dalla CLI TFX

Quando le pipeline vengono create ed eseguite, vengono generati diversi file per la gestione della pipeline.

  • ${HOME}/tfx/local, trave, flusso d'aria, vertice
    • I metadati della pipeline letti dalla configurazione vengono archiviati in ${HOME}/tfx/${ORCHESTRATION_ENGINE}/${PIPELINE_NAME} . Questa posizione può essere personalizzata impostando una variabile di ambiente come AIRFLOW_HOME o KUBEFLOW_HOME . Questo comportamento potrebbe essere modificato nelle versioni future. Questa directory viene utilizzata per archiviare le informazioni sulla pipeline, inclusi gli ID pipeline nel cluster Kubeflow Pipelines, necessari per creare esecuzioni o aggiornare le pipeline.
    • Prima di TFX 0.25, questi file si trovavano in ${HOME}/${ORCHESTRATION_ENGINE} . In TFX 0.25, i file nella vecchia posizione verranno spostati automaticamente nella nuova posizione per una migrazione senza intoppi.
    • A partire da TFX 0.27, kubeflow non crea questi file di metadati nel file system locale. Tuttavia, vedi sotto per gli altri file creati da kubeflow.
  • (Solo Kubeflow) Dockerfile e un'immagine del contenitore
    • Kubeflow Pipelines richiede due tipi di input per una pipeline. Questi file sono generati da TFX nella directory corrente.
    • Una è un'immagine del contenitore che verrà utilizzata per eseguire i componenti nella pipeline. Questa immagine del contenitore viene creata quando una pipeline per Kubeflow Pipelines viene creata o aggiornata con il flag --build-image . La CLI TFX genererà Dockerfile se non esiste e creerà e invierà un'immagine del contenitore al registro specificato in KubeflowDagRunnerConfig.