실행 캐싱 구성

Vertex AI Pipelines는 파이프라인을 실행할 때 각 파이프라인 단계의 인터페이스(캐시 키)로 실행이 Vertex ML Metadata에 존재하는지 여부를 확인합니다.

단계 인터페이스는 다음 항목의 조합으로 정의됩니다.

  1. 파이프라인 단계 입력. 이러한 입력에는 입력 매개변수 값(있는 경우) 및 입력 아티팩트 ID(있는 경우)가 포함됩니다.

  2. 파이프라인 단계의 출력 정의. 이 출력 정의에는 출력 매개변수 정의(이름, 있는 경우) 및 출력 아티팩트 정의(이름, 있는 경우)가 포함됩니다.

  3. 구성요소 사양. 이 사양에는 명령어 및 인수의 순서뿐만 아니라 사용 중인 이미지, 명령어, 인수, 환경 변수가 포함됩니다.

또한 파이프라인 이름이 동일한 파이프라인만 캐시를 공유합니다.

Vertex ML Metadata에 일치하는 실행이 있으면 해당 실행의 출력이 사용되고 단계를 건너뜁니다. 이렇게 하면 이전 파이프라인 실행에서 완료된 계산을 건너뛰어 비용을 줄이는 데 도움이 됩니다.

다음을 설정하여 태스크 수준에서 실행 캐시를 해제할 수 있습니다.

eval_task.set_caching_options(False)

전체 파이프라인 작업에 대해 실행 캐시를 해제할 수 있습니다. PipelineJob()을 실행하여 파이프라인을 실행할 때는 enable_caching 인수를 사용하여 이 파이프라인 실행에 캐싱이 사용되지 않도록 지정할 수 있습니다. 파이프라인 작업 내의 모든 단계에는 캐시가 사용되지 않습니다. 파이프라인 실행 만들기에 대해 자세히 알아보세요.

다음 샘플을 사용하여 캐시를 해제합니다.

pl = PipelineJob(
    display_name="My first pipeline",

    # Whether or not to enable caching
    # True = enable the current run to use caching results from previous runs
    # False = disable the current run's use of caching results from previous runs
    # None = defer to cache option for each pipeline component in the pipeline definition
    enable_caching=False,

    # Local or Cloud Storage path to a compiled pipeline definition
    template_path="pipeline.yaml",

    # Dictionary containing input parameters for your pipeline
    parameter_values=parameter_values,

    # Cloud Storage path to act as the pipeline root
    pipeline_root=pipeline_root,
)

이 기능에는 다음 제한사항이 적용됩니다.

  • 캐시된 결과에 TTL(수명)이 없고 Vertex ML 메타데이터에서 항목이 삭제되지 않는 한 재사용될 수 있습니다. Vertex ML 메타데이터에서 항목이 삭제된 경우 결과를 다시 생성하기 위해 태스크가 다시 실행됩니다.