Code Monkey home page Code Monkey logo

mslearn-aml-cli's Issues

Missing dependancy

Module: 00

Lab/Demo: 00

Task: 00

Step: 00

Description of issue
When running the following command i received a missing module error and the http endpoint never became available. This w as resolved by adding the following line to the conda.yaml file of the sample-mlflow-sklearn-model

  • azureml-inference-server-http

Lab 5 Designer Failed: Can not find the diabetes-data from Datasets section

Module: 05

Lab/Demo: 05

Task: 03: Create a new pipeline with the Designer

Step: 05: In the left menu, expand the Datasets section.

Description of issue
Hello,

I can not find the "diabetes-data" component in Datasets section of the Designer. In fact, there is no section called "Datasets" to expand anymore. I only see "Data" section, under which there is no "diabetes-data" either. Please advise! Thanks again!

Br, He Zhang

Repro steps:

Issue testing endpoint in lab 04 -

Module: Deploy a model to a managed online endpoint

Lab/Demo: 04

Task: Test the endpoint

Step:

Description of issue
When running the online-endpoint invoke command I receive the following error

cli.azure.cli.core.azclierror: Met error <class 'Exception'>:Invalid input format: expected an array of items.
Please check log by running the command with '--debug' for more details.
az_command_data_logger: Met error <class 'Exception'>:Invalid input format: expected an array of items.
Please check log by running the command with '--debug' for more details.

Repro steps:

Run - az ml online-endpoint invoke --name diabetes-mlflow --request-file ./mslearn-aml-cli/Allfiles/Labs/04/mlflow-endpoint/sample-data.json

Environment creation failed

Module: mslearn-aml-cli

Lab/Demo: 01 Create an Azure Machine Learning workspace and assets with the CLI (v2)

Task: 05 Create an environment

Step: 05 Run the following command to create the environment :

az ml environment create --file ./mslearn-aml-cli/Allfiles/Labs/01/basic-env.yml

Description of issue
The build of the environment fails:
Screenshot 2024-05-14 193853

Here are the logs:
Screenshot 2024-05-14 190818

Repro steps:
Follow the instructions

Submitted job stuck in preparing status

Module: mslearn-aml-cli

Lab/Demo: 2 Run a basic Python training job

Task: basic-job

Step: 00

Description of issue
after submitting a job using azure cli, I can see the job in Azure ML Studio, but it seems to be stuck in the Preparing Status.
I tried submitting it to different compute instances and clusters, same thing.
Repro steps:

  1. Followed the exact steps from the tutorial
  2. https://microsoftlearning.github.io/mslearn-aml-cli/Instructions/Labs/02-run-python-job.html

Deployment of MLFlow model FAILED

Module: 05

Lab/Demo: 05

Description of issue

I am having troubles deploying to managed endpoint (CLIv2) from this tutorial, lab 5 : mslearn-aml-cli (microsoftlearning.github.io). It keeps failing on deployment (resource not ready). I have model trained using MLFlow format, score script and env is generated automatically. After some digging this is the error thrown during deployment:

ERROR: Could not find a version that satisfies the requirement sanic~=21.6.0 (from azureml-inference-server-http) (from versions: 0.1.0, 0.1.1, 0.1.3, 0.1.4, 0.1.5, 0.1.6, 0.1.7, 0.1.8, 0.1.9, 0.2.0, 0.3.0, 0.3.1, 0.4.0, 0.4.1, 0.5.0, 0.5.1, 0.5.2, 0.5.4, 0.6.0, 0.7.0, 0.8.0, 0.8.1, 0.8.2, 0.8.3, 18.12.0, 19.3.1, 19.6.0, 19.6.2, 19.6.3, 19.9.0, 19.12.0, 19.12.2, 19.12.3, 19.12.4, 19.12.5, 20.3.0, 20.6.0, 20.6.1, 20.6.2, 20.6.3, 20.9.0, 20.9.1, 20.12.0, 20.12.1, 20.12.2, 20.12.3, 20.12.4, 20.12.5, 20.12.6)
ERROR: No matching distribution found for sanic~=21.6.0
Error occurred. Sleeping to send error logs.

