Microsoft.MachineLearningServices workspaces/jobs 2022-05-01

Bicep resource definition

The workspaces/jobs resource type can be deployed with operations that target:

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' = {
  name: 'string'
  parent: resourceSymbolicName
  properties: {
    computeId: 'string'
    description: 'string'
    displayName: 'string'
    experimentName: 'string'
    identity: {
      identityType: 'string'
      // For remaining properties, see IdentityConfiguration objects
    }
    isArchived: bool
    properties: {
      {customized property}: 'string'
      {customized property}: 'string'
      {customized property}: 'string'
      {customized property}: 'string'
      {customized property}: 'string'
      {customized property}: 'string'
      {customized property}: 'string'
      {customized property}: 'string'
      {customized property}: 'string'
      {customized property}: 'string'
      {customized property}: 'string'
      {customized property}: 'string'
    }
    services: {
      {customized property}: {
        endpoint: 'string'
        jobServiceType: 'string'
        port: int
        properties: {
          {customized property}: 'string'
        }
      }
    }
    tags: {
      {customized property}: 'string'
      {customized property}: 'string'
      {customized property}: 'string'
      {customized property}: 'string'
      {customized property}: 'string'
      {customized property}: 'string'
      {customized property}: 'string'
      {customized property}: 'string'
      {customized property}: 'string'
      {customized property}: 'string'
      {customized property}: 'string'
      {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:

  jobType: 'Command'
  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
    }
  }
  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()
    }
  }

For Pipeline, use:

  jobType: 'Pipeline'
  inputs: {
    {customized property}: {
      description: 'string'
      jobInputType: 'string'
      // For remaining properties, see JobInput objects
    }
  }
  jobs: {
    {customized property}: any()
  }
  outputs: {
    {customized property}: {
      description: 'string'
      jobOutputType: 'string'
      // For remaining properties, see JobOutput objects
    }
  }
  settings: any()

For Sweep, use:

  jobType: 'Sweep'
  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
    }
  }
  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()
  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()
      }
    }
  }

IdentityConfiguration objects

Set the identityType property to specify the type of object.

For AMLToken, use:

  identityType: 'AMLToken'

For Managed, use:

  identityType: 'Managed'
  clientId: 'string'
  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

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'

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

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:

  samplingAlgorithmType: 'Random'
  rule: 'string'
  seed: int

Property values

workspaces/jobs

Name Description Value
name The resource name

See how to set names and types for child resources in Bicep.
string (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)

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
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. object
jobType Set the object type Command
Pipeline
Sweep (required)

IdentityConfiguration

Name Description Value
identityType Set the object type AMLToken
Managed
UserIdentity (required)

AmlToken

Name Description Value
identityType [Required] Specifies the type of identity framework. 'AMLToken' (required)

ManagedIdentity

Name Description Value
identityType [Required] Specifies the type of identity framework. 'Managed' (required)
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}$
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

UserIdentity

Name Description Value
identityType [Required] Specifies the type of identity framework. 'UserIdentity' (required)

ResourceBaseProperties

Name Description Value
{customized property} string
{customized property} string
{customized property} string
{customized property} string
{customized property} string
{customized property} string
{customized property} string
{customized property} string
{customized property} string
{customized property} string
{customized property} string
{customized property} string

JobBaseServices

Name Description Value
{customized property} JobService

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
{customized property} string

CommandJob

Name Description Value
jobType [Required] Specifies the type of job. 'Command' (required)
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 (required)

Constraints:
Min length = 1
Pattern = [a-zA-Z0-9_]
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 (required)

Constraints:
Pattern = [a-zA-Z0-9_]
environmentVariables Environment variables included in the job. CommandJobEnvironmentVariables
inputs Mapping of input data bindings used in the job. CommandJobInputs
limits Command Job limit. CommandJobLimits
outputs Mapping of output data bindings used in the job. CommandJobOutputs
resources Compute Resource configuration for the job. ResourceConfiguration

DistributionConfiguration

Name Description Value
distributionType Set the object type Mpi
PyTorch
TensorFlow (required)

Mpi

Name Description Value
distributionType [Required] Specifies the type of distribution framework. 'Mpi' (required)
processCountPerInstance Number of processes per MPI node. int

