Azure / MachineLearningNotebooks

Python notebooks with ML and deep learning examples with Azure Machine Learning Python SDK | Microsoft
https://docs.microsoft.com/azure/machine-learning/service/
MIT License
4k stars 2.49k forks source link

PipelineRun.getSteps returns list of Step objects, not StepRun #1933

Open bdfisk opened 11 months ago

bdfisk commented 11 months ago

Describe the bug When using function getSteps() of the class azureml.pipeline.core.PipelineRun, the returned object is a list of Step objects, not StepRun objects as described in the documentation.

To Reproduce Steps to reproduce the behavior: pipe_run = PipelineRun(experiment=exper, run_id=pipeline_runs[0].get_details()['runId']) step_run = pipe_run.find_step_run('cold_start_handling_knn_step')[0] step_run.get_output_data('recommendations_all')

Expected behavior I expect to get a list of StepRun objects from the function find_step_run, but get a list of Run objects. Therefore, I cannot get the output using the get_outputs or get_output_data functions as those are only available for the StepRun objects.

Screenshots image

bdfisk commented 10 months ago

One workaround I found is creating a StepRun instance using the id from the retrieved Step object, confirming that there were StepRuns available. It would be better if a StepRun object is directly returned.