dsl Paquete
Funciones
pipeline
Compile una canalización que contenga todos los nodos de componente definidos en esta función.
pipeline(func: Callable[[P], T] | None = None, *, name: str | None = None, version: str | None = None, display_name: str | None = None, description: str | None = None, experiment_name: str | None = None, tags: Dict[str, str] | None = None, **kwargs) -> Callable[[Callable[[P], T]], Callable[[P], PipelineJob]] | Callable[[P], PipelineJob]
Parámetros
- func
- FunctionType
Función de canalización de usuario que se va a decorar.
- name
- str
El nombre del componente de canalización, el valor predeterminado es nombre de función.
- version
- str
La versión del componente de canalización, el valor predeterminado es "1".
- display_name
- str
El nombre para mostrar del componente de canalización, tiene como valor predeterminado el nombre de la función.
- description
- str
Descripción de la canalización compilada.
- experiment_name
- str
Nombre del experimento en el que se creará el trabajo, si se proporciona Ninguno, el experimento se establecerá en el directorio actual.
- kwargs
- dict
Diccionario de parámetros de configuración adicionales.
Devoluciones
Es posible usar el
- Un decorador, si func es None
- El func decorado
Tipo de valor devuelto
Ejemplos
Muestra cómo crear una canalización mediante este decorador.
from azure.ai.ml import load_component
from azure.ai.ml.dsl import pipeline
component_func = load_component(
source="./sdk/ml/azure-ai-ml/tests/test_configs/components/helloworld_component.yml"
)
# Define a pipeline with decorator
@pipeline(name="sample_pipeline", description="pipeline description")
def sample_pipeline_func(pipeline_input1, pipeline_input2):
# component1 and component2 will be added into the current pipeline
component1 = component_func(component_in_number=pipeline_input1, component_in_path=uri_file_input)
component2 = component_func(component_in_number=pipeline_input2, component_in_path=uri_file_input)
# A decorated pipeline function needs to return outputs.
# In this case, the pipeline has two outputs: component1's output1 and component2's output1,
# and let's rename them to 'pipeline_output1' and 'pipeline_output2'
return {
"pipeline_output1": component1.outputs.component_out_path,
"pipeline_output2": component2.outputs.component_out_path,
}
# E.g.: This call returns a pipeline job with nodes=[component1, component2],
pipeline_job = sample_pipeline_func(
pipeline_input1=1.0,
pipeline_input2=2.0,
)
ml_client.jobs.create_or_update(pipeline_job, experiment_name="pipeline_samples", compute="cpu-cluster")
Azure SDK for Python