PyTorch

Name Description Value
distributionType [Required] Specifies the type of distribution framework. 'PyTorch' (required)
processCountPerInstance Number of processes per node. int

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

CommandJobEnvironmentVariables

Name Description Value
{customized property} string

CommandJobInputs

Name Description Value
{customized property} JobInput

JobInput

Name Description Value
description Description for the input. string
jobInputType Set the object type custom_model
literal
mlflow_model
mltable
triton_model
uri_file
uri_folder (required)

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 (required)

Constraints:
Pattern = [a-zA-Z0-9_]

LiteralJobInput

Name Description Value
jobInputType [Required] Specifies the type of job. 'literal' (required)
value [Required] Literal value for the input. string (required)

Constraints:
Pattern = [a-zA-Z0-9_]

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 (required)

Constraints:
Pattern = [a-zA-Z0-9_]

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 (required)

Constraints:
Pattern = [a-zA-Z0-9_]

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 (required)

Constraints:
Pattern = [a-zA-Z0-9_]

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 (required)

Constraints:
Pattern = [a-zA-Z0-9_]

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 (required)

Constraints:
Pattern = [a-zA-Z0-9_]

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
{customized property} JobOutput

JobOutput

Name Description Value
description Description for the output. string
jobOutputType Set the object type custom_model
mlflow_model
mltable
triton_model
uri_file
uri_folder (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

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

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

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

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

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

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
{customized property} For Bicep, you can use the any() function.

PipelineJob

Name Description Value
jobType [Required] Specifies the type of job. 'Pipeline' (required)
inputs Inputs for the pipeline job. PipelineJobInputs
jobs Jobs construct the Pipeline Job. PipelineJobJobs
outputs Outputs for the pipeline job PipelineJobOutputs
settings Pipeline settings, for things like ContinueRunOnStepFailure etc. For Bicep, you can use the any() function.

PipelineJobInputs

Name Description Value
{customized property} JobInput

PipelineJobJobs

Name Description Value
{customized property} For Bicep, you can use the any() function.

PipelineJobOutputs

Name Description Value
{customized property} JobOutput

SweepJob

Name Description Value
jobType [Required] Specifies the type of job. 'Sweep' (required)
earlyTermination Early termination policies enable canceling poor-performing runs before they complete EarlyTerminationPolicy
inputs Mapping of input data bindings used in the job. SweepJobInputs
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 For Bicep, you can use the any() function.(required)
trial [Required] Trial component definition. TrialComponent (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 the object type Bandit
MedianStopping
TruncationSelection (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

MedianStoppingPolicy

Name Description Value
policyType [Required] Name of policy configuration 'MedianStopping' (required)

TruncationSelectionPolicy

Name Description Value
policyType [Required] Name of policy configuration 'TruncationSelection' (required)
truncationPercentage The percentage of runs to cancel at each evaluation interval. int

SweepJobInputs

Name Description Value
{customized property} JobInput

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

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 (required)

Constraints:
Pattern = [a-zA-Z0-9_]

SweepJobOutputs

Name Description Value
{customized property} JobOutput

SamplingAlgorithm

Name Description Value
samplingAlgorithmType Set the object type Bayesian
Grid
Random (required)

BayesianSamplingAlgorithm

Name Description Value
samplingAlgorithmType [Required] The algorithm used for generating hyperparameter values, along with configuration properties 'Bayesian' (required)

GridSamplingAlgorithm

Name Description Value
samplingAlgorithmType [Required] The algorithm used for generating hyperparameter values, along with configuration properties 'Grid' (required)

RandomSamplingAlgorithm

Name Description Value
samplingAlgorithmType [Required] The algorithm used for generating hyperparameter values, along with configuration properties 'Random' (required)
rule The specific type of random algorithm 'Random'
'Sobol'
seed An optional integer to use as the seed for random number generation 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 (required)

Constraints:
Min length = 1
Pattern = [a-zA-Z0-9_]
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 (required)

Constraints:
Pattern = [a-zA-Z0-9_]
environmentVariables Environment variables included in the job. TrialComponentEnvironmentVariables
resources Compute Resource configuration for the job. ResourceConfiguration

TrialComponentEnvironmentVariables

Name Description Value
{customized property} string

Quickstart templates

The following quickstart templates deploy this resource type.

Template Description
Create an Azure Machine Learning AutoML classification job

Deploy to Azure
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

Deploy to Azure
This template creates an Azure Machine Learning Command job with a basic hello_world script
Create an Azure Machine Learning Sweep job

Deploy to Azure
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:

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",
      "{customized property}": "string",
      "{customized property}": "string",
      "{customized property}": "string",
      "{customized property}": "string",
      "{customized property}": "string",
      "{customized property}": "string",
      "{customized property}": "string",
      "{customized property}": "string",
      "{customized property}": "string",
      "{customized property}": "string",
      "{customized property}": "string"
    },
    "services": {
      "{customized property}": {
        "endpoint": "string",
        "jobServiceType": "string",
        "port": "int",
        "properties": {
          "{customized property}": "string"
        }
      }
    },
    "tags": {
      "{customized property}": "string",
      "{customized property}": "string",
      "{customized property}": "string",
      "{customized property}": "string",
      "{customized property}": "string",
      "{customized property}": "string",
      "{customized property}": "string",
      "{customized property}": "string",
      "{customized property}": "string",
      "{customized property}": "string",
      "{customized property}": "string",
      "{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:

  "jobType": "Command",
  "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
    }
  },
  "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:

  "jobType": "Pipeline",
  "inputs": {
    "{customized property}": {
      "description": "string",
      "jobInputType": "string"
      // For remaining properties, see JobInput objects
    }
  },
  "jobs": {
    "{customized property}": {}
  },
  "outputs": {
    "{customized property}": {
      "description": "string",
      "jobOutputType": "string"
      // For remaining properties, see JobOutput objects
    }
  },
  "settings": {}

For Sweep, use:

  "jobType": "Sweep",
  "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
    }
  },
  "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:

  "identityType": "Managed",
  "clientId": "string",
  "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"

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"

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"

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:

  "samplingAlgorithmType": "Random",
  "rule": "string",
  "seed": "int"

