Microsoft.MachineLearningServices workspaces/jobs 2022-05-01
- Latest
- 2024-10-01
- 2024-10-01-preview
- 2024-07-01-preview
- 2024-04-01
- 2024-04-01-preview
- 2024-01-01-preview
- 2023-10-01
- 2023-08-01-preview
- 2023-06-01-preview
- 2023-04-01
- 2023-04-01-preview
- 2023-02-01-preview
- 2022-12-01-preview
- 2022-10-01
- 2022-10-01-preview
- 2022-06-01-preview
- 2022-05-01
- 2022-02-01-preview
- 2021-03-01-preview
Bicep resource definition
The workspaces/jobs resource type can be deployed with operations that target:
- Resource groups - See resource group deployment commands
For a list of changed properties in each API version, see change log.
Resource format
To create a Microsoft.MachineLearningServices/workspaces/jobs resource, add the following Bicep to your template.
resource symbolicname 'Microsoft.MachineLearningServices/workspaces/jobs@2022-05-01' = {
parent: resourceSymbolicName
name: 'string'
properties: {
computeId: 'string'
description: 'string'
displayName: 'string'
experimentName: 'string'
identity: {
identityType: 'string'
// For remaining properties, see IdentityConfiguration objects
}
isArchived: bool
properties: {
{customized property}: 'string'
}
services: {
{customized property}: {
endpoint: 'string'
jobServiceType: 'string'
port: int
properties: {
{customized property}: 'string'
}
}
}
tags: {
{customized property}: 'string'
}
jobType: 'string'
// For remaining properties, see JobBaseProperties objects
}
}
JobBaseProperties objects
Set the jobType property to specify the type of object.
For Command, use:
{
codeId: 'string'
command: 'string'
distribution: {
distributionType: 'string'
// For remaining properties, see DistributionConfiguration objects
}
environmentId: 'string'
environmentVariables: {
{customized property}: 'string'
}
inputs: {
{customized property}: {
description: 'string'
jobInputType: 'string'
// For remaining properties, see JobInput objects
}
}
jobType: 'Command'
limits: {
jobLimitsType: 'string'
timeout: 'string'
}
outputs: {
{customized property}: {
description: 'string'
jobOutputType: 'string'
// For remaining properties, see JobOutput objects
}
}
resources: {
instanceCount: int
instanceType: 'string'
properties: {
{customized property}: any(Azure.Bicep.Types.Concrete.AnyType)
}
}
}
For Pipeline, use:
{
inputs: {
{customized property}: {
description: 'string'
jobInputType: 'string'
// For remaining properties, see JobInput objects
}
}
jobs: {
{customized property}: any(Azure.Bicep.Types.Concrete.AnyType)
}
jobType: 'Pipeline'
outputs: {
{customized property}: {
description: 'string'
jobOutputType: 'string'
// For remaining properties, see JobOutput objects
}
}
settings: any(Azure.Bicep.Types.Concrete.AnyType)
}
For Sweep, use:
{
earlyTermination: {
delayEvaluation: int
evaluationInterval: int
policyType: 'string'
// For remaining properties, see EarlyTerminationPolicy objects
}
inputs: {
{customized property}: {
description: 'string'
jobInputType: 'string'
// For remaining properties, see JobInput objects
}
}
jobType: 'Sweep'
limits: {
jobLimitsType: 'string'
maxConcurrentTrials: int
maxTotalTrials: int
timeout: 'string'
trialTimeout: 'string'
}
objective: {
goal: 'string'
primaryMetric: 'string'
}
outputs: {
{customized property}: {
description: 'string'
jobOutputType: 'string'
// For remaining properties, see JobOutput objects
}
}
samplingAlgorithm: {
samplingAlgorithmType: 'string'
// For remaining properties, see SamplingAlgorithm objects
}
searchSpace: any(Azure.Bicep.Types.Concrete.AnyType)
trial: {
codeId: 'string'
command: 'string'
distribution: {
distributionType: 'string'
// For remaining properties, see DistributionConfiguration objects
}
environmentId: 'string'
environmentVariables: {
{customized property}: 'string'
}
resources: {
instanceCount: int
instanceType: 'string'
properties: {
{customized property}: any(Azure.Bicep.Types.Concrete.AnyType)
}
}
}
}
IdentityConfiguration objects
Set the identityType property to specify the type of object.
For AMLToken, use:
{
identityType: 'AMLToken'
}
For Managed, use:
{
clientId: 'string'
identityType: 'Managed'
objectId: 'string'
resourceId: 'string'
}
For UserIdentity, use:
{
identityType: 'UserIdentity'
}
DistributionConfiguration objects
Set the distributionType property to specify the type of object.
For Mpi, use:
{
distributionType: 'Mpi'
processCountPerInstance: int
}
For PyTorch, use:
{
distributionType: 'PyTorch'
processCountPerInstance: int
}
For TensorFlow, use:
{
distributionType: 'TensorFlow'
parameterServerCount: int
workerCount: int
}
EarlyTerminationPolicy objects
Set the policyType property to specify the type of object.
For Bandit, use:
{
policyType: 'Bandit'
slackAmount: int
slackFactor: int
}
For MedianStopping, use:
{
policyType: 'MedianStopping'
}
For TruncationSelection, use:
{
policyType: 'TruncationSelection'
truncationPercentage: int
}
JobInput objects
Set the jobInputType property to specify the type of object.
For custom_model, use:
{
jobInputType: 'custom_model'
mode: 'string'
uri: 'string'
}
For literal, use:
{
jobInputType: 'literal'
value: 'string'
}
For mlflow_model, use:
{
jobInputType: 'mlflow_model'
mode: 'string'
uri: 'string'
}
For mltable, use:
{
jobInputType: 'mltable'
mode: 'string'
uri: 'string'
}
For triton_model, use:
{
jobInputType: 'triton_model'
mode: 'string'
uri: 'string'
}
For uri_file, use:
{
jobInputType: 'uri_file'
mode: 'string'
uri: 'string'
}
For uri_folder, use:
{
jobInputType: 'uri_folder'
mode: 'string'
uri: 'string'
}
JobOutput objects
Set the jobOutputType property to specify the type of object.
For custom_model, use:
{
jobOutputType: 'custom_model'
mode: 'string'
uri: 'string'
}
For mlflow_model, use:
{
jobOutputType: 'mlflow_model'
mode: 'string'
uri: 'string'
}
For mltable, use:
{
jobOutputType: 'mltable'
mode: 'string'
uri: 'string'
}
For triton_model, use:
{
jobOutputType: 'triton_model'
mode: 'string'
uri: 'string'
}
For uri_file, use:
{
jobOutputType: 'uri_file'
mode: 'string'
uri: 'string'
}
For uri_folder, use:
{
jobOutputType: 'uri_folder'
mode: 'string'
uri: 'string'
}
SamplingAlgorithm objects
Set the samplingAlgorithmType property to specify the type of object.
For Bayesian, use:
{
samplingAlgorithmType: 'Bayesian'
}
For Grid, use:
{
samplingAlgorithmType: 'Grid'
}
For Random, use:
{
rule: 'string'
samplingAlgorithmType: 'Random'
seed: int
}
Property values
AmlToken
Name | Description | Value |
---|---|---|
identityType | [Required] Specifies the type of identity framework. | 'AMLToken' (required) |
BanditPolicy
Name | Description | Value |
---|---|---|
policyType | [Required] Name of policy configuration | 'Bandit' (required) |
slackAmount | Absolute distance allowed from the best performing run. | int |
slackFactor | Ratio of the allowed distance from the best performing run. | int |
BayesianSamplingAlgorithm
Name | Description | Value |
---|---|---|
samplingAlgorithmType | [Required] The algorithm used for generating hyperparameter values, along with configuration properties | 'Bayesian' (required) |
CommandJob
Name | Description | Value |
---|---|---|
codeId | ARM resource ID of the code asset. | string |
command | [Required] The command to execute on startup of the job. eg. "python train.py" | string Constraints: Min length = 1 Pattern = [a-zA-Z0-9_] (required) |
distribution | Distribution configuration of the job. If set, this should be one of Mpi, Tensorflow, PyTorch, or null. | DistributionConfiguration |
environmentId | [Required] The ARM resource ID of the Environment specification for the job. | string Constraints: Pattern = [a-zA-Z0-9_] (required) |
environmentVariables | Environment variables included in the job. | CommandJobEnvironmentVariables |
inputs | Mapping of input data bindings used in the job. | CommandJobInputs |
jobType | [Required] Specifies the type of job. | 'Command' (required) |
limits | Command Job limit. | CommandJobLimits |
outputs | Mapping of output data bindings used in the job. | CommandJobOutputs |
resources | Compute Resource configuration for the job. | ResourceConfiguration |
CommandJobEnvironmentVariables
Name | Description | Value |
---|
CommandJobInputs
Name | Description | Value |
---|
CommandJobLimits
Name | Description | Value |
---|---|---|
jobLimitsType | [Required] JobLimit type. | 'Command' 'Sweep' (required) |
timeout | The max run duration in ISO 8601 format, after which the job will be cancelled. Only supports duration with precision as low as Seconds. | string |
CommandJobOutputs
Name | Description | Value |
---|
CustomModelJobInput
Name | Description | Value |
---|---|---|
jobInputType | [Required] Specifies the type of job. | 'custom_model' (required) |
mode | Input Asset Delivery Mode. | 'Direct' 'Download' 'EvalDownload' 'EvalMount' 'ReadOnlyMount' 'ReadWriteMount' |
uri | [Required] Input Asset URI. | string Constraints: Pattern = [a-zA-Z0-9_] (required) |
CustomModelJobOutput
Name | Description | Value |
---|---|---|
jobOutputType | [Required] Specifies the type of job. | 'custom_model' (required) |
mode | Output Asset Delivery Mode. | 'ReadWriteMount' 'Upload' |
uri | Output Asset URI. | string |
DistributionConfiguration
Name | Description | Value |
---|---|---|
distributionType | Set to 'Mpi' for type Mpi. Set to 'PyTorch' for type PyTorch. Set to 'TensorFlow' for type TensorFlow. | 'Mpi' 'PyTorch' 'TensorFlow' (required) |
EarlyTerminationPolicy
Name | Description | Value |
---|---|---|
delayEvaluation | Number of intervals by which to delay the first evaluation. | int |
evaluationInterval | Interval (number of runs) between policy evaluations. | int |
policyType | Set to 'Bandit' for type BanditPolicy. Set to 'MedianStopping' for type MedianStoppingPolicy. Set to 'TruncationSelection' for type TruncationSelectionPolicy. | 'Bandit' 'MedianStopping' 'TruncationSelection' (required) |
GridSamplingAlgorithm
Name | Description | Value |
---|---|---|
samplingAlgorithmType | [Required] The algorithm used for generating hyperparameter values, along with configuration properties | 'Grid' (required) |
IdentityConfiguration
Name | Description | Value |
---|---|---|
identityType | Set to 'AMLToken' for type AmlToken. Set to 'Managed' for type ManagedIdentity. Set to 'UserIdentity' for type UserIdentity. | 'AMLToken' 'Managed' 'UserIdentity' (required) |
JobBaseProperties
Name | Description | Value |
---|---|---|
computeId | ARM resource ID of the compute resource. | string |
description | The asset description text. | string |
displayName | Display name of job. | string |
experimentName | The name of the experiment the job belongs to. If not set, the job is placed in the "Default" experiment. | string |
identity | Identity configuration. If set, this should be one of AmlToken, ManagedIdentity, UserIdentity or null. Defaults to AmlToken if null. |
IdentityConfiguration |
isArchived | Is the asset archived? | bool |
jobType | Set to 'Command' for type CommandJob. Set to 'Pipeline' for type PipelineJob. Set to 'Sweep' for type SweepJob. | 'Command' 'Pipeline' 'Sweep' (required) |
properties | The asset property dictionary. | ResourceBaseProperties |
services | List of JobEndpoints. For local jobs, a job endpoint will have an endpoint value of FileStreamObject. |
JobBaseServices |
tags | Tag dictionary. Tags can be added, removed, and updated. | ResourceBaseTags |
JobBaseServices
Name | Description | Value |
---|
JobInput
Name | Description | Value |
---|---|---|
description | Description for the input. | string |
jobInputType | Set to 'custom_model' for type CustomModelJobInput. Set to 'literal' for type LiteralJobInput. Set to 'mlflow_model' for type MLFlowModelJobInput. Set to 'mltable' for type MLTableJobInput. Set to 'triton_model' for type TritonModelJobInput. Set to 'uri_file' for type UriFileJobInput. Set to 'uri_folder' for type UriFolderJobInput. | 'custom_model' 'literal' 'mlflow_model' 'mltable' 'triton_model' 'uri_file' 'uri_folder' (required) |
JobOutput
Name | Description | Value |
---|---|---|
description | Description for the output. | string |
jobOutputType | Set to 'custom_model' for type CustomModelJobOutput. Set to 'mlflow_model' for type MLFlowModelJobOutput. Set to 'mltable' for type MLTableJobOutput. Set to 'triton_model' for type TritonModelJobOutput. Set to 'uri_file' for type UriFileJobOutput. Set to 'uri_folder' for type UriFolderJobOutput. | 'custom_model' 'mlflow_model' 'mltable' 'triton_model' 'uri_file' 'uri_folder' (required) |
JobService
Name | Description | Value |
---|---|---|
endpoint | Url for endpoint. | string |
jobServiceType | Endpoint type. | string |
port | Port for endpoint. | int |
properties | Additional properties to set on the endpoint. | JobServiceProperties |
JobServiceProperties
Name | Description | Value |
---|
LiteralJobInput
Name | Description | Value |
---|---|---|
jobInputType | [Required] Specifies the type of job. | 'literal' (required) |
value | [Required] Literal value for the input. | string Constraints: Pattern = [a-zA-Z0-9_] (required) |
ManagedIdentity
Name | Description | Value |
---|---|---|
clientId | Specifies a user-assigned identity by client ID. For system-assigned, do not set this field. | string Constraints: Min length = 36 Max length = 36 Pattern = ^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$ |
identityType | [Required] Specifies the type of identity framework. | 'Managed' (required) |
objectId | Specifies a user-assigned identity by object ID. For system-assigned, do not set this field. | string Constraints: Min length = 36 Max length = 36 Pattern = ^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$ |
resourceId | Specifies a user-assigned identity by ARM resource ID. For system-assigned, do not set this field. | string |
MedianStoppingPolicy
Name | Description | Value |
---|---|---|
policyType | [Required] Name of policy configuration | 'MedianStopping' (required) |
Microsoft.MachineLearningServices/workspaces/jobs
Name | Description | Value |
---|---|---|
name | The resource name | string Constraints: Pattern = ^[a-zA-Z0-9][a-zA-Z0-9\-_]{0,254}$ (required) |
parent | In Bicep, you can specify the parent resource for a child resource. You only need to add this property when the child resource is declared outside of the parent resource. For more information, see Child resource outside parent resource. |
Symbolic name for resource of type: workspaces |
properties | [Required] Additional attributes of the entity. | JobBaseProperties (required) |
MLFlowModelJobInput
Name | Description | Value |
---|---|---|
jobInputType | [Required] Specifies the type of job. | 'mlflow_model' (required) |
mode | Input Asset Delivery Mode. | 'Direct' 'Download' 'EvalDownload' 'EvalMount' 'ReadOnlyMount' 'ReadWriteMount' |
uri | [Required] Input Asset URI. | string Constraints: Pattern = [a-zA-Z0-9_] (required) |
MLFlowModelJobOutput
Name | Description | Value |
---|---|---|
jobOutputType | [Required] Specifies the type of job. | 'mlflow_model' (required) |
mode | Output Asset Delivery Mode. | 'ReadWriteMount' 'Upload' |
uri | Output Asset URI. | string |
MLTableJobInput
Name | Description | Value |
---|---|---|
jobInputType | [Required] Specifies the type of job. | 'mltable' (required) |
mode | Input Asset Delivery Mode. | 'Direct' 'Download' 'EvalDownload' 'EvalMount' 'ReadOnlyMount' 'ReadWriteMount' |
uri | [Required] Input Asset URI. | string Constraints: Pattern = [a-zA-Z0-9_] (required) |
MLTableJobOutput
Name | Description | Value |
---|---|---|
jobOutputType | [Required] Specifies the type of job. | 'mltable' (required) |
mode | Output Asset Delivery Mode. | 'ReadWriteMount' 'Upload' |
uri | Output Asset URI. | string |
Mpi
Name | Description | Value |
---|---|---|
distributionType | [Required] Specifies the type of distribution framework. | 'Mpi' (required) |
processCountPerInstance | Number of processes per MPI node. | int |
Objective
Name | Description | Value |
---|---|---|
goal | [Required] Defines supported metric goals for hyperparameter tuning | 'Maximize' 'Minimize' (required) |
primaryMetric | [Required] Name of the metric to optimize. | string Constraints: Pattern = [a-zA-Z0-9_] (required) |
PipelineJob
Name | Description | Value |
---|---|---|
inputs | Inputs for the pipeline job. | PipelineJobInputs |
jobs | Jobs construct the Pipeline Job. | PipelineJobJobs |
jobType | [Required] Specifies the type of job. | 'Pipeline' (required) |
outputs | Outputs for the pipeline job | PipelineJobOutputs |
settings | Pipeline settings, for things like ContinueRunOnStepFailure etc. | any |
PipelineJobInputs
Name | Description | Value |
---|
PipelineJobJobs
Name | Description | Value |
---|
PipelineJobOutputs
Name | Description | Value |
---|
PyTorch
Name | Description | Value |
---|---|---|
distributionType | [Required] Specifies the type of distribution framework. | 'PyTorch' (required) |
processCountPerInstance | Number of processes per node. | int |
RandomSamplingAlgorithm
Name | Description | Value |
---|---|---|
rule | The specific type of random algorithm | 'Random' 'Sobol' |
samplingAlgorithmType | [Required] The algorithm used for generating hyperparameter values, along with configuration properties | 'Random' (required) |
seed | An optional integer to use as the seed for random number generation | int |
ResourceBaseProperties
Name | Description | Value |
---|
ResourceBaseTags
Name | Description | Value |
---|
ResourceConfiguration
Name | Description | Value |
---|---|---|
instanceCount | Optional number of instances or nodes used by the compute target. | int |
instanceType | Optional type of VM used as supported by the compute target. | string |
properties | Additional properties bag. | ResourceConfigurationProperties |
ResourceConfigurationProperties
Name | Description | Value |
---|
SamplingAlgorithm
Name | Description | Value |
---|---|---|
samplingAlgorithmType | Set to 'Bayesian' for type BayesianSamplingAlgorithm. Set to 'Grid' for type GridSamplingAlgorithm. Set to 'Random' for type RandomSamplingAlgorithm. | 'Bayesian' 'Grid' 'Random' (required) |
SweepJob
Name | Description | Value |
---|---|---|
earlyTermination | Early termination policies enable canceling poor-performing runs before they complete | EarlyTerminationPolicy |
inputs | Mapping of input data bindings used in the job. | SweepJobInputs |
jobType | [Required] Specifies the type of job. | 'Sweep' (required) |
limits | Sweep Job limit. | SweepJobLimits |
objective | [Required] Optimization objective. | Objective (required) |
outputs | Mapping of output data bindings used in the job. | SweepJobOutputs |
samplingAlgorithm | [Required] The hyperparameter sampling algorithm | SamplingAlgorithm (required) |
searchSpace | [Required] A dictionary containing each parameter and its distribution. The dictionary key is the name of the parameter | any (required) |
trial | [Required] Trial component definition. | TrialComponent (required) |
SweepJobInputs
Name | Description | Value |
---|
SweepJobLimits
Name | Description | Value |
---|---|---|
jobLimitsType | [Required] JobLimit type. | 'Command' 'Sweep' (required) |
maxConcurrentTrials | Sweep Job max concurrent trials. | int |
maxTotalTrials | Sweep Job max total trials. | int |
timeout | The max run duration in ISO 8601 format, after which the job will be cancelled. Only supports duration with precision as low as Seconds. | string |
trialTimeout | Sweep Job Trial timeout value. | string |
SweepJobOutputs
Name | Description | Value |
---|
TensorFlow
Name | Description | Value |
---|---|---|
distributionType | [Required] Specifies the type of distribution framework. | 'TensorFlow' (required) |
parameterServerCount | Number of parameter server tasks. | int |
workerCount | Number of workers. If not specified, will default to the instance count. | int |
TrialComponent
Name | Description | Value |
---|---|---|
codeId | ARM resource ID of the code asset. | string |
command | [Required] The command to execute on startup of the job. eg. "python train.py" | string Constraints: Min length = 1 Pattern = [a-zA-Z0-9_] (required) |
distribution | Distribution configuration of the job. If set, this should be one of Mpi, Tensorflow, PyTorch, or null. | DistributionConfiguration |
environmentId | [Required] The ARM resource ID of the Environment specification for the job. | string Constraints: Pattern = [a-zA-Z0-9_] (required) |
environmentVariables | Environment variables included in the job. | TrialComponentEnvironmentVariables |
resources | Compute Resource configuration for the job. | ResourceConfiguration |
TrialComponentEnvironmentVariables
Name | Description | Value |
---|
TritonModelJobInput
Name | Description | Value |
---|---|---|
jobInputType | [Required] Specifies the type of job. | 'triton_model' (required) |
mode | Input Asset Delivery Mode. | 'Direct' 'Download' 'EvalDownload' 'EvalMount' 'ReadOnlyMount' 'ReadWriteMount' |
uri | [Required] Input Asset URI. | string Constraints: Pattern = [a-zA-Z0-9_] (required) |
TritonModelJobOutput
Name | Description | Value |
---|---|---|
jobOutputType | [Required] Specifies the type of job. | 'triton_model' (required) |
mode | Output Asset Delivery Mode. | 'ReadWriteMount' 'Upload' |
uri | Output Asset URI. | string |
TruncationSelectionPolicy
Name | Description | Value |
---|---|---|
policyType | [Required] Name of policy configuration | 'TruncationSelection' (required) |
truncationPercentage | The percentage of runs to cancel at each evaluation interval. | int |
UriFileJobInput
Name | Description | Value |
---|---|---|
jobInputType | [Required] Specifies the type of job. | 'uri_file' (required) |
mode | Input Asset Delivery Mode. | 'Direct' 'Download' 'EvalDownload' 'EvalMount' 'ReadOnlyMount' 'ReadWriteMount' |
uri | [Required] Input Asset URI. | string Constraints: Pattern = [a-zA-Z0-9_] (required) |
UriFileJobOutput
Name | Description | Value |
---|---|---|
jobOutputType | [Required] Specifies the type of job. | 'uri_file' (required) |
mode | Output Asset Delivery Mode. | 'ReadWriteMount' 'Upload' |
uri | Output Asset URI. | string |
UriFolderJobInput
Name | Description | Value |
---|---|---|
jobInputType | [Required] Specifies the type of job. | 'uri_folder' (required) |
mode | Input Asset Delivery Mode. | 'Direct' 'Download' 'EvalDownload' 'EvalMount' 'ReadOnlyMount' 'ReadWriteMount' |
uri | [Required] Input Asset URI. | string Constraints: Pattern = [a-zA-Z0-9_] (required) |
UriFolderJobOutput
Name | Description | Value |
---|---|---|
jobOutputType | [Required] Specifies the type of job. | 'uri_folder' (required) |
mode | Output Asset Delivery Mode. | 'ReadWriteMount' 'Upload' |
uri | Output Asset URI. | string |
UserIdentity
Name | Description | Value |
---|---|---|
identityType | [Required] Specifies the type of identity framework. | 'UserIdentity' (required) |
Quickstart samples
The following quickstart samples deploy this resource type.
Bicep File | Description |
---|---|
Create an Azure Machine Learning AutoML classification job | This template creates an Azure Machine Learning AutoML classification job to find out the best model for predicting if a client will subscribe to a fixed term deposit with a financial institution. |
Create an Azure Machine Learning Command job | This template creates an Azure Machine Learning Command job with a basic hello_world script |
Create an Azure Machine Learning Sweep job | This template creates an Azure Machine Learning Sweep job for hyperparameter tuning. |
ARM template resource definition
The workspaces/jobs resource type can be deployed with operations that target:
- Resource groups - See resource group deployment commands
For a list of changed properties in each API version, see change log.
Resource format
To create a Microsoft.MachineLearningServices/workspaces/jobs resource, add the following JSON to your template.
{
"type": "Microsoft.MachineLearningServices/workspaces/jobs",
"apiVersion": "2022-05-01",
"name": "string",
"properties": {
"computeId": "string",
"description": "string",
"displayName": "string",
"experimentName": "string",
"identity": {
"identityType": "string"
// For remaining properties, see IdentityConfiguration objects
},
"isArchived": "bool",
"properties": {
"{customized property}": "string"
},
"services": {
"{customized property}": {
"endpoint": "string",
"jobServiceType": "string",
"port": "int",
"properties": {
"{customized property}": "string"
}
}
},
"tags": {
"{customized property}": "string"
},
"jobType": "string"
// For remaining properties, see JobBaseProperties objects
}
}
JobBaseProperties objects
Set the jobType property to specify the type of object.
For Command, use:
{
"codeId": "string",
"command": "string",
"distribution": {
"distributionType": "string"
// For remaining properties, see DistributionConfiguration objects
},
"environmentId": "string",
"environmentVariables": {
"{customized property}": "string"
},
"inputs": {
"{customized property}": {
"description": "string",
"jobInputType": "string"
// For remaining properties, see JobInput objects
}
},
"jobType": "Command",
"limits": {
"jobLimitsType": "string",
"timeout": "string"
},
"outputs": {
"{customized property}": {
"description": "string",
"jobOutputType": "string"
// For remaining properties, see JobOutput objects
}
},
"resources": {
"instanceCount": "int",
"instanceType": "string",
"properties": {
"{customized property}": {}
}
}
}
For Pipeline, use:
{
"inputs": {
"{customized property}": {
"description": "string",
"jobInputType": "string"
// For remaining properties, see JobInput objects
}
},
"jobs": {
"{customized property}": {}
},
"jobType": "Pipeline",
"outputs": {
"{customized property}": {
"description": "string",
"jobOutputType": "string"
// For remaining properties, see JobOutput objects
}
},
"settings": {}
}
For Sweep, use:
{
"earlyTermination": {
"delayEvaluation": "int",
"evaluationInterval": "int",
"policyType": "string"
// For remaining properties, see EarlyTerminationPolicy objects
},
"inputs": {
"{customized property}": {
"description": "string",
"jobInputType": "string"
// For remaining properties, see JobInput objects
}
},
"jobType": "Sweep",
"limits": {
"jobLimitsType": "string",
"maxConcurrentTrials": "int",
"maxTotalTrials": "int",
"timeout": "string",
"trialTimeout": "string"
},
"objective": {
"goal": "string",
"primaryMetric": "string"
},
"outputs": {
"{customized property}": {
"description": "string",
"jobOutputType": "string"
// For remaining properties, see JobOutput objects
}
},
"samplingAlgorithm": {
"samplingAlgorithmType": "string"
// For remaining properties, see SamplingAlgorithm objects
},
"searchSpace": {},
"trial": {
"codeId": "string",
"command": "string",
"distribution": {
"distributionType": "string"
// For remaining properties, see DistributionConfiguration objects
},
"environmentId": "string",
"environmentVariables": {
"{customized property}": "string"
},
"resources": {
"instanceCount": "int",
"instanceType": "string",
"properties": {
"{customized property}": {}
}
}
}
}
IdentityConfiguration objects
Set the identityType property to specify the type of object.
For AMLToken, use:
{
"identityType": "AMLToken"
}
For Managed, use:
{
"clientId": "string",
"identityType": "Managed",
"objectId": "string",
"resourceId": "string"
}
For UserIdentity, use:
{
"identityType": "UserIdentity"
}
DistributionConfiguration objects
Set the distributionType property to specify the type of object.
For Mpi, use:
{
"distributionType": "Mpi",
"processCountPerInstance": "int"
}
For PyTorch, use:
{
"distributionType": "PyTorch",
"processCountPerInstance": "int"
}
For TensorFlow, use:
{
"distributionType": "TensorFlow",
"parameterServerCount": "int",
"workerCount": "int"
}
EarlyTerminationPolicy objects
Set the policyType property to specify the type of object.
For Bandit, use:
{
"policyType": "Bandit",
"slackAmount": "int",
"slackFactor": "int"
}
For MedianStopping, use:
{
"policyType": "MedianStopping"
}
For TruncationSelection, use:
{
"policyType": "TruncationSelection",
"truncationPercentage": "int"
}
JobInput objects
Set the jobInputType property to specify the type of object.
For custom_model, use:
{
"jobInputType": "custom_model",
"mode": "string",
"uri": "string"
}
For literal, use:
{
"jobInputType": "literal",
"value": "string"
}
For mlflow_model, use:
{
"jobInputType": "mlflow_model",
"mode": "string",
"uri": "string"
}
For mltable, use:
{
"jobInputType": "mltable",
"mode": "string",
"uri": "string"
}
For triton_model, use:
{
"jobInputType": "triton_model",
"mode": "string",
"uri": "string"
}
For uri_file, use:
{
"jobInputType": "uri_file",
"mode": "string",
"uri": "string"
}
For uri_folder, use:
{
"jobInputType": "uri_folder",
"mode": "string",
"uri": "string"
}
JobOutput objects
Set the jobOutputType property to specify the type of object.
For custom_model, use:
{
"jobOutputType": "custom_model",
"mode": "string",
"uri": "string"
}
For mlflow_model, use:
{
"jobOutputType": "mlflow_model",
"mode": "string",
"uri": "string"
}
For mltable, use:
{
"jobOutputType": "mltable",
"mode": "string",
"uri": "string"
}
For triton_model, use:
{
"jobOutputType": "triton_model",
"mode": "string",
"uri": "string"
}
For uri_file, use:
{
"jobOutputType": "uri_file",
"mode": "string",
"uri": "string"
}
For uri_folder, use:
{
"jobOutputType": "uri_folder",
"mode": "string",
"uri": "string"
}
SamplingAlgorithm objects
Set the samplingAlgorithmType property to specify the type of object.
For Bayesian, use:
{
"samplingAlgorithmType": "Bayesian"
}
For Grid, use:
{
"samplingAlgorithmType": "Grid"
}
For Random, use:
{
"rule": "string",
"samplingAlgorithmType": "Random",
"seed": "int"
}
Property values
AmlToken
Name | Description | Value |
---|---|---|
identityType | [Required] Specifies the type of identity framework. | 'AMLToken' (required) |
BanditPolicy
Name | Description | Value |
---|---|---|
policyType | [Required] Name of policy configuration | 'Bandit' (required) |
slackAmount | Absolute distance allowed from the best performing run. | int |
slackFactor | Ratio of the allowed distance from the best performing run. | int |
BayesianSamplingAlgorithm
Name | Description | Value |
---|---|---|
samplingAlgorithmType | [Required] The algorithm used for generating hyperparameter values, along with configuration properties | 'Bayesian' (required) |
CommandJob
Name | Description | Value |
---|---|---|
codeId | ARM resource ID of the code asset. | string |
command | [Required] The command to execute on startup of the job. eg. "python train.py" | string Constraints: Min length = 1 Pattern = [a-zA-Z0-9_] (required) |
distribution | Distribution configuration of the job. If set, this should be one of Mpi, Tensorflow, PyTorch, or null. | DistributionConfiguration |
environmentId | [Required] The ARM resource ID of the Environment specification for the job. | string Constraints: Pattern = [a-zA-Z0-9_] (required) |
environmentVariables | Environment variables included in the job. | CommandJobEnvironmentVariables |
inputs | Mapping of input data bindings used in the job. | CommandJobInputs |
jobType | [Required] Specifies the type of job. | 'Command' (required) |
limits | Command Job limit. | CommandJobLimits |
outputs | Mapping of output data bindings used in the job. | CommandJobOutputs |
resources | Compute Resource configuration for the job. | ResourceConfiguration |
CommandJobEnvironmentVariables
Name | Description | Value |
---|
CommandJobInputs
Name | Description | Value |
---|
CommandJobLimits
Name | Description | Value |
---|---|---|
jobLimitsType | [Required] JobLimit type. | 'Command' 'Sweep' (required) |
timeout | The max run duration in ISO 8601 format, after which the job will be cancelled. Only supports duration with precision as low as Seconds. | string |
CommandJobOutputs
Name | Description | Value |
---|
CustomModelJobInput
Name | Description | Value |
---|---|---|
jobInputType | [Required] Specifies the type of job. | 'custom_model' (required) |
mode | Input Asset Delivery Mode. | 'Direct' 'Download' 'EvalDownload' 'EvalMount' 'ReadOnlyMount' 'ReadWriteMount' |
uri | [Required] Input Asset URI. | string Constraints: Pattern = [a-zA-Z0-9_] (required) |
CustomModelJobOutput
Name | Description | Value |
---|---|---|
jobOutputType | [Required] Specifies the type of job. | 'custom_model' (required) |
mode | Output Asset Delivery Mode. | 'ReadWriteMount' 'Upload' |
uri | Output Asset URI. | string |
DistributionConfiguration
Name | Description | Value |
---|---|---|
distributionType | Set to 'Mpi' for type Mpi. Set to 'PyTorch' for type PyTorch. Set to 'TensorFlow' for type TensorFlow. | 'Mpi' 'PyTorch' 'TensorFlow' (required) |
EarlyTerminationPolicy
Name | Description | Value |
---|---|---|
delayEvaluation | Number of intervals by which to delay the first evaluation. | int |
evaluationInterval | Interval (number of runs) between policy evaluations. | int |
policyType | Set to 'Bandit' for type BanditPolicy. Set to 'MedianStopping' for type MedianStoppingPolicy. Set to 'TruncationSelection' for type TruncationSelectionPolicy. | 'Bandit' 'MedianStopping' 'TruncationSelection' (required) |
GridSamplingAlgorithm
Name | Description | Value |
---|---|---|
samplingAlgorithmType | [Required] The algorithm used for generating hyperparameter values, along with configuration properties | 'Grid' (required) |
IdentityConfiguration
Name | Description | Value |
---|---|---|
identityType | Set to 'AMLToken' for type AmlToken. Set to 'Managed' for type ManagedIdentity. Set to 'UserIdentity' for type UserIdentity. | 'AMLToken' 'Managed' 'UserIdentity' (required) |
JobBaseProperties
Name | Description | Value |
---|---|---|
computeId | ARM resource ID of the compute resource. | string |
description | The asset description text. | string |
displayName | Display name of job. | string |
experimentName | The name of the experiment the job belongs to. If not set, the job is placed in the "Default" experiment. | string |
identity | Identity configuration. If set, this should be one of AmlToken, ManagedIdentity, UserIdentity or null. Defaults to AmlToken if null. |
IdentityConfiguration |
isArchived | Is the asset archived? | bool |
jobType | Set to 'Command' for type CommandJob. Set to 'Pipeline' for type PipelineJob. Set to 'Sweep' for type SweepJob. | 'Command' 'Pipeline' 'Sweep' (required) |
properties | The asset property dictionary. | ResourceBaseProperties |
services | List of JobEndpoints. For local jobs, a job endpoint will have an endpoint value of FileStreamObject. |
JobBaseServices |
tags | Tag dictionary. Tags can be added, removed, and updated. | ResourceBaseTags |
JobBaseServices
Name | Description | Value |
---|
JobInput
Name | Description | Value |
---|---|---|
description | Description for the input. | string |
jobInputType | Set to 'custom_model' for type CustomModelJobInput. Set to 'literal' for type LiteralJobInput. Set to 'mlflow_model' for type MLFlowModelJobInput. Set to 'mltable' for type MLTableJobInput. Set to 'triton_model' for type TritonModelJobInput. Set to 'uri_file' for type UriFileJobInput. Set to 'uri_folder' for type UriFolderJobInput. | 'custom_model' 'literal' 'mlflow_model' 'mltable' 'triton_model' 'uri_file' 'uri_folder' (required) |
JobOutput
Name | Description | Value |
---|---|---|
description | Description for the output. | string |
jobOutputType | Set to 'custom_model' for type CustomModelJobOutput. Set to 'mlflow_model' for type MLFlowModelJobOutput. Set to 'mltable' for type MLTableJobOutput. Set to 'triton_model' for type TritonModelJobOutput. Set to 'uri_file' for type UriFileJobOutput. Set to 'uri_folder' for type UriFolderJobOutput. | 'custom_model' 'mlflow_model' 'mltable' 'triton_model' 'uri_file' 'uri_folder' (required) |
JobService
Name | Description | Value |
---|---|---|
endpoint | Url for endpoint. | string |
jobServiceType | Endpoint type. | string |
port | Port for endpoint. | int |
properties | Additional properties to set on the endpoint. | JobServiceProperties |
JobServiceProperties
Name | Description | Value |
---|
LiteralJobInput
Name | Description | Value |
---|---|---|
jobInputType | [Required] Specifies the type of job. | 'literal' (required) |
value | [Required] Literal value for the input. | string Constraints: Pattern = [a-zA-Z0-9_] (required) |
ManagedIdentity
Name | Description | Value |
---|---|---|
clientId | Specifies a user-assigned identity by client ID. For system-assigned, do not set this field. | string Constraints: Min length = 36 Max length = 36 Pattern = ^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$ |
identityType | [Required] Specifies the type of identity framework. | 'Managed' (required) |
objectId | Specifies a user-assigned identity by object ID. For system-assigned, do not set this field. | string Constraints: Min length = 36 Max length = 36 Pattern = ^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$ |
resourceId | Specifies a user-assigned identity by ARM resource ID. For system-assigned, do not set this field. | string |
MedianStoppingPolicy
Name | Description | Value |
---|---|---|
policyType | [Required] Name of policy configuration | 'MedianStopping' (required) |
Microsoft.MachineLearningServices/workspaces/jobs
Name | Description | Value |
---|---|---|
apiVersion | The api version | '2022-05-01' |
name | The resource name | string Constraints: Pattern = ^[a-zA-Z0-9][a-zA-Z0-9\-_]{0,254}$ (required) |
properties | [Required] Additional attributes of the entity. | JobBaseProperties (required) |
type | The resource type | 'Microsoft.MachineLearningServices/workspaces/jobs' |
MLFlowModelJobInput
Name | Description | Value |
---|---|---|
jobInputType | [Required] Specifies the type of job. | 'mlflow_model' (required) |
mode | Input Asset Delivery Mode. | 'Direct' 'Download' 'EvalDownload' 'EvalMount' 'ReadOnlyMount' 'ReadWriteMount' |
uri | [Required] Input Asset URI. | string Constraints: Pattern = [a-zA-Z0-9_] (required) |
MLFlowModelJobOutput
Name | Description | Value |
---|---|---|
jobOutputType | [Required] Specifies the type of job. | 'mlflow_model' (required) |
mode | Output Asset Delivery Mode. | 'ReadWriteMount' 'Upload' |
uri | Output Asset URI. | string |
MLTableJobInput
Name | Description | Value |
---|---|---|
jobInputType | [Required] Specifies the type of job. | 'mltable' (required) |
mode | Input Asset Delivery Mode. | 'Direct' 'Download' 'EvalDownload' 'EvalMount' 'ReadOnlyMount' 'ReadWriteMount' |
uri | [Required] Input Asset URI. | string Constraints: Pattern = [a-zA-Z0-9_] (required) |
MLTableJobOutput
Name | Description | Value |
---|---|---|
jobOutputType | [Required] Specifies the type of job. | 'mltable' (required) |
mode | Output Asset Delivery Mode. | 'ReadWriteMount' 'Upload' |
uri | Output Asset URI. | string |
Mpi
Name | Description | Value |
---|---|---|
distributionType | [Required] Specifies the type of distribution framework. | 'Mpi' (required) |
processCountPerInstance | Number of processes per MPI node. | int |
Objective
Name | Description | Value |
---|---|---|
goal | [Required] Defines supported metric goals for hyperparameter tuning | 'Maximize' 'Minimize' (required) |
primaryMetric | [Required] Name of the metric to optimize. | string Constraints: Pattern = [a-zA-Z0-9_] (required) |
PipelineJob
Name | Description | Value |
---|---|---|
inputs | Inputs for the pipeline job. | PipelineJobInputs |
jobs | Jobs construct the Pipeline Job. | PipelineJobJobs |
jobType | [Required] Specifies the type of job. | 'Pipeline' (required) |
outputs | Outputs for the pipeline job | PipelineJobOutputs |
settings | Pipeline settings, for things like ContinueRunOnStepFailure etc. | any |
PipelineJobInputs
Name | Description | Value |
---|
PipelineJobJobs
Name | Description | Value |
---|
PipelineJobOutputs
Name | Description | Value |
---|
PyTorch
Name | Description | Value |
---|---|---|
distributionType | [Required] Specifies the type of distribution framework. | 'PyTorch' (required) |
processCountPerInstance | Number of processes per node. | int |
RandomSamplingAlgorithm
Name | Description | Value |
---|---|---|
rule | The specific type of random algorithm | 'Random' 'Sobol' |
samplingAlgorithmType | [Required] The algorithm used for generating hyperparameter values, along with configuration properties | 'Random' (required) |
seed | An optional integer to use as the seed for random number generation | int |
ResourceBaseProperties
Name | Description | Value |
---|
ResourceBaseTags
Name | Description | Value |
---|
ResourceConfiguration
Name | Description | Value |
---|---|---|
instanceCount | Optional number of instances or nodes used by the compute target. | int |
instanceType | Optional type of VM used as supported by the compute target. | string |
properties | Additional properties bag. | ResourceConfigurationProperties |
ResourceConfigurationProperties
Name | Description | Value |
---|
SamplingAlgorithm
Name | Description | Value |
---|---|---|
samplingAlgorithmType | Set to 'Bayesian' for type BayesianSamplingAlgorithm. Set to 'Grid' for type GridSamplingAlgorithm. Set to 'Random' for type RandomSamplingAlgorithm. | 'Bayesian' 'Grid' 'Random' (required) |
SweepJob
Name | Description | Value |
---|---|---|
earlyTermination | Early termination policies enable canceling poor-performing runs before they complete | EarlyTerminationPolicy |
inputs | Mapping of input data bindings used in the job. | SweepJobInputs |
jobType | [Required] Specifies the type of job. | 'Sweep' (required) |
limits | Sweep Job limit. | SweepJobLimits |
objective | [Required] Optimization objective. | Objective (required) |
outputs | Mapping of output data bindings used in the job. | SweepJobOutputs |
samplingAlgorithm | [Required] The hyperparameter sampling algorithm | SamplingAlgorithm (required) |
searchSpace | [Required] A dictionary containing each parameter and its distribution. The dictionary key is the name of the parameter | any (required) |
trial | [Required] Trial component definition. | TrialComponent (required) |
SweepJobInputs
Name | Description | Value |
---|
SweepJobLimits
Name | Description | Value |
---|---|---|
jobLimitsType | [Required] JobLimit type. | 'Command' 'Sweep' (required) |
maxConcurrentTrials | Sweep Job max concurrent trials. | int |
maxTotalTrials | Sweep Job max total trials. | int |
timeout | The max run duration in ISO 8601 format, after which the job will be cancelled. Only supports duration with precision as low as Seconds. | string |
trialTimeout | Sweep Job Trial timeout value. | string |
SweepJobOutputs
Name | Description | Value |
---|
TensorFlow
Name | Description | Value |
---|---|---|
distributionType | [Required] Specifies the type of distribution framework. | 'TensorFlow' (required) |
parameterServerCount | Number of parameter server tasks. | int |
workerCount | Number of workers. If not specified, will default to the instance count. | int |
TrialComponent
Name | Description | Value |
---|---|---|
codeId | ARM resource ID of the code asset. | string |
command | [Required] The command to execute on startup of the job. eg. "python train.py" | string Constraints: Min length = 1 Pattern = [a-zA-Z0-9_] (required) |
distribution | Distribution configuration of the job. If set, this should be one of Mpi, Tensorflow, PyTorch, or null. | DistributionConfiguration |
environmentId | [Required] The ARM resource ID of the Environment specification for the job. | string Constraints: Pattern = [a-zA-Z0-9_] (required) |
environmentVariables | Environment variables included in the job. | TrialComponentEnvironmentVariables |
resources | Compute Resource configuration for the job. | ResourceConfiguration |
TrialComponentEnvironmentVariables
Name | Description | Value |
---|
TritonModelJobInput
Name | Description | Value |
---|---|---|
jobInputType | [Required] Specifies the type of job. | 'triton_model' (required) |
mode | Input Asset Delivery Mode. | 'Direct' 'Download' 'EvalDownload' 'EvalMount' 'ReadOnlyMount' 'ReadWriteMount' |
uri | [Required] Input Asset URI. | string Constraints: Pattern = [a-zA-Z0-9_] (required) |
TritonModelJobOutput
Name | Description | Value |
---|---|---|
jobOutputType | [Required] Specifies the type of job. | 'triton_model' (required) |
mode | Output Asset Delivery Mode. | 'ReadWriteMount' 'Upload' |
uri | Output Asset URI. | string |
TruncationSelectionPolicy
Name | Description | Value |
---|---|---|
policyType | [Required] Name of policy configuration | 'TruncationSelection' (required) |
truncationPercentage | The percentage of runs to cancel at each evaluation interval. | int |
UriFileJobInput
Name | Description | Value |
---|---|---|
jobInputType | [Required] Specifies the type of job. | 'uri_file' (required) |
mode | Input Asset Delivery Mode. | 'Direct' 'Download' 'EvalDownload' 'EvalMount' 'ReadOnlyMount' 'ReadWriteMount' |
uri | [Required] Input Asset URI. | string Constraints: Pattern = [a-zA-Z0-9_] (required) |
UriFileJobOutput
Name | Description | Value |
---|---|---|
jobOutputType | [Required] Specifies the type of job. | 'uri_file' (required) |
mode | Output Asset Delivery Mode. | 'ReadWriteMount' 'Upload' |
uri | Output Asset URI. | string |
UriFolderJobInput
Name | Description | Value |
---|---|---|
jobInputType | [Required] Specifies the type of job. | 'uri_folder' (required) |
mode | Input Asset Delivery Mode. | 'Direct' 'Download' 'EvalDownload' 'EvalMount' 'ReadOnlyMount' 'ReadWriteMount' |
uri | [Required] Input Asset URI. | string Constraints: Pattern = [a-zA-Z0-9_] (required) |
UriFolderJobOutput
Name | Description | Value |
---|---|---|
jobOutputType | [Required] Specifies the type of job. | 'uri_folder' (required) |
mode | Output Asset Delivery Mode. | 'ReadWriteMount' 'Upload' |
uri | Output Asset URI. | string |
UserIdentity
Name | Description | Value |
---|---|---|
identityType | [Required] Specifies the type of identity framework. | 'UserIdentity' (required) |
Quickstart templates
The following quickstart templates deploy this resource type.
Template | Description |
---|---|
Create an Azure Machine Learning AutoML classification job |
This template creates an Azure Machine Learning AutoML classification job to find out the best model for predicting if a client will subscribe to a fixed term deposit with a financial institution. |
Create an Azure Machine Learning Command job |
This template creates an Azure Machine Learning Command job with a basic hello_world script |
Create an Azure Machine Learning Sweep job |
This template creates an Azure Machine Learning Sweep job for hyperparameter tuning. |
Terraform (AzAPI provider) resource definition
The workspaces/jobs resource type can be deployed with operations that target:
- Resource groups
For a list of changed properties in each API version, see change log.
Resource format
To create a Microsoft.MachineLearningServices/workspaces/jobs resource, add the following Terraform to your template.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.MachineLearningServices/workspaces/jobs@2022-05-01"
name = "string"
body = jsonencode({
properties = {
computeId = "string"
description = "string"
displayName = "string"
experimentName = "string"
identity = {
identityType = "string"
// For remaining properties, see IdentityConfiguration objects
}
isArchived = bool
properties = {
{customized property} = "string"
}
services = {
{customized property} = {
endpoint = "string"
jobServiceType = "string"
port = int
properties = {
{customized property} = "string"
}
}
}
tags = {
{customized property} = "string"
}
jobType = "string"
// For remaining properties, see JobBaseProperties objects
}
})
}
JobBaseProperties objects
Set the jobType property to specify the type of object.
For Command, use:
{
codeId = "string"
command = "string"
distribution = {
distributionType = "string"
// For remaining properties, see DistributionConfiguration objects
}
environmentId = "string"
environmentVariables = {
{customized property} = "string"
}
inputs = {
{customized property} = {
description = "string"
jobInputType = "string"
// For remaining properties, see JobInput objects
}
}
jobType = "Command"
limits = {
jobLimitsType = "string"
timeout = "string"
}
outputs = {
{customized property} = {
description = "string"
jobOutputType = "string"
// For remaining properties, see JobOutput objects
}
}
resources = {
instanceCount = int
instanceType = "string"
properties = {
{customized property} = ?
}
}
}
For Pipeline, use:
{
inputs = {
{customized property} = {
description = "string"
jobInputType = "string"
// For remaining properties, see JobInput objects
}
}
jobs = {
{customized property} = ?
}
jobType = "Pipeline"
outputs = {
{customized property} = {
description = "string"
jobOutputType = "string"
// For remaining properties, see JobOutput objects
}
}
settings = ?
}
For Sweep, use:
{
earlyTermination = {
delayEvaluation = int
evaluationInterval = int
policyType = "string"
// For remaining properties, see EarlyTerminationPolicy objects
}
inputs = {
{customized property} = {
description = "string"
jobInputType = "string"
// For remaining properties, see JobInput objects
}
}
jobType = "Sweep"
limits = {
jobLimitsType = "string"
maxConcurrentTrials = int
maxTotalTrials = int
timeout = "string"
trialTimeout = "string"
}
objective = {
goal = "string"
primaryMetric = "string"
}
outputs = {
{customized property} = {
description = "string"
jobOutputType = "string"
// For remaining properties, see JobOutput objects
}
}
samplingAlgorithm = {
samplingAlgorithmType = "string"
// For remaining properties, see SamplingAlgorithm objects
}
searchSpace = ?
trial = {
codeId = "string"
command = "string"
distribution = {
distributionType = "string"
// For remaining properties, see DistributionConfiguration objects
}
environmentId = "string"
environmentVariables = {
{customized property} = "string"
}
resources = {
instanceCount = int
instanceType = "string"
properties = {
{customized property} = ?
}
}
}
}
IdentityConfiguration objects
Set the identityType property to specify the type of object.
For AMLToken, use:
{
identityType = "AMLToken"
}
For Managed, use:
{
clientId = "string"
identityType = "Managed"
objectId = "string"
resourceId = "string"
}
For UserIdentity, use:
{
identityType = "UserIdentity"
}
DistributionConfiguration objects
Set the distributionType property to specify the type of object.
For Mpi, use:
{
distributionType = "Mpi"
processCountPerInstance = int
}
For PyTorch, use:
{
distributionType = "PyTorch"
processCountPerInstance = int
}
For TensorFlow, use:
{
distributionType = "TensorFlow"
parameterServerCount = int
workerCount = int
}
EarlyTerminationPolicy objects
Set the policyType property to specify the type of object.
For Bandit, use:
{
policyType = "Bandit"
slackAmount = int
slackFactor = int
}
For MedianStopping, use:
{
policyType = "MedianStopping"
}
For TruncationSelection, use:
{
policyType = "TruncationSelection"
truncationPercentage = int
}
JobInput objects
Set the jobInputType property to specify the type of object.
For custom_model, use:
{
jobInputType = "custom_model"
mode = "string"
uri = "string"
}
For literal, use:
{
jobInputType = "literal"
value = "string"
}
For mlflow_model, use:
{
jobInputType = "mlflow_model"
mode = "string"
uri = "string"
}
For mltable, use:
{
jobInputType = "mltable"
mode = "string"
uri = "string"
}
For triton_model, use:
{
jobInputType = "triton_model"
mode = "string"
uri = "string"
}
For uri_file, use:
{
jobInputType = "uri_file"
mode = "string"
uri = "string"
}
For uri_folder, use:
{
jobInputType = "uri_folder"
mode = "string"
uri = "string"
}
JobOutput objects
Set the jobOutputType property to specify the type of object.
For custom_model, use:
{
jobOutputType = "custom_model"
mode = "string"
uri = "string"
}
For mlflow_model, use:
{
jobOutputType = "mlflow_model"
mode = "string"
uri = "string"
}
For mltable, use:
{
jobOutputType = "mltable"
mode = "string"
uri = "string"
}
For triton_model, use:
{
jobOutputType = "triton_model"
mode = "string"
uri = "string"
}
For uri_file, use:
{
jobOutputType = "uri_file"
mode = "string"
uri = "string"
}
For uri_folder, use:
{
jobOutputType = "uri_folder"
mode = "string"
uri = "string"
}
SamplingAlgorithm objects
Set the samplingAlgorithmType property to specify the type of object.
For Bayesian, use:
{
samplingAlgorithmType = "Bayesian"
}
For Grid, use:
{
samplingAlgorithmType = "Grid"
}
For Random, use:
{
rule = "string"
samplingAlgorithmType = "Random"
seed = int
}
Property values
AmlToken
Name | Description | Value |
---|---|---|
identityType | [Required] Specifies the type of identity framework. | 'AMLToken' (required) |
BanditPolicy
Name | Description | Value |
---|---|---|
policyType | [Required] Name of policy configuration | 'Bandit' (required) |
slackAmount | Absolute distance allowed from the best performing run. | int |
slackFactor | Ratio of the allowed distance from the best performing run. | int |
BayesianSamplingAlgorithm
Name | Description | Value |
---|---|---|
samplingAlgorithmType | [Required] The algorithm used for generating hyperparameter values, along with configuration properties | 'Bayesian' (required) |
CommandJob
Name | Description | Value |
---|---|---|
codeId | ARM resource ID of the code asset. | string |
command | [Required] The command to execute on startup of the job. eg. "python train.py" | string Constraints: Min length = 1 Pattern = [a-zA-Z0-9_] (required) |
distribution | Distribution configuration of the job. If set, this should be one of Mpi, Tensorflow, PyTorch, or null. | DistributionConfiguration |
environmentId | [Required] The ARM resource ID of the Environment specification for the job. | string Constraints: Pattern = [a-zA-Z0-9_] (required) |
environmentVariables | Environment variables included in the job. | CommandJobEnvironmentVariables |
inputs | Mapping of input data bindings used in the job. | CommandJobInputs |
jobType | [Required] Specifies the type of job. | 'Command' (required) |
limits | Command Job limit. | CommandJobLimits |
outputs | Mapping of output data bindings used in the job. | CommandJobOutputs |
resources | Compute Resource configuration for the job. | ResourceConfiguration |
CommandJobEnvironmentVariables
Name | Description | Value |
---|
CommandJobInputs
Name | Description | Value |
---|
CommandJobLimits
Name | Description | Value |
---|---|---|
jobLimitsType | [Required] JobLimit type. | 'Command' 'Sweep' (required) |
timeout | The max run duration in ISO 8601 format, after which the job will be cancelled. Only supports duration with precision as low as Seconds. | string |
CommandJobOutputs
Name | Description | Value |
---|
CustomModelJobInput
Name | Description | Value |
---|---|---|
jobInputType | [Required] Specifies the type of job. | 'custom_model' (required) |
mode | Input Asset Delivery Mode. | 'Direct' 'Download' 'EvalDownload' 'EvalMount' 'ReadOnlyMount' 'ReadWriteMount' |
uri | [Required] Input Asset URI. | string Constraints: Pattern = [a-zA-Z0-9_] (required) |
CustomModelJobOutput
Name | Description | Value |
---|---|---|
jobOutputType | [Required] Specifies the type of job. | 'custom_model' (required) |
mode | Output Asset Delivery Mode. | 'ReadWriteMount' 'Upload' |
uri | Output Asset URI. | string |
DistributionConfiguration
Name | Description | Value |
---|---|---|
distributionType | Set to 'Mpi' for type Mpi. Set to 'PyTorch' for type PyTorch. Set to 'TensorFlow' for type TensorFlow. | 'Mpi' 'PyTorch' 'TensorFlow' (required) |
EarlyTerminationPolicy
Name | Description | Value |
---|---|---|
delayEvaluation | Number of intervals by which to delay the first evaluation. | int |
evaluationInterval | Interval (number of runs) between policy evaluations. | int |
policyType | Set to 'Bandit' for type BanditPolicy. Set to 'MedianStopping' for type MedianStoppingPolicy. Set to 'TruncationSelection' for type TruncationSelectionPolicy. | 'Bandit' 'MedianStopping' 'TruncationSelection' (required) |
GridSamplingAlgorithm
Name | Description | Value |
---|---|---|
samplingAlgorithmType | [Required] The algorithm used for generating hyperparameter values, along with configuration properties | 'Grid' (required) |
IdentityConfiguration
Name | Description | Value |
---|---|---|
identityType | Set to 'AMLToken' for type AmlToken. Set to 'Managed' for type ManagedIdentity. Set to 'UserIdentity' for type UserIdentity. | 'AMLToken' 'Managed' 'UserIdentity' (required) |
JobBaseProperties
Name | Description | Value |
---|---|---|
computeId | ARM resource ID of the compute resource. | string |
description | The asset description text. | string |
displayName | Display name of job. | string |
experimentName | The name of the experiment the job belongs to. If not set, the job is placed in the "Default" experiment. | string |
identity | Identity configuration. If set, this should be one of AmlToken, ManagedIdentity, UserIdentity or null. Defaults to AmlToken if null. |
IdentityConfiguration |
isArchived | Is the asset archived? | bool |
jobType | Set to 'Command' for type CommandJob. Set to 'Pipeline' for type PipelineJob. Set to 'Sweep' for type SweepJob. | 'Command' 'Pipeline' 'Sweep' (required) |
properties | The asset property dictionary. | ResourceBaseProperties |
services | List of JobEndpoints. For local jobs, a job endpoint will have an endpoint value of FileStreamObject. |
JobBaseServices |
tags | Tag dictionary. Tags can be added, removed, and updated. | ResourceBaseTags |
JobBaseServices
Name | Description | Value |
---|
JobInput
Name | Description | Value |
---|---|---|
description | Description for the input. | string |
jobInputType | Set to 'custom_model' for type CustomModelJobInput. Set to 'literal' for type LiteralJobInput. Set to 'mlflow_model' for type MLFlowModelJobInput. Set to 'mltable' for type MLTableJobInput. Set to 'triton_model' for type TritonModelJobInput. Set to 'uri_file' for type UriFileJobInput. Set to 'uri_folder' for type UriFolderJobInput. | 'custom_model' 'literal' 'mlflow_model' 'mltable' 'triton_model' 'uri_file' 'uri_folder' (required) |
JobOutput
Name | Description | Value |
---|---|---|
description | Description for the output. | string |
jobOutputType | Set to 'custom_model' for type CustomModelJobOutput. Set to 'mlflow_model' for type MLFlowModelJobOutput. Set to 'mltable' for type MLTableJobOutput. Set to 'triton_model' for type TritonModelJobOutput. Set to 'uri_file' for type UriFileJobOutput. Set to 'uri_folder' for type UriFolderJobOutput. | 'custom_model' 'mlflow_model' 'mltable' 'triton_model' 'uri_file' 'uri_folder' (required) |
JobService
Name | Description | Value |
---|---|---|
endpoint | Url for endpoint. | string |
jobServiceType | Endpoint type. | string |
port | Port for endpoint. | int |
properties | Additional properties to set on the endpoint. | JobServiceProperties |
JobServiceProperties
Name | Description | Value |
---|
LiteralJobInput
Name | Description | Value |
---|---|---|
jobInputType | [Required] Specifies the type of job. | 'literal' (required) |
value | [Required] Literal value for the input. | string Constraints: Pattern = [a-zA-Z0-9_] (required) |
ManagedIdentity
Name | Description | Value |
---|---|---|
clientId | Specifies a user-assigned identity by client ID. For system-assigned, do not set this field. | string Constraints: Min length = 36 Max length = 36 Pattern = ^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$ |
identityType | [Required] Specifies the type of identity framework. | 'Managed' (required) |
objectId | Specifies a user-assigned identity by object ID. For system-assigned, do not set this field. | string Constraints: Min length = 36 Max length = 36 Pattern = ^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$ |
resourceId | Specifies a user-assigned identity by ARM resource ID. For system-assigned, do not set this field. | string |
MedianStoppingPolicy
Name | Description | Value |
---|---|---|
policyType | [Required] Name of policy configuration | 'MedianStopping' (required) |
Microsoft.MachineLearningServices/workspaces/jobs
Name | Description | Value |
---|---|---|
name | The resource name | string Constraints: Pattern = ^[a-zA-Z0-9][a-zA-Z0-9\-_]{0,254}$ (required) |
parent_id | The ID of the resource that is the parent for this resource. | ID for resource of type: workspaces |
properties | [Required] Additional attributes of the entity. | JobBaseProperties (required) |
type | The resource type | "Microsoft.MachineLearningServices/workspaces/jobs@2022-05-01" |
MLFlowModelJobInput
Name | Description | Value |
---|---|---|
jobInputType | [Required] Specifies the type of job. | 'mlflow_model' (required) |
mode | Input Asset Delivery Mode. | 'Direct' 'Download' 'EvalDownload' 'EvalMount' 'ReadOnlyMount' 'ReadWriteMount' |
uri | [Required] Input Asset URI. | string Constraints: Pattern = [a-zA-Z0-9_] (required) |
MLFlowModelJobOutput
Name | Description | Value |
---|---|---|
jobOutputType | [Required] Specifies the type of job. | 'mlflow_model' (required) |
mode | Output Asset Delivery Mode. | 'ReadWriteMount' 'Upload' |
uri | Output Asset URI. | string |
MLTableJobInput
Name | Description | Value |
---|---|---|
jobInputType | [Required] Specifies the type of job. | 'mltable' (required) |
mode | Input Asset Delivery Mode. | 'Direct' 'Download' 'EvalDownload' 'EvalMount' 'ReadOnlyMount' 'ReadWriteMount' |
uri | [Required] Input Asset URI. | string Constraints: Pattern = [a-zA-Z0-9_] (required) |
MLTableJobOutput
Name | Description | Value |
---|---|---|
jobOutputType | [Required] Specifies the type of job. | 'mltable' (required) |
mode | Output Asset Delivery Mode. | 'ReadWriteMount' 'Upload' |
uri | Output Asset URI. | string |
Mpi
Name | Description | Value |
---|---|---|
distributionType | [Required] Specifies the type of distribution framework. | 'Mpi' (required) |
processCountPerInstance | Number of processes per MPI node. | int |
Objective
Name | Description | Value |
---|---|---|
goal | [Required] Defines supported metric goals for hyperparameter tuning | 'Maximize' 'Minimize' (required) |
primaryMetric | [Required] Name of the metric to optimize. | string Constraints: Pattern = [a-zA-Z0-9_] (required) |
PipelineJob
Name | Description | Value |
---|---|---|
inputs | Inputs for the pipeline job. | PipelineJobInputs |
jobs | Jobs construct the Pipeline Job. | PipelineJobJobs |
jobType | [Required] Specifies the type of job. | 'Pipeline' (required) |
outputs | Outputs for the pipeline job | PipelineJobOutputs |
settings | Pipeline settings, for things like ContinueRunOnStepFailure etc. | any |
PipelineJobInputs
Name | Description | Value |
---|
PipelineJobJobs
Name | Description | Value |
---|
PipelineJobOutputs
Name | Description | Value |
---|
PyTorch
Name | Description | Value |
---|---|---|
distributionType | [Required] Specifies the type of distribution framework. | 'PyTorch' (required) |
processCountPerInstance | Number of processes per node. | int |
RandomSamplingAlgorithm
Name | Description | Value |
---|---|---|
rule | The specific type of random algorithm | 'Random' 'Sobol' |
samplingAlgorithmType | [Required] The algorithm used for generating hyperparameter values, along with configuration properties | 'Random' (required) |
seed | An optional integer to use as the seed for random number generation | int |
ResourceBaseProperties
Name | Description | Value |
---|
ResourceBaseTags
Name | Description | Value |
---|
ResourceConfiguration
Name | Description | Value |
---|---|---|
instanceCount | Optional number of instances or nodes used by the compute target. | int |
instanceType | Optional type of VM used as supported by the compute target. | string |
properties | Additional properties bag. | ResourceConfigurationProperties |
ResourceConfigurationProperties
Name | Description | Value |
---|
SamplingAlgorithm
Name | Description | Value |
---|---|---|
samplingAlgorithmType | Set to 'Bayesian' for type BayesianSamplingAlgorithm. Set to 'Grid' for type GridSamplingAlgorithm. Set to 'Random' for type RandomSamplingAlgorithm. | 'Bayesian' 'Grid' 'Random' (required) |
SweepJob
Name | Description | Value |
---|---|---|
earlyTermination | Early termination policies enable canceling poor-performing runs before they complete | EarlyTerminationPolicy |
inputs | Mapping of input data bindings used in the job. | SweepJobInputs |
jobType | [Required] Specifies the type of job. | 'Sweep' (required) |
limits | Sweep Job limit. | SweepJobLimits |
objective | [Required] Optimization objective. | Objective (required) |
outputs | Mapping of output data bindings used in the job. | SweepJobOutputs |
samplingAlgorithm | [Required] The hyperparameter sampling algorithm | SamplingAlgorithm (required) |
searchSpace | [Required] A dictionary containing each parameter and its distribution. The dictionary key is the name of the parameter | any (required) |
trial | [Required] Trial component definition. | TrialComponent (required) |
SweepJobInputs
Name | Description | Value |
---|
SweepJobLimits
Name | Description | Value |
---|---|---|
jobLimitsType | [Required] JobLimit type. | 'Command' 'Sweep' (required) |
maxConcurrentTrials | Sweep Job max concurrent trials. | int |
maxTotalTrials | Sweep Job max total trials. | int |
timeout | The max run duration in ISO 8601 format, after which the job will be cancelled. Only supports duration with precision as low as Seconds. | string |
trialTimeout | Sweep Job Trial timeout value. | string |
SweepJobOutputs
Name | Description | Value |
---|
TensorFlow
Name | Description | Value |
---|---|---|
distributionType | [Required] Specifies the type of distribution framework. | 'TensorFlow' (required) |
parameterServerCount | Number of parameter server tasks. | int |
workerCount | Number of workers. If not specified, will default to the instance count. | int |
TrialComponent
Name | Description | Value |
---|---|---|
codeId | ARM resource ID of the code asset. | string |
command | [Required] The command to execute on startup of the job. eg. "python train.py" | string Constraints: Min length = 1 Pattern = [a-zA-Z0-9_] (required) |
distribution | Distribution configuration of the job. If set, this should be one of Mpi, Tensorflow, PyTorch, or null. | DistributionConfiguration |
environmentId | [Required] The ARM resource ID of the Environment specification for the job. | string Constraints: Pattern = [a-zA-Z0-9_] (required) |
environmentVariables | Environment variables included in the job. | TrialComponentEnvironmentVariables |
resources | Compute Resource configuration for the job. | ResourceConfiguration |
TrialComponentEnvironmentVariables
Name | Description | Value |
---|
TritonModelJobInput
Name | Description | Value |
---|---|---|
jobInputType | [Required] Specifies the type of job. | 'triton_model' (required) |
mode | Input Asset Delivery Mode. | 'Direct' 'Download' 'EvalDownload' 'EvalMount' 'ReadOnlyMount' 'ReadWriteMount' |
uri | [Required] Input Asset URI. | string Constraints: Pattern = [a-zA-Z0-9_] (required) |
TritonModelJobOutput
Name | Description | Value |
---|---|---|
jobOutputType | [Required] Specifies the type of job. | 'triton_model' (required) |
mode | Output Asset Delivery Mode. | 'ReadWriteMount' 'Upload' |
uri | Output Asset URI. | string |
TruncationSelectionPolicy
Name | Description | Value |
---|---|---|
policyType | [Required] Name of policy configuration | 'TruncationSelection' (required) |
truncationPercentage | The percentage of runs to cancel at each evaluation interval. | int |
UriFileJobInput
Name | Description | Value |
---|---|---|
jobInputType | [Required] Specifies the type of job. | 'uri_file' (required) |
mode | Input Asset Delivery Mode. | 'Direct' 'Download' 'EvalDownload' 'EvalMount' 'ReadOnlyMount' 'ReadWriteMount' |
uri | [Required] Input Asset URI. | string Constraints: Pattern = [a-zA-Z0-9_] (required) |
UriFileJobOutput
Name | Description | Value |
---|---|---|
jobOutputType | [Required] Specifies the type of job. | 'uri_file' (required) |
mode | Output Asset Delivery Mode. | 'ReadWriteMount' 'Upload' |
uri | Output Asset URI. | string |
UriFolderJobInput
Name | Description | Value |
---|---|---|
jobInputType | [Required] Specifies the type of job. | 'uri_folder' (required) |
mode | Input Asset Delivery Mode. | 'Direct' 'Download' 'EvalDownload' 'EvalMount' 'ReadOnlyMount' 'ReadWriteMount' |
uri | [Required] Input Asset URI. | string Constraints: Pattern = [a-zA-Z0-9_] (required) |
UriFolderJobOutput
Name | Description | Value |
---|---|---|
jobOutputType | [Required] Specifies the type of job. | 'uri_folder' (required) |
mode | Output Asset Delivery Mode. | 'ReadWriteMount' 'Upload' |
uri | Output Asset URI. | string |
UserIdentity
Name | Description | Value |
---|---|---|
identityType | [Required] Specifies the type of identity framework. | 'UserIdentity' (required) |