

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 단계 간 데이터 전달
<a name="build-and-manage-propertyfile"></a>

Amazon SageMaker Pipelines을 사용하여 파이프라인을 구축할 때 한 단계에서 다음 단계로 데이터를 전달해야 할 수 있습니다. 예를 들어 훈련 단계에서 생성된 모델 아티팩트를 모델 평가 또는 배포 단계에 대한 입력으로 사용할 수 있습니다. 이 기능을 사용하여 상호 의존적 파이프라인 단계를 만들고 ML 워크플로를 구축할 수 있습니다.

파이프라인 단계의 출력에서 정보를 검색해야 하는 경우 `JsonGet`을 사용할 수 있습니다. `JsonGet`은 Amazon S3 또는 속성 파일에서 정보를 추출하는 데 도움이 됩니다. 아래 섹션에서는 `JsonGet`으로 단계 출력을 추출하는 데 사용할 수 있는 방법을 설명합니다.

## Amazon S3를 사용하여 단계 간에 데이터 전달
<a name="build-and-manage-propertyfile-s3"></a>

`ConditionStep`에서 `JsonGet`을 사용하여 Amazon S3에서 JSON 출력을 직접 가져올 수 있습니다. Amazon S3 URI는 기본 문자열, 파이프라인 실행 변수 또는 파이프라인 파라미터를 포함하는 `Std:Join` 함수일 수 있습니다. 다음은 `ConditionStep`에서 `JsonGet`을 사용하는 방법을 나타낸 예시입니다.

```
# Example json file in s3 bucket generated by a processing_step
{
   "Output": [5, 10]
}

cond_lte = ConditionLessThanOrEqualTo(
    left=JsonGet(
        step_name="<step-name>",
        s3_uri="<s3-path-to-json>",
        json_path="Output[1]"
    ),
    right=6.0
)
```

조건 단계에서 Amazon S3 경로와 함께 `JsonGet`을 사용하는 경우 조건 단계와 JSON 출력을 생성하는 단계 간에 종속성을 명시적으로 추가해야 합니다. 다음 예시에서는 처리 단계에 따라 조건 단계가 만들어집니다.

```
cond_step = ConditionStep(
        name="<step-name>",
        conditions=[cond_lte],
        if_steps=[fail_step],
        else_steps=[register_model_step],
        depends_on=[processing_step],
)
```

## 속성 파일을 사용하여 단계 간에 데이터 전달
<a name="build-and-manage-propertyfile-property"></a>

속성 파일을 사용하여 처리 단계 출력의 정보를 저장합니다. 이는 처리 단계의 결과를 분석하여 조건부 단계의 실행 방법을 결정할 때 특히 유용합니다. `JsonGet` 함수는 속성 파일을 처리하고 JSONPath 표기법을 사용하여 속성 JSON 파일을 쿼리할 수 있도록 합니다. JSONPath 표기법에 대한 자세한 내용은 [JSONPath 리포지토리](https://github.com/json-path/JsonPath)를 참조하세요.

나중에 사용할 수 있도록 속성 파일을 저장하려면 먼저 다음 형식의 `PropertyFile`인스턴스를 만들어야 합니다. `path` 파라미터는 속성 파일이 저장되는 JSON 파일의 이름입니다. 모든 `output_name`은 처리 단계에서 정의한 `ProcessingOutput`의 `output_name`과 일치해야 합니다. 이렇게 하면 속성 파일이 단계에서 `ProcessingOutput`을 캡처할 수 있습니다.

```
from sagemaker.workflow.properties import PropertyFile

<property_file_instance> = PropertyFile(
    name="<property_file_name>",
    output_name="<processingoutput_output_name>",
    path="<path_to_json_file>"
)
```

`ProcessingStep` 인스턴스를 만들 때 Amazon SageMaker Pipelines 서비스가 인덱싱해야 하는 모든 파라미터 파일을 나열하는 `property_files` 파라미터를 추가합니다. 이렇게 하면 나중에 사용할 수 있도록 속성 파일이 저장됩니다.

```
property_files=[<property_file_instance>]
```

조건 단계에서 속성 파일을 사용하려면 다음 예제와 같이 조건 단계에 전달하는 조건에 `property_file`을 추가하고 `json_path`파라미터를 사용하여 원하는 속성에 대한 JSON 파일을 쿼리합니다.

```
cond_lte = ConditionLessThanOrEqualTo(
    left=JsonGet(
        step_name=step_eval.name,
        property_file=<property_file_instance>,
        json_path="mse"
    ),
    right=6.0
)
```

자세한 예제는 [Amazon SageMaker Python SDK의](https://sagemaker.readthedocs.io/en/stable) [속성 파일](https://sagemaker.readthedocs.io/en/stable/amazon_sagemaker_model_building_pipeline.html#property-file)을 참조하세요.**