Property values

workspaces/jobs

Name Description Value
type The resource type 'Microsoft.MachineLearningServices/workspaces/jobs'
apiVersion The resource api version '2022-05-01'
name The resource name

See how to set names and types for child resources in JSON ARM templates.
string (required)
properties [Required] Additional attributes of the entity. JobBaseProperties (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
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. object
jobType Set the object type Command
Pipeline
Sweep (required)

IdentityConfiguration

Name Description Value
identityType Set the object type AMLToken
Managed
UserIdentity (required)

AmlToken

Name Description Value
identityType [Required] Specifies the type of identity framework. 'AMLToken' (required)

ManagedIdentity

Name Description Value
identityType [Required] Specifies the type of identity framework. 'Managed' (required)
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}$
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

UserIdentity

Name Description Value
identityType [Required] Specifies the type of identity framework. 'UserIdentity' (required)

ResourceBaseProperties

Name Description Value
{customized property} string
{customized property} string
{customized property} string
{customized property} string
{customized property} string
{customized property} string
{customized property} string
{customized property} string
{customized property} string
{customized property} string
{customized property} string
{customized property} string

JobBaseServices

Name Description Value
{customized property} JobService

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
{customized property} string

CommandJob

Name Description Value
jobType [Required] Specifies the type of job. 'Command' (required)
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 (required)

Constraints:
Min length = 1
Pattern = [a-zA-Z0-9_]
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 (required)

Constraints:
Pattern = [a-zA-Z0-9_]
environmentVariables Environment variables included in the job. CommandJobEnvironmentVariables
inputs Mapping of input data bindings used in the job. CommandJobInputs
limits Command Job limit. CommandJobLimits
outputs Mapping of output data bindings used in the job. CommandJobOutputs
resources Compute Resource configuration for the job. ResourceConfiguration

DistributionConfiguration

Name Description Value
distributionType Set the object type Mpi
PyTorch
TensorFlow (required)

Mpi

