TFX 명령줄 인터페이스(CLI)는 Apache Airflow, Apache Beam 및 Kubeflow Pipelines와 같은 파이프라인 오케스트레이터를 사용하여 전체 범위의 파이프라인 작업을 수행합니다. 빠른 개발 또는 디버깅을 위해 로컬 오케스트레이터를 사용할 수도 있습니다. 예를 들어 CLI를 사용하여 다음을 수행할 수 있습니다.
- 파이프라인을 생성, 업데이트 및 삭제합니다.
- 파이프라인을 실행하고 다양한 오케스트레이터에서 실행을 모니터링합니다.
- 파이프라인 및 파이프라인 실행을 나열합니다.
참고: TFX CLI는 현재 호환성 보장을 제공하지 않습니다. 새 버전이 출시되면 CLI 인터페이스가 변경될 수 있습니다.
TFX CLI 정보
TFX CLI는 TFX 패키지의 일부로 설치됩니다. 모든 CLI 명령은 아래 구조를 따릅니다.
tfx <var>command-group</var> <var>command</var> <var>flags</var>
현재 지원되는 명령 그룹 옵션은 다음과 같습니다.
- tfx pipeline - TFX 파이프라인을 만들고 관리합니다.
- tfx run - 다양한 조정 플랫폼에서 TFX 파이프라인 실행을 생성하고 관리합니다.
- tfx template - TFX 파이프라인 템플릿을 나열하고 복사하기 위한 실험 단계에 있는 명령입니다.
각 명령 그룹은 commands 세트를 제공합니다. 파이프라인 명령, 실행 명령 및 템플릿 명령 섹션의 지침에 따라 이들 명령을 사용하는 방법에 대해 자세히 알아보세요.
경고: 현재, 모든 오케스트레이터에서 모든 명령이 지원되는 것은 아닙니다. 이들 명령은 지원되는 엔진을 명시적으로 언급합니다.
플래그를 사용하면 CLI 명령에 인수를 전달할 수 있습니다. 플래그의 단어는 하이픈(-
) 또는 밑줄(_
)로 구분됩니다. 예를 들어, 파이프라인 이름 플래그는 --pipeline-name
또는 --pipeline_name
으로 지정할 수 있습니다. 이 문서에서는 간단히 하기 위해 밑줄로 플래그를 지정합니다. TFX CLI에서 사용되는 플래그에 대해 자세히 알아보세요.
tfx pipeline
tfx pipeline
명령 그룹의 명령 구조는 다음과 같습니다.
tfx pipeline <var>command</var> <var>required-flags</var> [<var>optional-flags</var>]
다음 섹션을 사용하여 tfx pipeline
명령 그룹의 명령에 대해 자세히 알아보세요.
create
지정된 오케스트레이터에서 새 파이프라인을 만듭니다.
사용법:
tfx pipeline create --pipeline_path=<var>pipeline-path</var> [--endpoint=<var>endpoint</var> --engine=<var>engine</var> \ --iap_client_id=<var>iap-client-id</var> --namespace=<var>namespace</var> \ --build_image --build_base_image=<var>build-base-image</var>]
- --pipeline_path=pipeline-path
- 파이프라인 구성 파일의 경로입니다.
- --endpoint=endpoint
-
(선택 사항) Kubeflow Pipelines API 서비스의 끝점입니다. Kubeflow Pipelines API 서비스의 끝점은 Kubeflow Pipelines 대시보드의 URL과 동일합니다. 끝점 값은 다음과 같아야 합니다.
<pre>https://<var>host-name</var>/pipeline</pre>
<p>
If you do not know the endpoint for your Kubeflow Pipelines cluster,
contact you cluster administrator.
</p>
<p>
If the <code>--endpoint</code> is not specified, the in-cluster service
DNS name is used as the default value. This name works only if the
CLI command executes in a pod on the Kubeflow Pipelines cluster, such as a
<a href="https://www.kubeflow.org/docs/notebooks/why-use-jupyter-notebook/"
class="external">Kubeflow Jupyter notebooks</a> instance.
</p>
(선택 사항) 파이프라인에 사용할 오케스트레이터입니다. 엔진 값은 다음 값 중 하나와 일치해야 합니다.
- airflow: 엔진을 Apache Airflow로 설정합니다.
- beam: 엔진을 Apache Beam으로 설정합니다.
- kubeflow: 엔진을 Kubeflow로 설정합니다.
- local: 엔진을 로컬 오케스트레이터로 설정합니다.
엔진이 설정되지 않으면, 환경에 따라 엔진이 자동 감지됩니다.
** 중요 참고 사항: 파이프라인 구성 파일에서 DagRunner에 필요한 오케스트레이터는 선택되거나 자동 감지된 엔진과 일치해야 합니다. 엔진 자동 감지는 사용자 환경을 기반으로 합니다. Apache Airflow 및 Kubeflow Pipelines가 설치되지 않은 경우, 기본적으로 로컬 오케스트레이터가 사용됩니다.
kubeflow
가 기본값으로 사용됩니다.(선택 사항) engine이 kubeflow이면 TFX는 지정된 경우 파이프라인에 대한 컨테이너 이미지를 생성합니다. 현재 디렉토리의 Dockerfile
이 사용되며, 존재하지 않으면 TFX에서 자동으로 생성합니다.
빌드된 이미지는 KubeflowDagRunnerConfig
에 지정된 원격 레지스트리로 푸시됩니다.
(선택 사항) engine이 kubeflow이면 TFX는 파이프라인에 대한 컨테이너 이미지를 생성합니다. 빌드 기본 이미지는 파이프라인 컨테이너 이미지를 빌드할 때 사용할 기본 컨테이너 이미지를 지정합니다.
예:
Apache Airflow:
tfx pipeline create --engine=airflow --pipeline_path=<var>pipeline-path</var>
Kubeflow:
tfx pipeline create --engine=kubeflow --pipeline_path=<var>pipeline-path</var> \ --iap_client_id=<var>iap-client-id</var> --namespace=<var>namespace</var> --endpoint=<var>endpoint</var> \ --build_image
Local:
tfx pipeline create --engine=local --pipeline_path=<var>pipeline-path</var>
사용자 환경에서 엔진을 자동 감지하려면 아래 예와 같이 engine 플래그를 사용하지 않으면 됩니다. 자세한 내용은 플래그 섹션을 확인하세요.
tfx pipeline create --pipeline_path=<var>pipeline-path</var>
update
지정된 오케스트레이터에서 기존 파이프라인을 업데이트합니다.
사용법:
tfx pipeline update --pipeline_path=<var>pipeline-path</var> [--endpoint=<var>endpoint</var> --engine=<var>engine</var> \ --iap_client_id=<var>iap-client-id</var> --namespace=<var>namespace</var> --build_image]
- --pipeline_path=pipeline-path
- 파이프라인 구성 파일의 경로입니다.
- --endpoint=endpoint
-
(선택 사항) Kubeflow Pipelines API 서비스의 끝점입니다. Kubeflow Pipelines API 서비스의 끝점은 Kubeflow Pipelines 대시보드의 URL과 동일합니다. 끝점 값은 다음과 같아야 합니다.
<pre>https://<var>host-name</var>/pipeline</pre>
<p>
If you do not know the endpoint for your Kubeflow Pipelines cluster,
contact you cluster administrator.
</p>
<p>
If the <code>--endpoint</code> is not specified, the in-cluster service
DNS name is used as the default value. This name works only if the
CLI command executes in a pod on the Kubeflow Pipelines cluster, such as a
<a href="https://www.kubeflow.org/docs/notebooks/why-use-jupyter-notebook/"
class="external">Kubeflow Jupyter notebooks</a> instance.
</p>
(선택 사항) 파이프라인에 사용할 오케스트레이터입니다. 엔진 값은 다음 값 중 하나와 일치해야 합니다.
- airflow: 엔진을 Apache Airflow로 설정합니다.
- beam: 엔진을 Apache Beam으로 설정합니다.
- kubeflow: 엔진을 Kubeflow로 설정합니다.
- local: 엔진을 로컬 오케스트레이터로 설정합니다.
엔진이 설정되지 않으면, 환경에 따라 엔진이 자동 감지됩니다.
** 중요 참고 사항: 파이프라인 구성 파일에서 DagRunner에 필요한 오케스트레이터는 선택되거나 자동 감지된 엔진과 일치해야 합니다. 엔진 자동 감지는 사용자 환경을 기반으로 합니다. Apache Airflow 및 Kubeflow Pipelines가 설치되지 않은 경우, 기본적으로 로컬 오케스트레이터가 사용됩니다.
kubeflow
가 기본값으로 사용됩니다.(선택 사항) engine이 kubeflow이면 TFX는 지정된 경우 파이프라인에 대한 컨테이너 이미지를 생성합니다. 현재 디렉토리의 Dockerfile
이 사용됩니다.
빌드된 이미지는 KubeflowDagRunnerConfig
에 지정된 원격 레지스트리로 푸시됩니다.
예:
Apache Airflow:
tfx pipeline update --engine=airflow --pipeline_path=<var>pipeline-path</var>
Kubeflow:
tfx pipeline update --engine=kubeflow --pipeline_path=<var>pipeline-path</var> \ --iap_client_id=<var>iap-client-id</var> --namespace=<var>namespace</var> --endpoint=<var>endpoint</var> \ --build_image
Local:
tfx pipeline update --engine=local --pipeline_path=<var>pipeline-path</var>
compile
파이프라인 구성 파일을 컴파일하여 Kubeflow에서 워크플로 파일을 만들고 컴파일하는 동안 다음 검사를 수행합니다.
- 파이프라인 경로가 유효한지 확인합니다.
- 파이프라인 구성 파일에서 파이프라인 세부 정보가 성공적으로 추출되었는지 확인합니다.
- 파이프라인 구성의 DagRunner가 엔진과 일치하는지 확인합니다.
- 제공된 패키지 경로에 워크플로 파일이 성공적으로 생성되었는지 확인합니다(Kubflow에만 해당).
파이프라인을 생성하거나 업데이트하기 전에 사용하는 것이 좋습니다.
사용법:
tfx pipeline compile --pipeline_path=<var>pipeline-path</var> [--engine=<var>engine</var>]
- --pipeline_path=pipeline-path
- 파이프라인 구성 파일의 경로입니다.
- --engine=engine
-
(선택 사항) 파이프라인에 사용할 오케스트레이터입니다. 엔진 값은 다음 값 중 하나와 일치해야 합니다.
- airflow: 엔진을 Apache Airflow로 설정합니다.
- beam: 엔진을 Apache Beam으로 설정합니다.
- kubeflow: 엔진을 Kubeflow로 설정합니다.
- local: 엔진을 로컬 오케스트레이터로 설정합니다.
엔진이 설정되지 않으면, 환경에 따라 엔진이 자동 감지됩니다.
** 중요 참고 사항: 파이프라인 구성 파일에서 DagRunner에 필요한 오케스트레이터는 선택되거나 자동 감지된 엔진과 일치해야 합니다. 엔진 자동 감지는 사용자 환경을 기반으로 합니다. Apache Airflow 및 Kubeflow Pipelines가 설치되지 않은 경우, 기본적으로 로컬 오케스트레이터가 사용됩니다.
예:
Apache Airflow:
tfx pipeline compile --engine=airflow --pipeline_path=<var>pipeline-path</var>
Kubeflow:
tfx pipeline compile --engine=kubeflow --pipeline_path=<var>pipeline-path</var>
Local:
tfx pipeline compile --engine=local --pipeline_path=<var>pipeline-path</var>
delete
지정된 오케스트레이터에서 파이프라인을 삭제합니다.
사용법:
tfx pipeline delete --pipeline_path=<var>pipeline-path</var> [--endpoint=<var>endpoint</var> --engine=<var>engine</var> \<br>--iap_client_id=<var>iap-client-id</var> --namespace=<var>namespace</var>]
- --pipeline_path=pipeline-path
- 파이프라인 구성 파일의 경로입니다.
- --endpoint=endpoint
-
(선택 사항) Kubeflow Pipelines API 서비스의 끝점입니다. Kubeflow Pipelines API 서비스의 끝점은 Kubeflow Pipelines 대시보드의 URL과 동일합니다. 끝점 값은 다음과 같아야 합니다.
<pre>https://<var>host-name</var>/pipeline</pre>
<p>
If you do not know the endpoint for your Kubeflow Pipelines cluster,
contact you cluster administrator.
</p>
<p>
If the <code>--endpoint</code> is not specified, the in-cluster service
DNS name is used as the default value. This name works only if the
CLI command executes in a pod on the Kubeflow Pipelines cluster, such as a
<a href="https://www.kubeflow.org/docs/notebooks/why-use-jupyter-notebook/"
class="external">Kubeflow Jupyter notebooks</a> instance.
</p>
(선택 사항) 파이프라인에 사용할 오케스트레이터입니다. 엔진 값은 다음 값 중 하나와 일치해야 합니다.
- airflow: 엔진을 Apache Airflow로 설정합니다.
- beam: 엔진을 Apache Beam으로 설정합니다.
- kubeflow: 엔진을 Kubeflow로 설정합니다.
- local: 엔진을 로컬 오케스트레이터로 설정합니다.
엔진이 설정되지 않으면, 환경에 따라 엔진이 자동 감지됩니다.
** 중요 참고 사항: 파이프라인 구성 파일에서 DagRunner에 필요한 오케스트레이터는 선택되거나 자동 감지된 엔진과 일치해야 합니다. 엔진 자동 감지는 사용자 환경을 기반으로 합니다. Apache Airflow 및 Kubeflow Pipelines가 설치되지 않은 경우, 기본적으로 로컬 오케스트레이터가 사용됩니다.
kubeflow
가 기본값으로 사용됩니다.예:
Apache Airflow:
tfx pipeline delete --engine=airflow --pipeline_name=<var>pipeline-name</var>
Kubeflow:
tfx pipeline delete --engine=kubeflow --pipeline_name=<var>pipeline-name</var> \<br>--iap_client_id=<var>iap-client-id</var> --namespace=<var>namespace</var> --endpoint=<var>endpoint</var>
Local:
tfx pipeline delete --engine=local --pipeline_name=<var>pipeline-name</var>
list
지정된 오케스트레이터의 모든 파이프라인을 나열합니다.
사용법:
tfx pipeline list [--endpoint=<var>endpoint</var> --engine=<var>engine</var> \<br>--iap_client_id=<var>iap-client-id</var> --namespace=<var>namespace</var>]
- --endpoint=endpoint
-
(선택 사항) Kubeflow Pipelines API 서비스의 끝점입니다. Kubeflow Pipelines API 서비스의 끝점은 Kubeflow Pipelines 대시보드의 URL과 동일합니다. 끝점 값은 다음과 같아야 합니다.
<pre>https://<var>host-name</var>/pipeline</pre>
<p>
If you do not know the endpoint for your Kubeflow Pipelines cluster,
contact you cluster administrator.
</p>
<p>
If the <code>--endpoint</code> is not specified, the in-cluster service
DNS name is used as the default value. This name works only if the
CLI command executes in a pod on the Kubeflow Pipelines cluster, such as a
<a href="https://www.kubeflow.org/docs/notebooks/why-use-jupyter-notebook/"
class="external">Kubeflow Jupyter notebooks</a> instance.
</p>
(선택 사항) 파이프라인에 사용할 오케스트레이터입니다. 엔진 값은 다음 값 중 하나와 일치해야 합니다.
- airflow: 엔진을 Apache Airflow로 설정합니다.
- beam: 엔진을 Apache Beam으로 설정합니다.
- kubeflow: 엔진을 Kubeflow로 설정합니다.
- local: 엔진을 로컬 오케스트레이터로 설정합니다.
엔진이 설정되지 않으면, 환경에 따라 엔진이 자동 감지됩니다.
** 중요 참고 사항: 파이프라인 구성 파일에서 DagRunner에 필요한 오케스트레이터는 선택되거나 자동 감지된 엔진과 일치해야 합니다. 엔진 자동 감지는 사용자 환경을 기반으로 합니다. Apache Airflow 및 Kubeflow Pipelines가 설치되지 않은 경우, 기본적으로 로컬 오케스트레이터가 사용됩니다.
kubeflow
가 기본값으로 사용됩니다.예:
Apache Airflow:
tfx pipeline list --engine=airflow
Kubeflow:
tfx pipeline list --engine=kubeflow --iap_client_id=<var>iap-client-id</var> \<br>--namespace=<var>namespace</var> --endpoint=<var>endpoint</var>
Local:
tfx pipeline list --engine=local
tfx run
tfx run
명령 그룹의 명령 구조는 다음과 같습니다.
tfx run <var>command</var> <var>required-flags</var> [<var>optional-flags</var>]
다음 섹션을 통해 tfx run
명령 그룹의 명령에 대해 자세히 알아보세요.
create
오케스트레이터에서 파이프라인에 대한 새 실행 인스턴스를 만듭니다. Kubeflow의 경우 클러스터에 있는 파이프라인의 최신 파이프라인 버전이 사용됩니다.
사용법:
tfx run create --pipeline_name=<var>pipeline-name</var> [--endpoint=<var>endpoint</var> \<br>--engine=<var>engine</var> --iap_client_id=<var>iap-client-id</var> --namespace=<var>namespace</var>]
- --pipeline_name=pipeline-name
- 파이프라인의 이름입니다.
- --endpoint=endpoint
-
(선택 사항) Kubeflow Pipelines API 서비스의 끝점입니다. Kubeflow Pipelines API 서비스의 끝점은 Kubeflow Pipelines 대시보드의 URL과 동일합니다. 끝점 값은 다음과 같아야 합니다.
<pre>https://<var>host-name</var>/pipeline</pre>
<p>
If you do not know the endpoint for your Kubeflow Pipelines cluster,
contact you cluster administrator.
</p>
<p>
If the <code>--endpoint</code> is not specified, the in-cluster service
DNS name is used as the default value. This name works only if the
CLI command executes in a pod on the Kubeflow Pipelines cluster, such as a
<a href="https://www.kubeflow.org/docs/notebooks/why-use-jupyter-notebook/"
class="external">Kubeflow Jupyter notebooks</a> instance.
</p>
(선택 사항) 파이프라인에 사용할 오케스트레이터입니다. 엔진 값은 다음 값 중 하나와 일치해야 합니다.
- airflow: 엔진을 Apache Airflow로 설정합니다.
- beam: 엔진을 Apache Beam으로 설정합니다.
- kubeflow: 엔진을 Kubeflow로 설정합니다.
- local: 엔진을 로컬 오케스트레이터로 설정합니다.
엔진이 설정되지 않으면, 환경에 따라 엔진이 자동 감지됩니다.
** 중요 참고 사항: 파이프라인 구성 파일에서 DagRunner에 필요한 오케스트레이터는 선택되거나 자동 감지된 엔진과 일치해야 합니다. 엔진 자동 감지는 사용자 환경을 기반으로 합니다. Apache Airflow 및 Kubeflow Pipelines가 설치되지 않은 경우, 기본적으로 로컬 오케스트레이터가 사용됩니다.
kubeflow
가 기본값으로 사용됩니다.예:
Apache Airflow:
tfx run create --engine=airflow --pipeline_name=<var>pipeline-name</var>
Kubeflow:
tfx run create --engine=kubeflow --pipeline_name=<var>pipeline-name</var> --iap_client_id=<var>iap-client-id</var> \<br>--namespace=<var>namespace</var> --endpoint=<var>endpoint</var>
Local:
tfx run create --engine=local --pipeline_name=<var>pipeline-name</var>
terminate
주어진 파이프라인의 실행을 중지합니다.
** 중요 참고: 현재, Kubeflow에서만 지원됩니다.
사용법:
tfx run terminate --run_id=<var>run-id</var> [--endpoint=<var>endpoint</var> --engine=<var>engine</var> \<br>--iap_client_id=<var>iap-client-id</var> --namespace=<var>namespace</var>]
- --run_id=run-id
- 파이프라인 실행의 고유 식별자입니다.
- --endpoint=endpoint
-
(선택 사항) Kubeflow Pipelines API 서비스의 끝점입니다. Kubeflow Pipelines API 서비스의 끝점은 Kubeflow Pipelines 대시보드의 URL과 동일합니다. 끝점 값은 다음과 같아야 합니다.
<pre>https://<var>host-name</var>/pipeline</pre>
<p>
If you do not know the endpoint for your Kubeflow Pipelines cluster,
contact you cluster administrator.
</p>
<p>
If the <code>--endpoint</code> is not specified, the in-cluster service
DNS name is used as the default value. This name works only if the
CLI command executes in a pod on the Kubeflow Pipelines cluster, such as a
<a href="https://www.kubeflow.org/docs/notebooks/why-use-jupyter-notebook/"
class="external">Kubeflow Jupyter notebooks</a> instance.
</p>
(선택 사항) 파이프라인에 사용할 오케스트레이터입니다. 엔진 값은 다음 값 중 하나와 일치해야 합니다.
- kubeflow: 엔진을 Kubeflow로 설정합니다.
엔진이 설정되지 않으면, 환경에 따라 엔진이 자동 감지됩니다.
** 중요 참고 사항: 파이프라인 구성 파일에서 DagRunner에 필요한 오케스트레이터는 선택되거나 자동 감지된 엔진과 일치해야 합니다. 엔진 자동 감지는 사용자 환경을 기반으로 합니다. Apache Airflow 및 Kubeflow Pipelines가 설치되지 않은 경우, 기본적으로 로컬 오케스트레이터가 사용됩니다.
kubeflow
가 기본값으로 사용됩니다.예:
Kubeflow:
tfx run delete --engine=kubeflow --run_id=<var>run-id</var> --iap_client_id=<var>iap-client-id</var> \<br>--namespace=<var>namespace</var> --endpoint=<var>endpoint</var>
list
파이프라인의 모든 실행을 나열합니다.
** 중요 참고 사항: 현재 로컬 및 Apache Beam에서는 지원되지 않습니다.
사용법:
tfx run list --pipeline_name=<var>pipeline-name</var> [--endpoint=<var>endpoint</var> \<br>--engine=<var>engine</var> --iap_client_id=<var>iap-client-id</var> --namespace=<var>namespace</var>]
- --pipeline_name=pipeline-name
- 파이프라인의 이름입니다.
- --endpoint=endpoint
-
(선택 사항) Kubeflow Pipelines API 서비스의 끝점입니다. Kubeflow Pipelines API 서비스의 끝점은 Kubeflow Pipelines 대시보드의 URL과 동일합니다. 끝점 값은 다음과 같아야 합니다.
<pre>https://<var>host-name</var>/pipeline</pre>
<p>
If you do not know the endpoint for your Kubeflow Pipelines cluster,
contact you cluster administrator.
</p>
<p>
If the <code>--endpoint</code> is not specified, the in-cluster service
DNS name is used as the default value. This name works only if the
CLI command executes in a pod on the Kubeflow Pipelines cluster, such as a
<a href="https://www.kubeflow.org/docs/notebooks/why-use-jupyter-notebook/"
class="external">Kubeflow Jupyter notebooks</a> instance.
</p>
(선택 사항) 파이프라인에 사용할 오케스트레이터입니다. 엔진 값은 다음 값 중 하나와 일치해야 합니다.
- airflow: 엔진을 Apache Airflow로 설정합니다.
- kubeflow: 엔진을 Kubeflow로 설정합니다.
엔진이 설정되지 않으면, 환경에 따라 엔진이 자동 감지됩니다.
** 중요 참고 사항: 파이프라인 구성 파일에서 DagRunner에 필요한 오케스트레이터는 선택되거나 자동 감지된 엔진과 일치해야 합니다. 엔진 자동 감지는 사용자 환경을 기반으로 합니다. Apache Airflow 및 Kubeflow Pipelines가 설치되지 않은 경우, 기본적으로 로컬 오케스트레이터가 사용됩니다.
kubeflow
가 기본값으로 사용됩니다.예:
Apache Airflow:
tfx run list --engine=airflow --pipeline_name=<var>pipeline-name</var>
Kubeflow:
tfx run list --engine=kubeflow --pipeline_name=<var>pipeline-name</var> --iap_client_id=<var>iap-client-id</var> \<br>--namespace=<var>namespace</var> --endpoint=<var>endpoint</var>
status
실행의 현재 상태를 반환합니다.
** 중요 참고 사항: 현재 로컬 및 Apache Beam에서는 지원되지 않습니다.
사용법:
tfx run status --pipeline_name=<var>pipeline-name</var> --run_id=<var>run-id</var> [--endpoint=<var>endpoint</var> \<br>--engine=<var>engine</var> --iap_client_id=<var>iap-client-id</var> --namespace=<var>namespace</var>]
- --pipeline_name=pipeline-name
- 파이프라인의 이름입니다.
- --run_id=run-id
- 파이프라인 실행의 고유 식별자입니다.
- --endpoint=endpoint
-
(선택 사항) Kubeflow Pipelines API 서비스의 끝점입니다. Kubeflow Pipelines API 서비스의 끝점은 Kubeflow Pipelines 대시보드의 URL과 동일합니다. 끝점 값은 다음과 같아야 합니다.
<pre>https://<var>host-name</var>/pipeline</pre>
<p>
If you do not know the endpoint for your Kubeflow Pipelines cluster,
contact you cluster administrator.
</p>
<p>
If the <code>--endpoint</code> is not specified, the in-cluster service
DNS name is used as the default value. This name works only if the
CLI command executes in a pod on the Kubeflow Pipelines cluster, such as a
<a href="https://www.kubeflow.org/docs/notebooks/why-use-jupyter-notebook/"
class="external">Kubeflow Jupyter notebooks</a> instance.
</p>
(선택 사항) 파이프라인에 사용할 오케스트레이터입니다. 엔진 값은 다음 값 중 하나와 일치해야 합니다.
- airflow: 엔진을 Apache Airflow로 설정합니다.
- kubeflow: 엔진을 Kubeflow로 설정합니다.
엔진이 설정되지 않으면, 환경에 따라 엔진이 자동 감지됩니다.
** 중요 참고 사항: 파이프라인 구성 파일에서 DagRunner에 필요한 오케스트레이터는 선택되거나 자동 감지된 엔진과 일치해야 합니다. 엔진 자동 감지는 사용자 환경을 기반으로 합니다. Apache Airflow 및 Kubeflow Pipelines가 설치되지 않은 경우, 기본적으로 로컬 오케스트레이터가 사용됩니다.
kubeflow
가 기본값으로 사용됩니다.예:
Apache Airflow:
tfx run status --engine=airflow --run_id=<var>run-id</var> --pipeline_name=<var>pipeline-name</var>
Kubeflow:
tfx run status --engine=kubeflow --run_id=<var>run-id</var> --pipeline_name=<var>pipeline-name</var> \<br>--iap_client_id=<var>iap-client-id</var> --namespace=<var>namespace</var> --endpoint=<var>endpoint</var>
delete
주어진 파이프라인의 실행을 삭제합니다.
** 중요 참고: 현재, Kubeflow에서만 지원됩니다.
사용법:
tfx run delete --run_id=<var>run-id</var> [--engine=<var>engine</var> --iap_client_id=<var>iap-client-id</var> \<br>--namespace=<var>namespace</var> --endpoint=<var>endpoint</var>]
- --run_id=run-id
- 파이프라인 실행의 고유 식별자입니다.
- --endpoint=endpoint
-
(선택 사항) Kubeflow Pipelines API 서비스의 끝점입니다. Kubeflow Pipelines API 서비스의 끝점은 Kubeflow Pipelines 대시보드의 URL과 동일합니다. 끝점 값은 다음과 같아야 합니다.
<pre>https://<var>host-name</var>/pipeline</pre>
<p>
If you do not know the endpoint for your Kubeflow Pipelines cluster,
contact you cluster administrator.
</p>
<p>
If the <code>--endpoint</code> is not specified, the in-cluster service
DNS name is used as the default value. This name works only if the
CLI command executes in a pod on the Kubeflow Pipelines cluster, such as a
<a href="https://www.kubeflow.org/docs/notebooks/why-use-jupyter-notebook/"
class="external">Kubeflow Jupyter notebooks</a> instance.
</p>
(선택 사항) 파이프라인에 사용할 오케스트레이터입니다. 엔진 값은 다음 값 중 하나와 일치해야 합니다.
- kubeflow: 엔진을 Kubeflow로 설정합니다.
엔진이 설정되지 않으면, 환경에 따라 엔진이 자동 감지됩니다.
** 중요 참고 사항: 파이프라인 구성 파일에서 DagRunner에 필요한 오케스트레이터는 선택되거나 자동 감지된 엔진과 일치해야 합니다. 엔진 자동 감지는 사용자 환경을 기반으로 합니다. Apache Airflow 및 Kubeflow Pipelines가 설치되지 않은 경우, 기본적으로 로컬 오케스트레이터가 사용됩니다.
kubeflow
가 기본값으로 사용됩니다.예:
Kubeflow:
tfx run delete --engine=kubeflow --run_id=<var>run-id</var> --iap_client_id=<var>iap-client-id</var> \<br>--namespace=<var>namespace</var> --endpoint=<var>endpoint</var>
tfx template [실험적]
tfx template
명령 그룹의 명령 구조는 다음과 같습니다.
tfx template <var>command</var> <var>required-flags</var> [<var>optional-flags</var>]
다음 섹션을 통해 tfx template
명령 그룹의 명령에 대해 자세히 알아보세요. 템플릿은 실험적인 기능이며 언제든지 변경될 수 있습니다.
list
사용 가능한 TFX 파이프라인 템플릿을 나열합니다.
사용법:
tfx template list
copy
템플릿을 대상 디렉토리에 복사합니다.
사용법:
tfx template copy --model=<var>model</var> --pipeline_name=<var>pipeline-name</var> \<br>--destination_path=<var>destination-path</var>
- --model=model
- 파이프라인 템플릿으로 빌드된 모델의 이름입니다.
- --pipeline_name=pipeline-name
- 파이프라인의 이름입니다.
- --destination_path=destination-path
- 템플릿을 복사할 경로입니다.
TFX CLI 플래그 이해하기
공통 플래그
- --engine=engine
-
파이프라인에 사용할 오케스트레이터입니다. 엔진 값은 다음 값 중 하나와 일치해야 합니다.
- airflow: 엔진을 Apache Airflow로 설정합니다.
- beam: 엔진을 Apache Beam으로 설정합니다.
- kubeflow: 엔진을 Kubeflow로 설정합니다.
- local: 엔진을 로컬 오케스트레이터로 설정합니다.
엔진이 설정되지 않으면, 환경에 따라 엔진이 자동 감지됩니다.
** 중요 참고 사항: 파이프라인 구성 파일에서 DagRunner에 필요한 오케스트레이터는 선택되거나 자동 감지된 엔진과 일치해야 합니다. 엔진 자동 감지는 사용자 환경을 기반으로 합니다. Apache Airflow 및 Kubeflow Pipelines가 설치되지 않은 경우, 기본적으로 로컬 오케스트레이터가 사용됩니다.
Kubeflow 특정 플래그
- --endpoint=endpoint
-
Kubeflow Pipelines API 서비스의 끝점입니다. Kubeflow Pipelines API 서비스의 끝점은 Kubeflow Pipelines 대시보드의 URL과 동일합니다. 끝점 값은 다음과 같아야 합니다.
<pre>https://<var>host-name</var>/pipeline</pre>
<p>
If you do not know the endpoint for your Kubeflow Pipelines cluster,
contact you cluster administrator.
</p>
<p>
If the <code>--endpoint</code> is not specified, the in-cluster service
DNS name is used as the default value. This name works only if the
CLI command executes in a pod on the Kubeflow Pipelines cluster, such as a
<a href="https://www.kubeflow.org/docs/notebooks/why-use-jupyter-notebook/"
class="external">Kubeflow Jupyter notebooks</a> instance.
</p>
kubeflow
가 기본값으로 사용됩니다.TFX CLI로 생성된 파일
파이프라인이 생성되고 실행되면 파이프라인 관리를 위해 여러 파일이 생성됩니다.
TFX CLI로 생성된 파일
파이프라인이 생성되고 실행되면 파이프라인 관리를 위해 여러 파일이 생성됩니다.
- ${HOME}/tfx/local, beam, airflow
- 구성에서 읽은 파이프라인 메타데이터는
${HOME}/tfx/${ORCHESTRATION_ENGINE}/${PIPELINE_NAME}
아래에 저장됩니다.AIRFLOW_HOME
또는KUBEFLOW_HOME
과 같은 환경 변수를 설정하여 이 위치를 사용자 정의할 수 있습니다. 이 동작은 향후 릴리스에서 변경될 수 있습니다. 이 디렉터리는 파이프라인을 실행하거나 업데이트하는 데 필요한 Kubeflow Pipelines 클러스터에 파이프라인 ID를 포함한 파이프라인 정보를 저장하는 데 사용됩니다. - TFX 0.25 이전에는 이러한 파일이
${HOME}/${ORCHESTRATION_ENGINE}
에 있었습니다. TFX 0.25에서는 원활한 마이그레이션을 위해 이전 위치의 파일이 자동으로 새 위치로 이동됩니다. - TFX 0.27부터 kubeflow는 로컬 파일 시스템에 이러한 메타데이터 파일을 생성하지 않습니다. 그러나 kubeflow가 생성하는 다른 파일은 아래를 참조하세요.
- 구성에서 읽은 파이프라인 메타데이터는
- (Kubeflow만 해당) Dockerfile 및 컨테이너 이미지
- Kubeflow Pipelines에는 파이프라인에 대해 두 가지 종류의 입력이 필요합니다. 이러한 파일은 현재 디렉터리에서 TFX에 의해 생성됩니다.
- 하나는 파이프라인에서 구성 요소를 실행하는 데 사용되는 컨테이너 이미지입니다. 이 컨테이너 이미지는 Kubeflow Pipelines용 파이프라인이 생성되거나
--build-image
플래그로 업데이트될 때 빌드됩니다. TFX CLI는 있는 경우Dockerfile
을 생성하고 컨테이너 이미지를 빌드하고 KubeflowDagRunnerConfig에 지정된 레지스트리에 푸시합니다.