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
str
Vereist

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

bind_object
Union[PortDataReference, DataReference, PipelineData, OutputPortBinding, PipelineDataset]
standaardwaarde: None

Het object dat moet worden gekoppeld aan de invoerpoort.

bind_mode
str
standaardwaarde: mount

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

path_on_compute
str
standaardwaarde: None

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

overwrite
bool
standaardwaarde: None

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

is_resource
bool
standaardwaarde: False

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.

additional_transformations
<xref:azureml.dataprep.Dataflow>
standaardwaarde: None

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.

name
str
Vereist

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

bind_object
Union[PortDataReference, DataReference, PipelineData, OutputPortBinding, PipelineDataset]
Vereist

Het object dat moet worden gekoppeld aan de invoerpoort.

bind_mode
str
Vereist

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
str
Vereist

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

overwrite
bool
Vereist

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

is_resource
bool
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
<xref:azureml.dataprep.Dataflow>
Vereist

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

InputPortBinding met is_resource eigenschap ingesteld op True.

Retourtype

get_bind_object_data_type

Haal het gegevenstype van het bindingsobject op.

get_bind_object_data_type()

Retouren

De naam van het gegevenstype.

Retourtype

str

get_bind_object_name

Haal de naam van het bindingsobject op.

get_bind_object_name()

Retouren

De naam van het bindingsobject.

Retourtype

str

Kenmerken

additional_transformations

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

Retouren

De extra transformaties die moeten worden toegepast op de invoergegevens.

Retourtype

<xref:azureml.dataprep.Dataflow>

bind_mode

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

Retouren

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

Retourtype

str

bind_object

Haal het object op waaraan de InputPort wordt gekoppeld.

Retouren

Het bindingsobject.

Retourtype

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

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

Retouren

De naam van de gegevensreferentie.

Retourtype

str

data_type

Het type invoergegevens ophalen.

Retouren

De eigenschap gegevenstype.

Retourtype

str

is_resource

Ophalen of invoer een resource is.

Retouren

Is het invoeren van een resource.

Retourtype

name

Naam van de invoerpoortbinding.

Retouren

De naam.

Retourtype

str

overwrite

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

Retouren

De eigenschap overschrijven.

Retourtype

path_on_compute

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

Retouren

Het pad op rekenkracht.

Retourtype

str