Delen via


InputPortBinding Klas

Hiermee definieert u een binding van een bron naar een invoer van een pijplijnstap.

Een InputPortBinding kan worden gebruikt als invoer voor een stap. De bron kan een PipelineData, PortDataReference, DataReference, PipelineDatasetof OutputPortBindingzijn.

InputPortBinding is handig om de naam van de stapinvoer op te geven, als deze anders moet zijn dan de naam van het bindingsobject (bijvoorbeeld om dubbele invoer-/uitvoernamen te voorkomen of omdat het stapscript een invoer nodig heeft om een bepaalde naam te hebben). Het kan ook worden gebruikt om de bind_mode voor PythonScriptStep invoer op te geven.

Initialiseer InputPortBinding.

Overname
builtins.object
InputPortBinding

Constructor

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

Parameters

Name Description
name
Vereist
str

Naam van de invoerpoort die moet worden gekoppeld, die alleen letters, cijfers en onderstrepingstekens mag bevatten.

bind_object

Het object dat moet worden gekoppeld aan de invoerpoort.

Default value: None
bind_mode
str

Hiermee geeft u op of de verbruiksstap de methode 'downloaden' of 'koppelen' gebruikt om toegang te krijgen tot de gegevens.

Default value: mount
path_on_compute
str

Voor de 'download'-modus leest het lokale pad de gegevens van waaruit de stap wordt gelezen.

Default value: None
overwrite

Geef voor de 'downloadmodus' aan of bestaande gegevens moeten worden overschreven.

Default value: None
is_resource

Aangegeven of invoer een resource is. Resources worden gedownload naar de scriptmap en bieden een manier om het gedrag van het script tijdens runtime te wijzigen.

Default value: False
additional_transformations
<xref:azureml.dataprep.Dataflow>

Aanvullende transformaties die moeten worden toegepast op de invoer. Dit wordt alleen toegepast als de uitvoer van de vorige stap een Azure Machine Learning-gegevensset is.

Default value: None
name
Vereist
str

Naam van de invoerpoort die moet worden gekoppeld, die alleen letters, cijfers en onderstrepingstekens mag bevatten.

bind_object
Vereist

Het object dat moet worden gekoppeld aan de invoerpoort.

bind_mode
Vereist
str

Hiermee geeft u op of de verbruiksstap de methode 'downloaden' of 'koppelen' of 'direct' gebruikt om toegang te krijgen tot de gegevens.

path_on_compute
Vereist
str

Voor de 'download'-modus leest het lokale pad de gegevens van waaruit de stap wordt gelezen.

overwrite
Vereist

Geef voor de 'downloadmodus' aan of bestaande gegevens moeten worden overschreven.

is_resource
Vereist

Geef aan of invoer een resource is. Resources worden gedownload naar de scriptmap en bieden een manier om het gedrag van het script tijdens runtime te wijzigen.

additional_transformations
Vereist
<xref:azureml.dataprep.Dataflow>

Aanvullende transformaties die moeten worden toegepast op de invoer. Dit wordt alleen toegepast als de uitvoer van de vorige stap een Azure Machine Learning-gegevensset is.

Opmerkingen

InputPortBinding wordt gebruikt om gegevensafhankelijkheden in een pijplijn op te geven. Het vertegenwoordigt een invoer die een stap nodig heeft voor de uitvoering. InputPortBindings hebben een bron, bind_object genaamd, die aangeeft hoe de invoergegevens worden geproduceerd.

PipelineData en OutputPortBinding kunnen worden gebruikt als de bind_object voor een InputPortBinding om op te geven dat de invoer voor de stap wordt geproduceerd door een andere stap in de pijplijn.

Een voorbeeld voor het bouwen van een pijplijn met behulp van InputPortBinding en PipelineData is als volgt:


   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])

In dit voorbeeld vereist de stap 'trainen' de uitvoer van de stap 'gegevens voorbereiden' als invoer.

PortDataReference, DataReferenceof PipelineDataset kan worden gebruikt als de bind_object voor een InputPortBinding om op te geven dat de invoer voor de stap al op een opgegeven locatie bestaat.

Een voorbeeld van het bouwen van een pijplijn met behulp van InputPortBinding en DataReference is als volgt:


   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])

In dit voorbeeld is voor de stap 'trainen' het 'sample_data.txt'-bestand vereist dat is opgegeven door de DataReference als invoer.

Methoden

as_resource

Haal een dubbele invoerpoortbinding op die als resource kan worden gebruikt.

get_bind_object_data_type

Haal het gegevenstype van het bindingsobject op.

get_bind_object_name

Haal de naam van het bindingsobject op.

as_resource

Haal een dubbele invoerpoortbinding op die als resource kan worden gebruikt.

as_resource()

Retouren

Type Description

InputPortBinding met is_resource eigenschap ingesteld op True.

get_bind_object_data_type

Haal het gegevenstype van het bindingsobject op.

get_bind_object_data_type()

Retouren

Type Description
str

De naam van het gegevenstype.

get_bind_object_name

Haal de naam van het bindingsobject op.

get_bind_object_name()

Retouren

Type Description
str

De naam van het bindingsobject.

Kenmerken

additional_transformations

Haal de extra transformaties op die moeten worden toegepast op de invoergegevens.

Retouren

Type Description
<xref:azureml.dataprep.Dataflow>

De extra transformaties die moeten worden toegepast op de invoergegevens.

bind_mode

Haal de modus ('downloaden' of 'koppelen' of 'direct', 'hdfs') op die de verbruiksstap gebruikt om toegang te krijgen tot de gegevens.

Retouren

Type Description
str

De bindingsmodus ('downloaden' of 'koppelen' of 'direct' of 'hdfs').

bind_object

Haal het object op waaraan de InputPort wordt gekoppeld.

Retouren

Type Description

Het bindingsobject.

data_reference_name

Haal de naam op van de gegevensverwijzing die is gekoppeld aan de InputPortBinding.

Retouren

Type Description
str

De naam van de gegevensreferentie.

data_type

Het type invoergegevens ophalen.

Retouren

Type Description
str

De eigenschap gegevenstype.

is_resource

Ophalen of invoer een resource is.

Retouren

Type Description

Is het invoeren van een resource.

name

Naam van de invoerpoortbinding.

Retouren

Type Description
str

De naam.

overwrite

Geef voor de 'downloadmodus' aan of bestaande gegevens moeten worden overschreven.

Retouren

Type Description

De eigenschap overschrijven.

path_on_compute

Haal het lokale pad op waaruit de stap de gegevens leest.

Retouren

Type Description
str

Het pad op rekenkracht.