Name Description Value
distributionType [Required] Specifies the type of distribution framework. 'Mpi' (required)
processCountPerInstance Number of processes per MPI node. int

PyTorch

Name Description Value
distributionType [Required] Specifies the type of distribution framework. 'PyTorch' (required)
processCountPerInstance Number of processes per node. int

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

CommandJobEnvironmentVariables

Name Description Value
{customized property} string

CommandJobInputs

Name Description Value
{customized property} JobInput

JobInput

Name Description Value
description Description for the input. string
jobInputType Set the object type custom_model
literal
mlflow_model
mltable
triton_model
uri_file
uri_folder (required)

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 (required)

Constraints:
Pattern = [a-zA-Z0-9_]

LiteralJobInput

Name Description Value
jobInputType [Required] Specifies the type of job. 'literal' (required)
value [Required] Literal value for the input. string (required)

Constraints:
Pattern = [a-zA-Z0-9_]

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 (required)

Constraints:
Pattern = [a-zA-Z0-9_]

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 (required)

Constraints:
Pattern = [a-zA-Z0-9_]

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 (required)

Constraints:
Pattern = [a-zA-Z0-9_]

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 (required)

Constraints:
Pattern = [a-zA-Z0-9_]

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 (required)

Constraints:
Pattern = [a-zA-Z0-9_]

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
{customized property} JobOutput

JobOutput

Name Description Value
description Description for the output. string
jobOutputType Set the object type custom_model
mlflow_model
mltable
triton_model
uri_file
uri_folder (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

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

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

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

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

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

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
{customized property}

PipelineJob

Name Description Value
jobType [Required] Specifies the type of job. 'Pipeline' (required)
inputs Inputs for the pipeline job. PipelineJobInputs
jobs Jobs construct the Pipeline Job. PipelineJobJobs
outputs Outputs for the pipeline job PipelineJobOutputs
settings Pipeline settings, for things like ContinueRunOnStepFailure etc.

PipelineJobInputs

Name Description Value
{customized property} JobInput

PipelineJobJobs

Name Description Value
{customized property}

PipelineJobOutputs

Name Description Value
{customized property} JobOutput

SweepJob

Name Description Value
jobType [Required] Specifies the type of job. 'Sweep' (required)
earlyTermination Early termination policies enable canceling poor-performing runs before they complete EarlyTerminationPolicy
inputs Mapping of input data bindings used in the job. SweepJobInputs
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
trial [Required] Trial component definition. TrialComponent (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 the object type Bandit
MedianStopping
TruncationSelection (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

MedianStoppingPolicy

Name Description Value
policyType [Required] Name of policy configuration 'MedianStopping' (required)

TruncationSelectionPolicy

Name Description Value
policyType [Required] Name of policy configuration 'TruncationSelection' (required)
truncationPercentage The percentage of runs to cancel at each evaluation interval. int

SweepJobInputs

Name Description Value
{customized property} JobInput

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

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 (required)

Constraints:
Pattern = [a-zA-Z0-9_]

SweepJobOutputs

Name Description Value
{customized property} JobOutput

SamplingAlgorithm

Name Description Value
samplingAlgorithmType Set the object type Bayesian
Grid
Random (required)

BayesianSamplingAlgorithm

Name Description Value
samplingAlgorithmType [Required] The algorithm used for generating hyperparameter values, along with configuration properties 'Bayesian' (required)

GridSamplingAlgorithm

Name Description Value
samplingAlgorithmType [Required] The algorithm used for generating hyperparameter values, along with configuration properties 'Grid' (required)

RandomSamplingAlgorithm

Name Description Value
samplingAlgorithmType [Required] The algorithm used for generating hyperparameter values, along with configuration properties 'Random' (required)
rule The specific type of random algorithm 'Random'
'Sobol'
seed An optional integer to use as the seed for random number generation 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 (required)

Constraints:
Min length = 1
Pattern = [a-zA-Z0-9_]
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 (required)

Constraints:
Pattern = [a-zA-Z0-9_]
environmentVariables Environment variables included in the job. TrialComponentEnvironmentVariables
resources Compute Resource configuration for the job. ResourceConfiguration

TrialComponentEnvironmentVariables

Name Description Value
{customized property} string

Quickstart templates

The following quickstart templates deploy this resource type.

Template Description
Create an Azure Machine Learning AutoML classification job

Deploy to Azure
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

Deploy to Azure
This template creates an Azure Machine Learning Command job with a basic hello_world script
Create an Azure Machine Learning Sweep job

Deploy to Azure
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"
  parent_id = "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"
        {customized property} = "string"
        {customized property} = "string"
        {customized property} = "string"
        {customized property} = "string"
        {customized property} = "string"
        {customized property} = "string"
        {customized property} = "string"
        {customized property} = "string"
        {customized property} = "string"
        {customized property} = "string"
        {customized property} = "string"
      }
      services = {
        {customized property} = {
          endpoint = "string"
          jobServiceType = "string"
          port = int
          properties = {
            {customized property} = "string"
          }
        }
      }
      tags = {
        {customized property} = "string"
        {customized property} = "string"
        {customized property} = "string"
        {customized property} = "string"
        {customized property} = "string"
        {customized property} = "string"
        {customized property} = "string"
        {customized property} = "string"
        {customized property} = "string"
        {customized property} = "string"
        {customized property} = "string"
        {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:

  jobType = "Command"
  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
    }
  }
  limits = {
    jobLimitsType = "string"
    timeout = "string"
  }
  outputs = {
    {customized property} = {
      description = "string"
      jobOutputType = "string"
      // For remaining properties, see JobOutput objects
    }
  }
  resources = {
    instanceCount = int
    instanceType = "string"
    properties = {}
  }

For Pipeline, use:

  jobType = "Pipeline"
  inputs = {
    {customized property} = {
      description = "string"
      jobInputType = "string"
      // For remaining properties, see JobInput objects
    }
  }
  jobs = {}
  outputs = {
    {customized property} = {
      description = "string"
      jobOutputType = "string"
      // For remaining properties, see JobOutput objects
    }
  }

For Sweep, use:

  jobType = "Sweep"
  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
    }
  }
  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
  }
  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 = {}
    }
  }

