Pass a dataset to a Machine Learning Execute Pipeline in Data Factory activity

PONS LOPEZ Antonio 0 Reputation points
2023-10-15T07:16:12.3666667+00:00

Hello,

I have a training pipeline developed with the Azure MAchine Learning Designer and another for predictions. I want to update the model used in the prediction pipeline with the one generated with the training pipeline. In the predictions pipeline I have several parameters.

User's image

One of these parameters is the model dataset.

In Data factory I have created a pipeline with two Machine Learning Execute Pipeline activities, one that executes the training pipeline and the other the predictions pipeline. But in the prediction pipeline I don't know how to pass the dataset with the model generated in the training pipeline, since it does not appear as a parameter even though it is defined in the prediction pipeline.

Azure Machine Learning
Azure Machine Learning
An Azure machine learning service for building and deploying models.
3,334 questions
Azure Data Factory
Azure Data Factory
An Azure service for ingesting, preparing, and transforming data at scale.
11,624 questions
{count} votes

1 answer

Sort by: Most helpful
  1. PONS LOPEZ Antonio 0 Reputation points
    2023-10-22T08:02:03.1666667+00:00

    Thanks romungi-MSFT for response

    But I have several doubts:

    How do I register as output of the ML training pipeline in the Designer the Trained best model of the Tune Model Hyperparameters module?User's image

    Once this is achieved, from what I understand, I would have to add a Web activity to the Data Factory pipeline in the following way:

    User's image

    Where in the URL parameter I have put the address of the REST service of the training pipeline) as you can see in the image)

    User's image

    But I must point out that when I tried to call the URL of the REST service I got the following error:

    "Code": "UnsupportedApiVersion",
    		"Message": "The HTTP resource that matches the request URI 'https://westeurope.api.azureml.ms/pipelines/v1.0/subscriptions/0bfb3599-e1ef-4cef-9273-6a52efc32643/resourceGroups/aplchurn4/providers/Microsoft.MachineLearningServices/workspaces/amlaplchurn4/PipelineRuns/PipelineEndpointSubmit/Id/15368957-a5e1-40e9-854c-6f819737f989' with API version '1.0' does not support HTTP method 'GET'.",
    

    Assuming that the previous problem was solved, in the predictive pipeline I have defined the model as input, as seen in the image,User's image

    And finally, in the prediction pipeline activity in Data Factory, I assign the output of the Web activity as an input parameter.

    User's image

    What I had done until now is save the output of the Tune Model Hyperparameters module in the training pipeline in a certain path as you can see in the image:

    User's image

    which coincides with that of an already registered model which is then the one I use in the prediction pipeline.

    User's image

    I don't know if it would also be worth it

    0 comments No comments

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.