InputPortBinding 클래스

원본에서 파이프라인 단계의 입력으로의 바인딩을 정의합니다.

InputPortBinding은 단계에 대한 입력으로 사용할 수 있습니다. 원본은 PipelineData, PortDataReference, DataReference, PipelineDataset 또는 OutputPortBinding일 수 있습니다.

InputPortBinding은 바인드 개체의 이름과 달라야 하는 경우 중복 입력/출력 이름을 피하기 위해 또는 단계 스크립트가 특정 이름을 갖기 위해 입력이 필요하기 때문에 단계 입력의 이름을 지정하는 데 유용합니다. 또한 PythonScriptStep 입력에 대해 bind_mode를 지정하는 데 사용할 수도 있습니다.

InputPortBinding을 초기화합니다.

상속
builtins.object
InputPortBinding

생성자

InputPortBinding(name, bind_object=None, bind_mode='mount', path_on_compute=None, overwrite=None, is_resource=False, additional_transformations=None, **kwargs)

매개 변수

name
str
필수

문자, 숫자 및 밑줄만 포함할 수 있는 바인딩할 입력 포트의 이름입니다.

bind_object
Union[PortDataReference, DataReference, PipelineData, OutputPortBinding, PipelineDataset]
기본값: None

입력 포트에 바인딩할 개체입니다.

bind_mode
str
기본값: mount

소비 단계에서 "다운로드" 또는 "탑재" 메서드를 사용하여 데이터에 액세스할지 여부를 지정합니다.

path_on_compute
str
기본값: None

"다운로드" 모드의 경우 단계가 데이터를 읽을 로컬 경로입니다.

overwrite
bool
기본값: None

"download" 모드의 경우 기존 데이터를 덮어쓸지 여부를 나타냅니다.

is_resource
bool
기본값: False

입력이 리소스인지 여부를 나타냅니다. 리소스는 스크립트 폴더에 다운로드되고 런타임에 스크립트의 동작을 변경하는 방법을 제공합니다.

additional_transformations
<xref:azureml.dataprep.Dataflow>
기본값: None

입력에 적용할 추가 변환입니다. 이전 단계의 출력이 Azure Machine Learning 데이터 세트인 경우에만 적용됩니다.

name
str
필수

문자, 숫자 및 밑줄만 포함할 수 있는 바인딩할 입력 포트의 이름입니다.

bind_object
Union[PortDataReference, DataReference, PipelineData, OutputPortBinding, PipelineDataset]
필수

입력 포트에 바인딩할 개체입니다.

bind_mode
str
필수

사용 단계에서 "다운로드" 또는 "탑재" 또는 "직접" 메서드를 사용하여 데이터에 액세스할지 여부를 지정합니다.

path_on_compute
str
필수

"다운로드" 모드의 경우 단계가 데이터를 읽을 로컬 경로입니다.

overwrite
bool
필수

"download" 모드의 경우 기존 데이터를 덮어쓸지 여부를 나타냅니다.

is_resource
bool
필수

입력이 리소스인지 여부를 나타냅니다. 리소스는 스크립트 폴더에 다운로드되고 런타임에 스크립트의 동작을 변경하는 방법을 제공합니다.

additional_transformations
<xref:azureml.dataprep.Dataflow>
필수

입력에 적용할 추가 변환입니다. 이전 단계의 출력이 Azure Machine Learning 데이터 세트인 경우에만 적용됩니다.

설명

InputPortBinding은 파이프라인에서 데이터 종속성을 지정하는 데 사용되며 단계가 실행에 필요한 입력을 나타냅니다. InputPortBindings에는 입력 데이터가 생성되는 방식을 지정하는 bind_object라는 원본이 있습니다.

PipelineDataOutputPortBinding은 InputPortBinding에 대한 bind_object로 사용되어 이 단계에 대한 입력이 파이프라인의 다른 단계에서 생성되도록 지정할 수 있습니다.