IdentityConfiguration objects

Set the identityType property to specify the type of object.

For AMLToken, use:

  identityType = "AMLToken"

For Managed, use:

  identityType = "Managed"
  clientId = "string"
  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

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"

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

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:

  samplingAlgorithmType = "Random"
  rule = "string"
  seed = int

Property values

workspaces/jobs

Name Description Value
type The resource type "Microsoft.MachineLearningServices/workspaces/jobs@2022-05-01"
name The resource name string (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)

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
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. object
jobType Set the object type Command
Pipeline
Sweep (required)

IdentityConfiguration

Name Description Value
identityType Set the object type AMLToken
Managed
UserIdentity (required)

AmlToken

Name Description Value
identityType [Required] Specifies the type of identity framework. "AMLToken" (required)

ManagedIdentity

Name Description Value
identityType [Required] Specifies the type of identity framework. "Managed" (required)
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}$
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

UserIdentity

Name Description Value
identityType [Required] Specifies the type of identity framework. "UserIdentity" (required)

ResourceBaseProperties

Name Description Value
{customized property} string
{customized property} string
{customized property} string
{customized property} string
{customized property} string
{customized property} string
{customized property} string
{customized property} string
{customized property} string
{customized property} string
{customized property} string
{customized property} string

JobBaseServices

Name Description Value
{customized property} JobService

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
{customized property} string

CommandJob

Name Description Value
jobType [Required] Specifies the type of job. "Command" (required)
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 (required)

Constraints:
Min length = 1
Pattern = [a-zA-Z0-9_]
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 (required)

Constraints:
Pattern = [a-zA-Z0-9_]
environmentVariables Environment variables included in the job. CommandJobEnvironmentVariables
inputs Mapping of input data bindings used in the job. CommandJobInputs
limits Command Job limit. CommandJobLimits
outputs Mapping of output data bindings used in the job. CommandJobOutputs
resources Compute Resource configuration for the job. ResourceConfiguration

DistributionConfiguration

Name Description Value
distributionType Set the object type Mpi
PyTorch
TensorFlow (required)

Mpi

