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
|
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
|
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
|
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
|
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
|
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
|
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 |
---|---|
Nom du type de données. |
get_bind_object_name
Obtenez le nom de l’objet bind.
get_bind_object_name()
Retours
Type | Description |
---|---|
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 |
---|---|
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 |
---|---|
Nom de référence des données. |
data_type
is_resource
name
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 |
---|---|
Chemin d’accès sur le calcul. |