Repro steps:

Follow Lab 5

Lab5 Creating Pipeline Job Failed

Module: 05

Lab/Demo: 05

Task: 01

Step: 04

Description of issue

Failed on step "az ml job create --file ./mslearn-aml-cli/Allfiles/Labs/05/job.yml" (already putting my own compute instance as instructed, but still failed). Errors as below:

FAREAST+zhanghe@cn-zhanghe MINGW64 ~/Desktop/mslearn-aml-cli/Allfiles/Labs/05 (master)
$ az ml job create --file job.yml
ERROR: Met error <class 'marshmallow.exceptions.ValidationError'>:Validation for PipelineJobSchema failed:

{
"jobs": {
"stats_job": {
"value": [
{
"component": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: file:./summary-stats.yml"
]
},
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: file:./summary-stats.yml"
]
},
{
"_schema": [
"In order to specify an existing None, please provide the correct registry path prefixed with 'azureml://':\n"
]
},
{
"_schema": [
"In order to specify an existing components, please provide either of the following prefixed with 'azureml:':\n1. The full ARM ID for the resource, e.g.azureml:/subscriptions/<subscription_id>/resourceGroups/<resource_group>/providers/Microsoft.MachineLearningServices/workspaces/<workspace_name>/components/<resource_name>/)\n2. The short-hand name of the resource registered in the workspace, eg: azureml::. For example, version 1 of the environment registered as 'my-env' in the workspace can be referenced as 'azureml:my-env:1'"
]
},
{
"code": [
{
"_schema": [
"Value passed is not a data binding string: <class 'collections.OrderedDict'>: OrderedDict([('local_path', './src')])"
]
},
{
"_schema": [
"Value passed is not a data binding string: <class 'collections.OrderedDict'>: OrderedDict([('local_path', './src')])"
]
},
{
"_schema": [
"In order to specify an existing codes, please provide the correct registry path prefixed with 'azureml://':\n"
]
},
{
"_schema": [
"In order to specify an existing codes, please provide either of the following prefixed with 'azureml:':\n1. The full ARM ID for the resource, e.g.azureml:/subscriptions/<subscription_id>/resourceGroups/<resource_group>/providers/Microsoft.MachineLearningServices/workspaces/<workspace_name>/codes/<resource_name>/)\n2. The short-hand name of the resource registered in the workspace, eg: azureml::. For example, version 1 of the environment registered as 'my-env' in the workspace can be referenced as 'azureml:my-env:1'"
]
},
{
"_schema": [
"Not a valid URL."
]
},
{
"_schema": [
"Not a valid string."
]
}
]
},
{
"_schema": [
"Not supporting non file for component"
]
}
],
"type": [
"Value component passed is not in set ['command']"
]
},
{
"objective": [
"Missing data for required field."
],
"limits": [
"Missing data for required field."
],
"type": [
"Value component passed is not in set ['sweep']"
],
"trial": [
"Missing data for required field."
]
},
{
"component": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: file:./summary-stats.yml"
]
},
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: file:./summary-stats.yml"
]
},
{
"_schema": [
"In order to specify an existing None, please provide the correct registry path prefixed with 'azureml://':\n"
]
},
{
"_schema": [
"In order to specify an existing components, please provide either of the following prefixed with 'azureml:':\n1. The full ARM ID for the resource, e.g.azureml:/subscriptions/<subscription_id>/resourceGroups/<resource_group>/providers/Microsoft.MachineLearningServices/workspaces/<workspace_name>/components/<resource_name>/)\n2. The short-hand name of the resource registered in the workspace, eg: azureml::. For example, version 1 of the environment registered as 'my-env' in the workspace can be referenced as 'azureml:my-env:1'"
]
},
{
"type": [
"Value command passed is not in set ['parallel']"
]
},
{
"_schema": [
"Not supporting non file for component"
]
}
],
"type": [
"Value component passed is not in set ['parallel']"
]
},
{
"command": [
"Missing data for required field."
],
"type": [
"Value component passed is not in set ['command']"
],
"component": [
"Unknown field."
]
},
{
"null": [
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"target_column_name": [
"Missing data for required field."
],
"task": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"target_column_name": [
"Missing data for required field."
],
"task": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"target_column_name": [
"Missing data for required field."
],
"task": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"target_column_name": [
"Missing data for required field."
],
"task": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"target_column_name": [
"Missing data for required field."
],
"task": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"target_column_name": [
"Missing data for required field."
],
"task": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"target_column_name": [
"Missing data for required field."
],
"task": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"task": [
"Missing data for required field."
],
"target_column_name": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"task": [
"Missing data for required field."
],
"target_column_name": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"task": [
"Missing data for required field."
]
}
]
},
{
"type": [
"Value component passed is not in set ['parallel']"
]
}
]
},
"fix_missing_job": {
"value": [
{
"component": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: file:./fix-missing-data.yml"
]
},
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: file:./fix-missing-data.yml"
]
},
{
"_schema": [
"In order to specify an existing None, please provide the correct registry path prefixed with 'azureml://':\n"
]
},
{
"_schema": [
"In order to specify an existing components, please provide either of the following prefixed with 'azureml:':\n1. The full ARM ID for the resource, e.g.azureml:/subscriptions/<subscription_id>/resourceGroups/<resource_group>/providers/Microsoft.MachineLearningServices/workspaces/<workspace_name>/components/<resource_name>/)\n2. The short-hand name of the resource registered in the workspace, eg: azureml::. For example, version 1 of the environment registered as 'my-env' in the workspace can be referenced as 'azureml:my-env:1'"
]
},
{
"code": [
{
"_schema": [
"Value passed is not a data binding string: <class 'collections.OrderedDict'>: OrderedDict([('local_path', './src')])"
]
},
{
"_schema": [
"Value passed is not a data binding string: <class 'collections.OrderedDict'>: OrderedDict([('local_path', './src')])"
]
},
{
"_schema": [
"In order to specify an existing codes, please provide the correct registry path prefixed with 'azureml://':\n"
]
},
{
"_schema": [
"In order to specify an existing codes, please provide either of the following prefixed with 'azureml:':\n1. The full ARM ID for the resource, e.g.azureml:/subscriptions/<subscription_id>/resourceGroups/<resource_group>/providers/Microsoft.MachineLearningServices/workspaces/<workspace_name>/codes/<resource_name>/)\n2. The short-hand name of the resource registered in the workspace, eg: azureml::. For example, version 1 of the environment registered as 'my-env' in the workspace can be referenced as 'azureml:my-env:1'"
]
},
{
"_schema": [
"Not a valid URL."
]
},
{
"_schema": [
"Not a valid string."
]
}
]
},
{
"_schema": [
"Not supporting non file for component"
]
}
],
"type": [
"Value component passed is not in set ['command']"
]
},
{
"objective": [
"Missing data for required field."
],
"limits": [
"Missing data for required field."
],
"type": [
"Value component passed is not in set ['sweep']"
],
"trial": [
"Missing data for required field."
]
},
{
"component": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: file:./fix-missing-data.yml"
]
},
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: file:./fix-missing-data.yml"
]
},
{
"_schema": [
"In order to specify an existing None, please provide the correct registry path prefixed with 'azureml://':\n"
]
},
{
"_schema": [
"In order to specify an existing components, please provide either of the following prefixed with 'azureml:':\n1. The full ARM ID for the resource, e.g.azureml:/subscriptions/<subscription_id>/resourceGroups/<resource_group>/providers/Microsoft.MachineLearningServices/workspaces/<workspace_name>/components/<resource_name>/)\n2. The short-hand name of the resource registered in the workspace, eg: azureml::. For example, version 1 of the environment registered as 'my-env' in the workspace can be referenced as 'azureml:my-env:1'"
]
},
{
"type": [
"Value command passed is not in set ['parallel']"
]
},
{
"_schema": [
"Not supporting non file for component"
]
}
],
"type": [
"Value component passed is not in set ['parallel']"
]
},
{
"command": [
"Missing data for required field."
],
"type": [
"Value component passed is not in set ['command']"
],
"component": [
"Unknown field."
]
},
{
"null": [
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"target_column_name": [
"Missing data for required field."
],
"task": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"target_column_name": [
"Missing data for required field."
],
"task": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"target_column_name": [
"Missing data for required field."
],
"task": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"target_column_name": [
"Missing data for required field."
],
"task": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"target_column_name": [
"Missing data for required field."
],
"task": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"target_column_name": [
"Missing data for required field."
],
"task": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"target_column_name": [
"Missing data for required field."
],
"task": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"task": [
"Missing data for required field."
],
"target_column_name": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"task": [
"Missing data for required field."
],
"target_column_name": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"task": [
"Missing data for required field."
]
}
]
},
{
"type": [
"Value component passed is not in set ['parallel']"
]
}
]
},
"normalize_job": {
"value": [
{
"component": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: file:./normalize-data.yml"
]
},
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: file:./normalize-data.yml"
]
},
{
"_schema": [
"In order to specify an existing None, please provide the correct registry path prefixed with 'azureml://':\n"
]
},
{
"_schema": [
"In order to specify an existing components, please provide either of the following prefixed with 'azureml:':\n1. The full ARM ID for the resource, e.g.azureml:/subscriptions/<subscription_id>/resourceGroups/<resource_group>/providers/Microsoft.MachineLearningServices/workspaces/<workspace_name>/components/<resource_name>/)\n2. The short-hand name of the resource registered in the workspace, eg: azureml::. For example, version 1 of the environment registered as 'my-env' in the workspace can be referenced as 'azureml:my-env:1'"
]
},
{
"code": [
{
"_schema": [
"Value passed is not a data binding string: <class 'collections.OrderedDict'>: OrderedDict([('local_path', './src')])"
]
},
{
"_schema": [
"Value passed is not a data binding string: <class 'collections.OrderedDict'>: OrderedDict([('local_path', './src')])"
]
},
{
"_schema": [
"In order to specify an existing codes, please provide the correct registry path prefixed with 'azureml://':\n"
]
},
{
"_schema": [
"In order to specify an existing codes, please provide either of the following prefixed with 'azureml:':\n1. The full ARM ID for the resource, e.g.azureml:/subscriptions/<subscription_id>/resourceGroups/<resource_group>/providers/Microsoft.MachineLearningServices/workspaces/<workspace_name>/codes/<resource_name>/)\n2. The short-hand name of the resource registered in the workspace, eg: azureml::. For example, version 1 of the environment registered as 'my-env' in the workspace can be referenced as 'azureml:my-env:1'"
]
},
{
"_schema": [
"Not a valid URL."
]
},
{
"_schema": [
"Not a valid string."
]
}
]
},
{
"_schema": [
"Not supporting non file for component"
]
}
],
"type": [
"Value component passed is not in set ['command']"
]
},
{
"objective": [
"Missing data for required field."
],
"limits": [
"Missing data for required field."
],
"type": [
"Value component passed is not in set ['sweep']"
],
"trial": [
"Missing data for required field."
]
},
{
"component": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: file:./normalize-data.yml"
]
},
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: file:./normalize-data.yml"
]
},
{
"_schema": [
"In order to specify an existing None, please provide the correct registry path prefixed with 'azureml://':\n"
]
},
{
"_schema": [
"In order to specify an existing components, please provide either of the following prefixed with 'azureml:':\n1. The full ARM ID for the resource, e.g.azureml:/subscriptions/<subscription_id>/resourceGroups/<resource_group>/providers/Microsoft.MachineLearningServices/workspaces/<workspace_name>/components/<resource_name>/)\n2. The short-hand name of the resource registered in the workspace, eg: azureml::. For example, version 1 of the environment registered as 'my-env' in the workspace can be referenced as 'azureml:my-env:1'"
]
},
{
"type": [
"Value command passed is not in set ['parallel']"
]
},
{
"_schema": [
"Not supporting non file for component"
]
}
],
"type": [
"Value component passed is not in set ['parallel']"
]
},
{
"command": [
"Missing data for required field."
],
"type": [
"Value component passed is not in set ['command']"
],
"component": [
"Unknown field."
]
},
{
"null": [
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"target_column_name": [
"Missing data for required field."
],
"task": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"target_column_name": [
"Missing data for required field."
],
"task": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"target_column_name": [
"Missing data for required field."
],
"task": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"target_column_name": [
"Missing data for required field."
],
"task": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"target_column_name": [
"Missing data for required field."
],
"task": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"target_column_name": [
"Missing data for required field."
],
"task": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"target_column_name": [
"Missing data for required field."
],
"task": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"task": [
"Missing data for required field."
],
"target_column_name": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"task": [
"Missing data for required field."
],
"target_column_name": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"task": [
"Missing data for required field."
]
}
]
},
{
"type": [
"Value component passed is not in set ['parallel']"
]
}
]
},
"train_job": {
"value": [
{
"component": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: file:./train-decision-tree.yml"
]
},
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: file:./train-decision-tree.yml"
]
},
{
"_schema": [
"In order to specify an existing None, please provide the correct registry path prefixed with 'azureml://':\n"
]
},
{
"_schema": [
"In order to specify an existing components, please provide either of the following prefixed with 'azureml:':\n1. The full ARM ID for the resource, e.g.azureml:/subscriptions/<subscription_id>/resourceGroups/<resource_group>/providers/Microsoft.MachineLearningServices/workspaces/<workspace_name>/components/<resource_name>/)\n2. The short-hand name of the resource registered in the workspace, eg: azureml::. For example, version 1 of the environment registered as 'my-env' in the workspace can be referenced as 'azureml:my-env:1'"
]
},
{
"code": [
{
"_schema": [
"Value passed is not a data binding string: <class 'collections.OrderedDict'>: OrderedDict([('local_path', './src')])"
]
},
{
"_schema": [
"Value passed is not a data binding string: <class 'collections.OrderedDict'>: OrderedDict([('local_path', './src')])"
]
},
{
"_schema": [
"In order to specify an existing codes, please provide the correct registry path prefixed with 'azureml://':\n"
]
},
{
"_schema": [
"In order to specify an existing codes, please provide either of the following prefixed with 'azureml:':\n1. The full ARM ID for the resource, e.g.azureml:/subscriptions/<subscription_id>/resourceGroups/<resource_group>/providers/Microsoft.MachineLearningServices/workspaces/<workspace_name>/codes/<resource_name>/)\n2. The short-hand name of the resource registered in the workspace, eg: azureml::. For example, version 1 of the environment registered as 'my-env' in the workspace can be referenced as 'azureml:my-env:1'"
]
},
{
"_schema": [
"Not a valid URL."
]
},
{
"_schema": [
"Not a valid string."
]
}
]
},
{
"_schema": [
"Not supporting non file for component"
]
}
],
"type": [
"Value component passed is not in set ['command']"
]
},
{
"objective": [
"Missing data for required field."
],
"limits": [
"Missing data for required field."
],
"type": [
"Value component passed is not in set ['sweep']"
],
"trial": [
"Missing data for required field."
]
},
{
"component": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: file:./train-decision-tree.yml"
]
},
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: file:./train-decision-tree.yml"
]
},
{
"_schema": [
"In order to specify an existing None, please provide the correct registry path prefixed with 'azureml://':\n"
]
},
{
"_schema": [
"In order to specify an existing components, please provide either of the following prefixed with 'azureml:':\n1. The full ARM ID for the resource, e.g.azureml:/subscriptions/<subscription_id>/resourceGroups/<resource_group>/providers/Microsoft.MachineLearningServices/workspaces/<workspace_name>/components/<resource_name>/)\n2. The short-hand name of the resource registered in the workspace, eg: azureml::. For example, version 1 of the environment registered as 'my-env' in the workspace can be referenced as 'azureml:my-env:1'"
]
},
{
"type": [
"Value command passed is not in set ['parallel']"
]
},
{
"_schema": [
"Not supporting non file for component"
]
}
],
"type": [
"Value component passed is not in set ['parallel']"
]
},
{
"command": [
"Missing data for required field."
],
"type": [
"Value component passed is not in set ['command']"
],
"component": [
"Unknown field."
]
},
{
"null": [
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"target_column_name": [
"Missing data for required field."
],
"task": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"target_column_name": [
"Missing data for required field."
],
"task": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"target_column_name": [
"Missing data for required field."
],
"task": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"target_column_name": [
"Missing data for required field."
],
"task": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"target_column_name": [
"Missing data for required field."
],
"task": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"target_column_name": [
"Missing data for required field."
],
"task": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"target_column_name": [
"Missing data for required field."
],
"task": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"task": [
"Missing data for required field."
],
"target_column_name": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"task": [
"Missing data for required field."
],
"target_column_name": [
"Missing data for required field."
]
},
{
"type": [
{
"_schema": [
"Value passed is not a data binding string: <class 'str'>: component"
]
},
{
"_schema": [
"Value component passed is not in set ['automl']"
]
}
],
"task": [
"Missing data for required field."
]
}
]
},
{
"type": [
"Value component passed is not in set ['parallel']"
]
}
]
}
},
"inputs": [
{
"pipeline_job_input": [
"Unknown field."
]
},
{
"pipeline_job_input": {
"value": [
{
"dataset": [
"Unknown field."
]
},
{
"dataset": [
"Unknown field."
],
"mode": [
"Unknown field."
]
},
{
"_schema": [
"Not a valid integer."
]
},
{
"_schema": [
"Not a valid string."
]
},
{
"_schema": [
"Not a valid boolean."
]
},
{
"_schema": [
"Not a valid number."
]
}
]
}
}
]
}

