InputPortBinding Класс
Определяет привязку от источника к входным данным этапа конвейера.
InputPortBinding можно использовать в качестве входных данных для этапа. Источником может быть PipelineData, PortDataReference, DataReference, PipelineDataset или OutputPortBinding.
Класс InputPortBinding позволяет указать имя входных данных этапа, если оно должно отличаться от имени объекта привязки (во избежание дублирования имен входных и выходных данных или если скрипту этапа нужно, чтобы входные данные имели определенное имя). Его также можно использовать для указания bind_mode для входных данных PythonScriptStep.
Инициализируйте InputPortBinding.
- Наследование
-
builtins.objectInputPortBinding
Конструктор
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]
Объект, который необходимо привязать к порту ввода.
- bind_mode
- str
Указывает, будет ли на этапе использования применяться метод "download" (отправка) или "mount" (подключение) для доступа к данным.
- path_on_compute
- str
Для режима "download" (отправка) — локальный путь, по которому будут считываться данные на этапе.
- overwrite
- bool
Для режима "download" (отправка) указывает, следует ли перезаписывать существующие данные.
- is_resource
- bool
Указано, являются ли входные данные ресурсом. Ресурсы загружаются в папку сценариев и позволяют изменять поведение сценария во время выполнения.
- additional_transformations
- <xref:azureml.dataprep.Dataflow>
Дополнительные преобразования, применяемые к входным данным. Применяется только в том случае, если выходные данные предыдущего этапа являются набором данных Машинного обучения Azure.
- name
- str
Имя порта ввода для привязки, который может содержать только буквы, цифры и символы подчеркивания.
- bind_object
- Union[PortDataReference, DataReference, PipelineData, OutputPortBinding, PipelineDataset]
Объект, который необходимо привязать к порту ввода.
- bind_mode
- str
Указывает, будет ли используемый шаг использовать метод "download", "mount" или "direct" для доступа к данным.
- path_on_compute
- str
Для режима "download" (отправка) — локальный путь, по которому будут считываться данные на этапе.
- overwrite
- bool
Для режима "download" (отправка) указывает, следует ли перезаписывать существующие данные.
- is_resource
- bool
Указано, являются ли входные данные ресурсом. Ресурсы загружаются в папку сценариев и позволяют изменять поведение сценария во время выполнения.
- additional_transformations
- <xref:azureml.dataprep.Dataflow>
Дополнительные преобразования, применяемые к входным данным. Применяется только в том случае, если выходные данные предыдущего этапа являются набором данных Машинного обучения Azure.
Комментарии
InputPortBinding используется для указания зависимостей данных в конвейере, представляет собой вход, требуемый для выполнения этапа. InputPortBindings имеет источник, именуемый bind_object, в котором указывается, как создаются входные данные.
PipelineData и OutputPortBinding могут использоваться в качестве bind_object для InputPortBinding, чтобы указать, что входные данные для этапа будут созданы другим этапом в конвейере.
Ниже приведен пример создания конвейера с использованием 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 можно использовать в качестве bind_object для InputPortBinding, чтобы указать, что входные данные для этапа уже существуют в указанном расположении.
Ниже приведен пример создания конвейера с использованием 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])
В этом примере для этапа "обучение" требуется файл "sample_data.txt", указанный в DataReference в качестве входных данных.
Методы
as_resource |
Получение дубликата привязки порта ввода для использования в качестве ресурса. |
get_bind_object_data_type |
Получение типа данных объекта привязки. |
get_bind_object_name |
Получение имени объекта привязки. |
as_resource
Получение дубликата привязки порта ввода для использования в качестве ресурса.
as_resource()
Возвращаемое значение
Для InputPortBinding со свойством is_resource установлено значение true.
Возвращаемый тип
get_bind_object_data_type
Получение типа данных объекта привязки.
get_bind_object_data_type()
Возвращаемое значение
Имя типа данных.
Возвращаемый тип
get_bind_object_name
Получение имени объекта привязки.
get_bind_object_name()
Возвращаемое значение
Имя объекта привязки.
Возвращаемый тип
Атрибуты
additional_transformations
Получение дополнительных преобразований, применяемых к входным данным.
Возвращаемое значение
Дополнительные преобразования, применяемые к входным данным.
Возвращаемый тип
bind_mode
Получение режима ("download", "mount", "direct" или "hdfs"), который будет использоваться для доступа к данным.
Возвращаемое значение
Режим привязки ("download", "mount", "direct" или "hdfs").
Возвращаемый тип
bind_object
Получение объекта, к которому будет привязан InputPort.
Возвращаемое значение
Объект привязки.
Возвращаемый тип
data_reference_name
Получение имени ссылки на данные, связанной с InputPortBinding.
Возвращаемое значение
Имя ссылки на данные.
Возвращаемый тип
data_type
is_resource
Получить значение, указывающее, являются ли входные данные ресурсом.
Возвращаемое значение
Являются ли входные данные ресурсом.
Возвращаемый тип
name
overwrite
Для режима "download" (отправка) указывает, следует ли перезаписывать существующие данные.
Возвращаемое значение
Свойство перезаписи.
Возвращаемый тип
path_on_compute
Получение локального пути, по которому будут считываться данные на этапе.
Возвращаемое значение
Путь для вычисления.
Возвращаемый тип
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по