Name Description Value
distributionType [Required] Specifies the type of distribution framework. "Mpi" (required)
processCountPerInstance Number of processes per MPI node. int

PyTorch

Name Description Value
distributionType [Required] Specifies the type of distribution framework. "PyTorch" (required)
processCountPerInstance Number of processes per node. int

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

CommandJobEnvironmentVariables

Name Description Value
{customized property} string

CommandJobInputs

Name Description Value
{customized property} JobInput

JobInput

Name Description Value
description Description for the input. string
jobInputType Set the object type custom_model
literal
mlflow_model
mltable
triton_model
uri_file
uri_folder (required)

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 (required)

Constraints:
Pattern = [a-zA-Z0-9_]

LiteralJobInput

Name Description Value
jobInputType [Required] Specifies the type of job. "literal" (required)
value [Required] Literal value for the input. string (required)

Constraints:
Pattern = [a-zA-Z0-9_]

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 (required)

Constraints:
Pattern = [a-zA-Z0-9_]

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 (required)

Constraints:
Pattern = [a-zA-Z0-9_]

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 (required)

Constraints:
Pattern = [a-zA-Z0-9_]

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 (required)

Constraints:
Pattern = [a-zA-Z0-9_]

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 (required)

Constraints:
Pattern = [a-zA-Z0-9_]

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
{customized property} JobOutput

JobOutput

Name Description Value
description Description for the output. string
jobOutputType Set the object type custom_model
mlflow_model
mltable
triton_model
uri_file
uri_folder (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

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

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

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

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

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

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
{customized property}

PipelineJob

Name Description Value
jobType [Required] Specifies the type of job. "Pipeline" (required)
inputs Inputs for the pipeline job. PipelineJobInputs
jobs Jobs construct the Pipeline Job. PipelineJobJobs
outputs Outputs for the pipeline job PipelineJobOutputs
settings Pipeline settings, for things like ContinueRunOnStepFailure etc.

PipelineJobInputs

Name Description Value
{customized property} JobInput

PipelineJobJobs

Name Description Value
{customized property}

PipelineJobOutputs

Name Description Value
{customized property} JobOutput

SweepJob

Name Description Value
jobType [Required] Specifies the type of job. "Sweep" (required)
earlyTermination Early termination policies enable canceling poor-performing runs before they complete EarlyTerminationPolicy
inputs Mapping of input data bindings used in the job. SweepJobInputs
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
trial [Required] Trial component definition. TrialComponent (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 the object type Bandit
MedianStopping
TruncationSelection (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

MedianStoppingPolicy

Name Description Value
policyType [Required] Name of policy configuration "MedianStopping" (required)

TruncationSelectionPolicy

Name Description Value
policyType [Required] Name of policy configuration "TruncationSelection" (required)
truncationPercentage The percentage of runs to cancel at each evaluation interval. int

SweepJobInputs

Name Description Value
{customized property} JobInput

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

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 (required)

Constraints:
Pattern = [a-zA-Z0-9_]

SweepJobOutputs

Name Description Value
{customized property} JobOutput

SamplingAlgorithm

Name Description Value
samplingAlgorithmType Set the object type Bayesian
Grid
Random (required)

BayesianSamplingAlgorithm

Name Description Value
samplingAlgorithmType [Required] The algorithm used for generating hyperparameter values, along with configuration properties "Bayesian" (required)

GridSamplingAlgorithm

Name Description Value
samplingAlgorithmType [Required] The algorithm used for generating hyperparameter values, along with configuration properties "Grid" (required)

RandomSamplingAlgorithm

Name Description Value
samplingAlgorithmType [Required] The algorithm used for generating hyperparameter values, along with configuration properties "Random" (required)
rule The specific type of random algorithm "Random"
"Sobol"
seed An optional integer to use as the seed for random number generation 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 (required)

Constraints:
Min length = 1
Pattern = [a-zA-Z0-9_]
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 (required)

Constraints:
Pattern = [a-zA-Z0-9_]
environmentVariables Environment variables included in the job. TrialComponentEnvironmentVariables
resources Compute Resource configuration for the job. ResourceConfiguration

TrialComponentEnvironmentVariables

Name Description Value
{customized property} string