If you are trying to configure a job that is not of type pipeline, please specify the correct job type in the 'type' property.
For a more detailed breakdown of the PipelineJob schema, please see: https://aka.ms/ml-cli-v2-job-pipeline-yaml-reference.
The easiest way to author a specification file is using IntelliSense and auto-completion Azure ML VS code extension provides: https://code.visualstudio.com/docs/datascience/azure-machine-learning
To set up: https://docs.microsoft.com/azure/machine-learning/how-to-setup-vs-code
Please check log in debug mode for more details.

Obsolete Azure CLI commands and YAML specs in MS Learn

Training Module: Train models in Azure Machine Learning with the CLI (v2)

Unit: Create Azure Machine Learning resources with the CLI (v2)

Section: Create a dataset asset

Hi, I'm creating this issue here because the original page in MS Learn does not allow me to submit feedback more than once. As I already submitted feedback on one typo, here it goes the new feedback.

Versions:

  • azure-cli: 2.59.0
  • extension ml: 2.25.1

1. What appears an obsolete command

image

The command az ml dataset list throws this error: 'dataset' is misspelled or not recognized by the system. Did you mean 'datastore' ?. It looks like the command is obsolete now, as to work it should say data, not dataset, like az ml data list. Same goes for the command above it, az ml dataset create --file data-local-path.yml.

