Partager via


InputPortBinding Classe

Définit une liaison d’une source à une entrée d’une étape de pipeline.

Un InputPortBinding peut être utilisé comme entrée à une étape. La source peut être un PipelineData, , PortDataReferenceDataReference, PipelineDatasetou OutputPortBinding.

InputPortBinding est utile pour spécifier le nom de l’entrée d’étape, s’il doit être différent du nom de l’objet de liaison (par exemple, pour éviter les noms d’entrée/sortie dupliqués ou parce que le script d’étape a besoin d’une entrée pour avoir un certain nom). Il peut également être utilisé pour spécifier la bind_mode pour PythonScriptStep les entrées.

Initialisez InputPortBinding.

Constructeur

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

Paramètres

Nom Description
name
Obligatoire
str

Nom du port d’entrée à lier, qui peut contenir uniquement des lettres, des chiffres et des traits de soulignement.

bind_object

Objet à lier au port d’entrée.

Valeur par défaut: None
bind_mode
str

Spécifie si l’étape consommatrice utilise la méthode « download » ou « mount » pour accéder aux données.

Valeur par défaut: mount
path_on_compute
str

Pour le mode « télécharger », le chemin local à partir duquel l’étape lit les données.

Valeur par défaut: None
overwrite

Pour le mode « télécharger », indiquez s’il faut remplacer les données existantes.

Valeur par défaut: None
is_resource

Indique si l’entrée est une ressource. Les ressources sont téléchargées dans le dossier de script et permettent de modifier le comportement du script au moment de l’exécution.

Valeur par défaut: False
additional_transformations
<xref:azureml.dataprep.Dataflow>

Transformations supplémentaires à appliquer à l’entrée. Cette opération est appliquée uniquement si la sortie de l’étape précédente est un jeu de données Azure Machine Learning.

Valeur par défaut: None
name
Obligatoire
str

Nom du port d’entrée à lier, qui peut contenir uniquement des lettres, des chiffres et des traits de soulignement.

bind_object
Obligatoire

Objet à lier au port d’entrée.

bind_mode
Obligatoire
str

Spécifie si l’étape consommatrice utilise la méthode « download » ou « mount » ou « direct » pour accéder aux données.

path_on_compute
Obligatoire
str

Pour le mode « télécharger », le chemin local à partir duquel l’étape lit les données.

overwrite
Obligatoire

Pour le mode « télécharger », indiquez s’il faut remplacer les données existantes.

is_resource
Obligatoire

Indiquez si l’entrée est une ressource. Les ressources sont téléchargées dans le dossier de script et permettent de modifier le comportement du script au moment de l’exécution.

additional_transformations
Obligatoire
<xref:azureml.dataprep.Dataflow>

Transformations supplémentaires à appliquer à l’entrée. Cette opération est appliquée uniquement si la sortie de l’étape précédente est un jeu de données Azure Machine Learning.

Remarques

InputPortBinding est utilisé pour spécifier les dépendances de données dans un pipeline, il représente une entrée dont une étape nécessite l’exécution. InputPortBindings a une source, appelée bind_object, qui spécifie la façon dont les données d’entrée sont produites.

PipelineData et OutputPortBinding peut être utilisé comme bind_object pour un InputPortBinding pour spécifier que l’entrée à l’étape sera produite par une autre étape dans le pipeline.

Voici un exemple de génération d’un pipeline à l’aide d’InputPortBinding et 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])

Dans cet exemple, l’étape « entraîner » nécessite la sortie de l’étape « préparer les données » en tant qu’entrée.

PortDataReference, DataReferenceou PipelineDataset peut être utilisé comme bind_object pour un InputPortBinding pour spécifier que l’entrée à l’étape existe déjà à un emplacement spécifié.

Voici un exemple de génération d’un pipeline à l’aide d’InputPortBinding et de 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])

Dans cet exemple, l’étape « train » nécessite le fichier «sample_data.txt» spécifié par DataReference en tant qu’entrée.

Méthodes

as_resource

Obtenez une liaison de port d’entrée en double qui peut être utilisée en tant que ressource.

get_bind_object_data_type

Obtenez le type de données de l’objet bind.

get_bind_object_name

Obtenez le nom de l’objet bind.

as_resource

Obtenez une liaison de port d’entrée en double qui peut être utilisée en tant que ressource.

as_resource()

Retours

Type Description

InputPortBinding avec is_resource propriété a défini une valeur True.

get_bind_object_data_type

Obtenez le type de données de l’objet bind.

get_bind_object_data_type()

Retours

Type Description
str

Nom du type de données.

get_bind_object_name

Obtenez le nom de l’objet bind.

get_bind_object_name()

Retours

Type Description
str

Nom de l’objet bind.

Attributs

additional_transformations

Obtenez les transformations supplémentaires à appliquer aux données d’entrée.

Retours

Type Description
<xref:azureml.dataprep.Dataflow>

Transformations supplémentaires à appliquer aux données d’entrée.

bind_mode

Obtenez le mode (« téléchargement » ou « montage » ou « direct », « hdfs ») que l’étape consommatrice utilisera pour accéder aux données.

Retours

Type Description
str

Mode de liaison (« téléchargement » ou « montage » ou « direct » ou « hdfs »).

bind_object

Obtenez l’objet auquel InputPort sera lié.

Retours

Type Description

Objet bind.

data_reference_name

Obtenez le nom de la référence de données associée à InputPortBinding.

Retours

Type Description
str

Nom de référence des données.

data_type

Obtenez le type des données d’entrée.

Retours

Type Description
str

Propriété de type de données.

is_resource

Déterminez si l’entrée est une ressource.

Retours

Type Description

Entrée d’une ressource.

name

Nom de la liaison de port d’entrée.

Retours

Type Description
str

Nom.

overwrite

Pour le mode « télécharger », indiquez s’il faut remplacer les données existantes.

Retours

Type Description

Propriété de remplacement.

path_on_compute

Obtenez le chemin d’accès local à partir duquel l’étape lit les données.

Retours

Type Description
str

Chemin d’accès sur le calcul.