InputPortBinding 및 PipelineData를 사용하여 파이프라인을 빌드하는 예는 다음과 같습니다.


   from azureml.pipeline.core import PipelineData, InputPortBinding, Pipeline
   from azureml.pipeline.steps import PythonScriptStep

   step_1_output = PipelineData("output", datastore=datastore, output_mode="mount")

   step_1 = PythonScriptStep(
       name='prepare data',
       script_name="prepare_data.py",
       compute_target=compute,
       arguments=["--output", step_1_output],
       outputs=[step_1_output]
   )

   step_2_input = InputPortBinding("input", bind_object=step_1_output)

   step_2 = PythonScriptStep(
       name='train',
       script_name="train.py",
       compute_target=compute,
       arguments=["--input", step_2_input],
       inputs=[step_2_input]
   )

   pipeline = Pipeline(workspace=workspace, steps=[step_1, step_2])

이 예에서 "학습" 단계는 "데이터 준비" 단계의 출력을 입력으로 요구합니다.

PortDataReference, DataReference 또는 PipelineDataset은 InputPortBinding에 대한 bind_object로 사용되어 단계에 대한 입력이 지정된 위치에 이미 존재함을 지정할 수 있습니다.

InputPortBinding 및 DataReference를 사용하여 파이프라인을 빌드하는 예는 다음과 같습니다.


   from azureml.data.data_reference import DataReference
   from azureml.pipeline.core import InputPortBinding, Pipeline
   from azureml.pipeline.steps import PythonScriptStep

   data_reference = DataReference(datastore=datastore, path_on_datastore='sample_data.txt', mode="mount")
   step_1_input = InputPortBinding("input", bind_object=data_reference)

   step_1 = PythonScriptStep(
       name='train',
       script_name="train.py",
       compute_target=compute,
       arguments=["--input", step_1_input],
       inputs=[step_1_input]
   )

   pipeline = Pipeline(workspace=workspace, steps=[step_1])

이 예에서 "학습" 단계에는 DataReference에 의해 입력으로 지정된 "sample_data.txt" 파일이 필요합니다.

메서드

as_resource

리소스로 사용할 수 있는 중복 입력 포트 바인딩을 가져옵니다.

get_bind_object_data_type

바인드 개체의 데이터 형식을 가져옵니다.

get_bind_object_name

바인드 개체의 이름을 가져옵니다.

as_resource

리소스로 사용할 수 있는 중복 입력 포트 바인딩을 가져옵니다.

as_resource()

반환

is_resource 속성이 True로 설정된 InputPortBinding입니다.

반환 형식

get_bind_object_data_type

바인드 개체의 데이터 형식을 가져옵니다.

get_bind_object_data_type()

반환

데이터 형식 이름입니다.

반환 형식

str

get_bind_object_name

바인드 개체의 이름을 가져옵니다.

get_bind_object_name()

반환

바인드 개체 이름입니다.

반환 형식

str

특성

additional_transformations

입력 데이터에 적용할 추가 변환을 가져옵니다.

반환

입력 데이터에 적용할 추가 변환입니다.

반환 형식

<xref:azureml.dataprep.Dataflow>

bind_mode

소비 단계에서 데이터에 액세스하는 데 사용할 모드("다운로드" 또는 "탑재" 또는 "직접", "hdfs")를 가져옵니다.

반환

바인드 모드("다운로드" 또는 "탑재" 또는 "직접" 또는 "hdfs").

반환 형식

str

bind_object

InputPort가 바인딩될 개체를 가져옵니다.

반환

바인드 개체입니다.

반환 형식

Union[<xref:azureml.pipeline.core.PortDataReference,azureml.data.data_reference.DataReference,azureml.pipeline.core.PipelineData,azureml.pipeline.core.OutputPortBinding,azureml.pipeline.core.PipelineDataset>]

data_reference_name

InputPortBinding과 연결된 데이터 참조의 이름을 가져옵니다.

반환

데이터 참조 이름입니다.

반환 형식

str

data_type

입력 데이터의 형식을 가져옵니다.

반환

데이터 형식 속성입니다.

반환 형식

str

is_resource

입력이 리소스인지 여부를 가져옵니다.

반환

입력이 리소스입니다.

반환 형식

name

입력 포트 바인딩의 이름입니다.

반환

이름입니다.

반환 형식

str

overwrite

"download" 모드의 경우 기존 데이터를 덮어쓸지 여부를 나타냅니다.

반환

덮어쓰기 속성입니다.

반환 형식

path_on_compute

단계가 데이터를 읽을 로컬 경로를 가져옵니다.

반환

컴퓨팅의 경로입니다.

반환 형식

str