2. What appears an obsolete YAML file for data asset properties

In the same page as in the point above, the YAML that specifies the dataset asset properties didn't work due to two typos:

image

  • (yellow in image) Wrong parameter name in the YAML
    When I ran the command az ml data create --file data-local-path.yml I got the error:
(x) path:
- Missing data for required field.

(x) local_path:
- Unknown field.

So looks like path replaced local_path.

  • (blue in image) Wrong value for the path parameter: Having saved a CSV named "customer-churn.csv" at the same level that data-local-path.yml, when running az ml data create --file data-local-path.yml I got the error:
(x) File path does not match asset type uri_folder: /mnt/batch/.../customer-churn.csv

Thus it seems it expects a URI folder and not a path to the final data file. I fixed that by putting the customer-churn.csv file in a folder "datasets" and then specifying just this folder inside the data-local-path.yml YAML (i.e., path: datasets). Then a re-run of the az ml data create command worked fine:

image

Conclusion

In summary, the YAML specs and the command that work are:

The local data file inside a folder

datasets/
└── customer-churn.csv

The YAML file with the path field and the value specifying the path to a folder (not a file):

# data-local-path.yml
$schema: https://azuremlschemas.azureedge.net/latest/asset.schema.json
name: customer-churn-data
version: 1
path: datasets
description: Dataset pointing to customer churn CSV on local computer. Data will be uploaded to default datastore

The corrected Azure CLI command with data instead of dataset:

az ml data create --file aml_data_asset.yml

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.