Dela via


PipelineParameter Klass

Definierar en parameter i en pipelinekörning.

Använd PipelineParameters för att konstruera mångsidiga pipelines som kan skickas på nytt senare med varierande parametervärden.

Initiera pipelineparametrar.

Konstruktor

PipelineParameter(name, default_value)

Parametrar

Name Description
name
Obligatorisk
str

Namnet på pipelineparametern.

default_value
Obligatorisk

Standardvärdet för pipelineparametern.

name
Obligatorisk
str

Namnet på pipelineparametern.

default_value
Obligatorisk

Standardvärdet för pipelineparametern.

Kommentarer

PipelineParametrar kan läggas till i valfritt steg när du skapar en pipeline. När pipelinen skickas kan värdena för dessa parametrar anges.

Ett exempel på hur du lägger till en PipelineParameter i ett steg är följande:


   from azureml.pipeline.steps import PythonScriptStep
   from azureml.pipeline.core import PipelineParameter

   pipeline_param = PipelineParameter(name="pipeline_arg", default_value="default_val")
   train_step = PythonScriptStep(script_name="train.py",
                                 arguments=["--param1", pipeline_param],
                                 target=compute_target,
                                 source_directory=project_folder)

I det här exemplet lades en PipelineParameter med namnet "pipeline_arg" till i argumenten för ett PythonScriptStep. När Python-skriptet körs anges värdet för PipelineParameter via kommandoradsargumenten. Den här PipelineParametern kan också läggas till i andra steg i pipelinen för att tillhandahålla gemensamma värden för flera steg i pipelinen. Pipelines kan ha flera PipelineParameters angivna.

Om du vill skicka pipelinen och ange värdet för pipelineparametern "pipeline_arg" använder du:


   pipeline = Pipeline(workspace=ws, steps=[train_step])
   pipeline_run = Experiment(ws, 'train').submit(pipeline, pipeline_parameters={"pipeline_arg": "test_value"})

Obs! Om "pipeline_arg" inte angavs i ordlistan pipeline_parameters används standardvärdet för pipelineparametern som angavs när pipelinen skapades (i det här fallet var standardvärdet "default_val").

Flerradsparametrar kan inte användas som PipelineParameters.

PipelineParametrar kan också användas med DataPath och DataPathComputeBinding för att ange stegindata. Detta gör att en pipeline kan köras med varierande indata.

Ett exempel på hur du använder DataPath med PipelineParameters är följande:


   from azureml.core.datastore import Datastore
   from azureml.data.datapath import DataPath, DataPathComputeBinding
   from azureml.pipeline.steps import PythonScriptStep
   from azureml.pipeline.core import PipelineParameter

   datastore = Datastore(workspace=workspace, name="workspaceblobstore")
   datapath = DataPath(datastore=datastore, path_on_datastore='input_data')
   data_path_pipeline_param = (PipelineParameter(name="input_data", default_value=datapath),
                               DataPathComputeBinding(mode='mount'))

   train_step = PythonScriptStep(script_name="train.py",
                                 arguments=["--input", data_path_pipeline_param],
                                 inputs=[data_path_pipeline_param],
                                 compute_target=compute_target,
                                 source_directory=project_folder)

I det här fallet refererar standardvärdet för parametern "input_data" till en fil på "workspaceblobstore" med namnet "input_data". Om pipelinen skickas utan att ange ett värde för den här PipelineParametern används standardvärdet. Om du vill skicka pipelinen och ange värdet för pipelineparametern "input_data" använder du:


   from azureml.pipeline.core import Pipeline
   from azureml.data.datapath import DataPath

   pipeline = Pipeline(workspace=ws, steps=[train_step])
   new_data_path = DataPath(datastore=datastore, path_on_datastore='new_input_data')
   pipeline_run = experiment.submit(pipeline,
                                    pipeline_parameters={"input_data": new_data_path})