Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
- Latest
- 2025-10-01-preview
- 2025-09-01
- 2025-07-01-preview
- 2025-06-01
- 2025-04-01
- 2025-04-01-preview
- 2025-01-01-preview
- 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
- 2022-01-01-preview
- 2021-07-01
- 2021-04-01
- 2021-03-01-preview
- 2021-01-01
- 2020-09-01-preview
- 2020-08-01
- 2020-06-01
- 2020-05-15-preview
- 2020-05-01-preview
- 2020-04-01
- 2020-03-01
- 2020-02-18-preview
- 2020-01-01
- 2019-11-01
- 2019-06-01
- 2019-05-01
- 2018-11-19
- 2018-03-01-preview
Bicep resource definition
The workspaces/computes 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/computes resource, add the following Bicep to your template.
resource symbolicname 'Microsoft.MachineLearningServices/workspaces/computes@2018-03-01-preview' = {
parent: resourceSymbolicName
identity: {
type: 'SystemAssigned'
}
location: 'string'
name: 'string'
properties: {
computeLocation: 'string'
description: 'string'
resourceId: 'string'
computeType: 'string'
// For remaining properties, see Compute objects
}
tags: {
{customized property}: 'string'
}
}
Compute objects
Set the computeType property to specify the type of object.
For AKS, use:
{
computeType: 'AKS'
properties: {
agentCount: int
agentVMSize: 'string'
clusterFqdn: 'string'
sslConfiguration: {
cert: 'string'
cname: 'string'
key: 'string'
status: 'string'
}
systemServices: [
{}
]
}
}
For BatchAI, use:
{
computeType: 'BatchAI'
properties: {
scaleSettings: {
autoScaleEnabled: bool
maxNodeCount: int
minNodeCount: int
}
vmPriority: 'string'
vmSize: 'string'
}
}
For DataFactory, use:
{
computeType: 'DataFactory'
}
For HDInsight, use:
{
computeType: 'HDInsight'
properties: {
address: 'string'
administratorAccount: {
password: 'string'
privateKeyData: 'string'
publicKeyData: 'string'
username: 'string'
}
sshPort: int
}
}
For VirtualMachine, use:
{
computeType: 'VirtualMachine'
properties: {
address: 'string'
administratorAccount: {
password: 'string'
privateKeyData: 'string'
publicKeyData: 'string'
username: 'string'
}
sshPort: int
virtualMachineSize: 'string'
}
}
Property Values
Microsoft.MachineLearningServices/workspaces/computes
| Name | Description | Value |
|---|---|---|
| identity | The identity of the resource. | Identity |
| location | Specifies the location of the resource. | string |
| name | The resource name | 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 | Compute properties | Compute |
| tags | Resource tags | Dictionary of tag names and values. See Tags in templates |
AKS
| Name | Description | Value |
|---|---|---|
| computeType | The type of compute | 'AKS' (required) |
| properties | AKS properties | AKSProperties |
AKSProperties
| Name | Description | Value |
|---|---|---|
| agentCount | Number of agents | int Constraints: Min value = 1 |
| agentVMSize | Agent virtual machine size | string |
| clusterFqdn | Cluster full qualified domain name | string |
| sslConfiguration | SSL configuration | SslConfiguration |
| systemServices | System services | SystemService[] |
BatchAI
| Name | Description | Value |
|---|---|---|
| computeType | The type of compute | 'BatchAI' (required) |
| properties | BatchAI properties | BatchAIProperties |
BatchAIProperties
| Name | Description | Value |
|---|---|---|
| scaleSettings | Scale settings for BatchAI | ScaleSettings |
| vmPriority | Virtual Machine priority | string |
| vmSize | Virtual Machine Size | string |
Compute
| Name | Description | Value |
|---|---|---|
| computeLocation | Location for the underlying compute | string |
| computeType | Set to 'AKS' for type AKS. Set to 'BatchAI' for type BatchAI. Set to 'DataFactory' for type DataFactory. Set to 'HDInsight' for type HDInsight. Set to 'VirtualMachine' for type VirtualMachine. | 'AKS' 'BatchAI' 'DataFactory' 'HDInsight' 'VirtualMachine' (required) |
| description | The description of the Machine Learning compute. | string |
| resourceId | ARM resource id of the compute | string |
DataFactory
| Name | Description | Value |
|---|---|---|
| computeType | The type of compute | 'DataFactory' (required) |
HDInsight
| Name | Description | Value |
|---|---|---|
| computeType | The type of compute | 'HDInsight' (required) |
| properties | HDInsightProperties |
HDInsightProperties
| Name | Description | Value |
|---|---|---|
| address | Public IP address of the master node of the cluster. | string |
| administratorAccount | Admin credentials for master node of the cluster | VirtualMachineSshCredentials |
| sshPort | Port open for ssh connections on the master node of the cluster. | int |
Identity
| Name | Description | Value |
|---|---|---|
| type | The identity type. | 'SystemAssigned' |
ResourceTags
| Name | Description | Value |
|---|
ScaleSettings
| Name | Description | Value |
|---|---|---|
| autoScaleEnabled | Enable or disable auto scale | bool |
| maxNodeCount | Max number of nodes to use | int |
| minNodeCount | Min number of nodes to use | int |
SslConfiguration
| Name | Description | Value |
|---|---|---|
| cert | Cert data | string |
| cname | CNAME of the cert | string |
| key | Key data | string |
| status | Enable or disable SSL for scoring | 'Disabled' 'Enabled' |
SystemService
| Name | Description | Value |
|---|
VirtualMachine
| Name | Description | Value |
|---|---|---|
| computeType | The type of compute | 'VirtualMachine' (required) |
| properties | VirtualMachineProperties |
VirtualMachineProperties
| Name | Description | Value |
|---|---|---|
| address | Public IP address of the virtual machine. | string |
| administratorAccount | Admin credentials for virtual machine | VirtualMachineSshCredentials |
| sshPort | Port open for ssh connections. | int |
| virtualMachineSize | Virtual Machine size | string |
VirtualMachineSshCredentials
| Name | Description | Value |
|---|---|---|
| password | Password of admin account | string |
| privateKeyData | Private key data | string |
| publicKeyData | Public key data | string |
| username | Username of admin account | string |
Usage Examples
Azure Quickstart Samples
The following Azure Quickstart templates contain Bicep samples for deploying this resource type.
| Bicep File | Description |
|---|---|
| Azure Machine Learning end-to-end secure setup | This set of Bicep templates demonstrates how to set up Azure Machine Learning end-to-end in a secure set up. This reference implementation includes the Workspace, a compute cluster, compute instance and attached private AKS cluster. |
| Azure Machine Learning end-to-end secure setup (legacy) | This set of Bicep templates demonstrates how to set up Azure Machine Learning end-to-end in a secure set up. This reference implementation includes the Workspace, a compute cluster, compute instance and attached private AKS cluster. |
| Create an AKS compute target with a Private IP address | This template creates an AKS compute target in given Azure Machine Learning service workspace with a private IP address. |
ARM template resource definition
The workspaces/computes 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/computes resource, add the following JSON to your template.
{
"type": "Microsoft.MachineLearningServices/workspaces/computes",
"apiVersion": "2018-03-01-preview",
"name": "string",
"identity": {
"type": "SystemAssigned"
},
"location": "string",
"properties": {
"computeLocation": "string",
"description": "string",
"resourceId": "string",
"computeType": "string"
// For remaining properties, see Compute objects
},
"tags": {
"{customized property}": "string"
}
}
Compute objects
Set the computeType property to specify the type of object.
For AKS, use:
{
"computeType": "AKS",
"properties": {
"agentCount": "int",
"agentVMSize": "string",
"clusterFqdn": "string",
"sslConfiguration": {
"cert": "string",
"cname": "string",
"key": "string",
"status": "string"
},
"systemServices": [
{
}
]
}
}
For BatchAI, use:
{
"computeType": "BatchAI",
"properties": {
"scaleSettings": {
"autoScaleEnabled": "bool",
"maxNodeCount": "int",
"minNodeCount": "int"
},
"vmPriority": "string",
"vmSize": "string"
}
}
For DataFactory, use:
{
"computeType": "DataFactory"
}
For HDInsight, use:
{
"computeType": "HDInsight",
"properties": {
"address": "string",
"administratorAccount": {
"password": "string",
"privateKeyData": "string",
"publicKeyData": "string",
"username": "string"
},
"sshPort": "int"
}
}
For VirtualMachine, use:
{
"computeType": "VirtualMachine",
"properties": {
"address": "string",
"administratorAccount": {
"password": "string",
"privateKeyData": "string",
"publicKeyData": "string",
"username": "string"
},
"sshPort": "int",
"virtualMachineSize": "string"
}
}
Property Values
Microsoft.MachineLearningServices/workspaces/computes
| Name | Description | Value |
|---|---|---|
| apiVersion | The api version | '2018-03-01-preview' |
| identity | The identity of the resource. | Identity |
| location | Specifies the location of the resource. | string |
| name | The resource name | string (required) |
| properties | Compute properties | Compute |
| tags | Resource tags | Dictionary of tag names and values. See Tags in templates |
| type | The resource type | 'Microsoft.MachineLearningServices/workspaces/computes' |
AKS
| Name | Description | Value |
|---|---|---|
| computeType | The type of compute | 'AKS' (required) |
| properties | AKS properties | AKSProperties |
AKSProperties
| Name | Description | Value |
|---|---|---|
| agentCount | Number of agents | int Constraints: Min value = 1 |
| agentVMSize | Agent virtual machine size | string |
| clusterFqdn | Cluster full qualified domain name | string |
| sslConfiguration | SSL configuration | SslConfiguration |
| systemServices | System services | SystemService[] |
BatchAI
| Name | Description | Value |
|---|---|---|
| computeType | The type of compute | 'BatchAI' (required) |
| properties | BatchAI properties | BatchAIProperties |
BatchAIProperties
| Name | Description | Value |
|---|---|---|
| scaleSettings | Scale settings for BatchAI | ScaleSettings |
| vmPriority | Virtual Machine priority | string |
| vmSize | Virtual Machine Size | string |
Compute
| Name | Description | Value |
|---|---|---|
| computeLocation | Location for the underlying compute | string |
| computeType | Set to 'AKS' for type AKS. Set to 'BatchAI' for type BatchAI. Set to 'DataFactory' for type DataFactory. Set to 'HDInsight' for type HDInsight. Set to 'VirtualMachine' for type VirtualMachine. | 'AKS' 'BatchAI' 'DataFactory' 'HDInsight' 'VirtualMachine' (required) |
| description | The description of the Machine Learning compute. | string |
| resourceId | ARM resource id of the compute | string |
DataFactory
| Name | Description | Value |
|---|---|---|
| computeType | The type of compute | 'DataFactory' (required) |
HDInsight
| Name | Description | Value |
|---|---|---|
| computeType | The type of compute | 'HDInsight' (required) |
| properties | HDInsightProperties |
HDInsightProperties
| Name | Description | Value |
|---|---|---|
| address | Public IP address of the master node of the cluster. | string |
| administratorAccount | Admin credentials for master node of the cluster | VirtualMachineSshCredentials |
| sshPort | Port open for ssh connections on the master node of the cluster. | int |
Identity
| Name | Description | Value |
|---|---|---|
| type | The identity type. | 'SystemAssigned' |
ResourceTags
| Name | Description | Value |
|---|
ScaleSettings
| Name | Description | Value |
|---|---|---|
| autoScaleEnabled | Enable or disable auto scale | bool |
| maxNodeCount | Max number of nodes to use | int |
| minNodeCount | Min number of nodes to use | int |
SslConfiguration
| Name | Description | Value |
|---|---|---|
| cert | Cert data | string |
| cname | CNAME of the cert | string |
| key | Key data | string |
| status | Enable or disable SSL for scoring | 'Disabled' 'Enabled' |
SystemService
| Name | Description | Value |
|---|
VirtualMachine
| Name | Description | Value |
|---|---|---|
| computeType | The type of compute | 'VirtualMachine' (required) |
| properties | VirtualMachineProperties |
VirtualMachineProperties
| Name | Description | Value |
|---|---|---|
| address | Public IP address of the virtual machine. | string |
| administratorAccount | Admin credentials for virtual machine | VirtualMachineSshCredentials |
| sshPort | Port open for ssh connections. | int |
| virtualMachineSize | Virtual Machine size | string |
VirtualMachineSshCredentials
| Name | Description | Value |
|---|---|---|
| password | Password of admin account | string |
| privateKeyData | Private key data | string |
| publicKeyData | Public key data | string |
| username | Username of admin account | string |
Usage Examples
Azure Quickstart Templates
The following Azure Quickstart templates deploy this resource type.
| Template | Description |
|---|---|
| Azure Machine Learning end-to-end secure setup |
This set of Bicep templates demonstrates how to set up Azure Machine Learning end-to-end in a secure set up. This reference implementation includes the Workspace, a compute cluster, compute instance and attached private AKS cluster. |
| Azure Machine Learning end-to-end secure setup (legacy) |
This set of Bicep templates demonstrates how to set up Azure Machine Learning end-to-end in a secure set up. This reference implementation includes the Workspace, a compute cluster, compute instance and attached private AKS cluster. |
| Create a LinkedService in Azure Machine Learning workspace |
This template creates a LinkedService in an existing Azure Machine Learning workspace. |
| Create a Machine Learning Service ADLA Compute |
This template creates a Machine Learning Service ADLA Compute. |
| Create a Machine Learning Service Aks Compute |
This template creates a Machine Learning Service Aks Compute. |
| Create a Machine Learning Service DSVM Compute |
This template creates a Machine Learning Service DSVM Compute. |
| Create a Machine Learning Service HDInsight cluster |
This template creates a Machine Learning Service HDInsight cluster |
| Create an AKS compute target with a Private IP address |
This template creates an AKS compute target in given Azure Machine Learning service workspace with a private IP address. |
| Create an Azure Machine Learning aks compute |
This template creates an Azure Machine Learning aks compute. |
| Create an Azure Machine Learning compute cluster |
This template creates an Azure Machine Learning compute cluster. |
| Create an Azure Machine Learning compute instance |
This template creates an Azure Machine Learning compute instance on behalf of another user with a sample inline setup script |
Terraform (AzAPI provider) resource definition
The workspaces/computes 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/computes resource, add the following Terraform to your template.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.MachineLearningServices/workspaces/computes@2018-03-01-preview"
name = "string"
parent_id = "string"
identity {
type = "string"
identity_ids = [
"string"
]
}
location = "string"
tags = {
{customized property} = "string"
}
body = {
properties = {
computeLocation = "string"
description = "string"
resourceId = "string"
computeType = "string"
// For remaining properties, see Compute objects
}
}
}
Compute objects
Set the computeType property to specify the type of object.
For AKS, use:
{
computeType = "AKS"
properties = {
agentCount = int
agentVMSize = "string"
clusterFqdn = "string"
sslConfiguration = {
cert = "string"
cname = "string"
key = "string"
status = "string"
}
systemServices = [
{
}
]
}
}
For BatchAI, use:
{
computeType = "BatchAI"
properties = {
scaleSettings = {
autoScaleEnabled = bool
maxNodeCount = int
minNodeCount = int
}
vmPriority = "string"
vmSize = "string"
}
}
For DataFactory, use:
{
computeType = "DataFactory"
}
For HDInsight, use:
{
computeType = "HDInsight"
properties = {
address = "string"
administratorAccount = {
password = "string"
privateKeyData = "string"
publicKeyData = "string"
username = "string"
}
sshPort = int
}
}
For VirtualMachine, use:
{
computeType = "VirtualMachine"
properties = {
address = "string"
administratorAccount = {
password = "string"
privateKeyData = "string"
publicKeyData = "string"
username = "string"
}
sshPort = int
virtualMachineSize = "string"
}
}
Property Values
Microsoft.MachineLearningServices/workspaces/computes
| Name | Description | Value |
|---|---|---|
| identity | The identity of the resource. | Identity |
| location | Specifies the location of the resource. | string |
| 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 | Compute properties | Compute |
| tags | Resource tags | Dictionary of tag names and values. |
| type | The resource type | "Microsoft.MachineLearningServices/workspaces/computes@2018-03-01-preview" |
AKS
| Name | Description | Value |
|---|---|---|
| computeType | The type of compute | 'AKS' (required) |
| properties | AKS properties | AKSProperties |
AKSProperties
| Name | Description | Value |
|---|---|---|
| agentCount | Number of agents | int Constraints: Min value = 1 |
| agentVMSize | Agent virtual machine size | string |
| clusterFqdn | Cluster full qualified domain name | string |
| sslConfiguration | SSL configuration | SslConfiguration |
| systemServices | System services | SystemService[] |
BatchAI
| Name | Description | Value |
|---|---|---|
| computeType | The type of compute | 'BatchAI' (required) |
| properties | BatchAI properties | BatchAIProperties |
BatchAIProperties
| Name | Description | Value |
|---|---|---|
| scaleSettings | Scale settings for BatchAI | ScaleSettings |
| vmPriority | Virtual Machine priority | string |
| vmSize | Virtual Machine Size | string |
Compute
| Name | Description | Value |
|---|---|---|
| computeLocation | Location for the underlying compute | string |
| computeType | Set to 'AKS' for type AKS. Set to 'BatchAI' for type BatchAI. Set to 'DataFactory' for type DataFactory. Set to 'HDInsight' for type HDInsight. Set to 'VirtualMachine' for type VirtualMachine. | 'AKS' 'BatchAI' 'DataFactory' 'HDInsight' 'VirtualMachine' (required) |
| description | The description of the Machine Learning compute. | string |
| resourceId | ARM resource id of the compute | string |
DataFactory
| Name | Description | Value |
|---|---|---|
| computeType | The type of compute | 'DataFactory' (required) |
HDInsight
| Name | Description | Value |
|---|---|---|
| computeType | The type of compute | 'HDInsight' (required) |
| properties | HDInsightProperties |
HDInsightProperties
| Name | Description | Value |
|---|---|---|
| address | Public IP address of the master node of the cluster. | string |
| administratorAccount | Admin credentials for master node of the cluster | VirtualMachineSshCredentials |
| sshPort | Port open for ssh connections on the master node of the cluster. | int |
Identity
| Name | Description | Value |
|---|---|---|
| type | The identity type. | 'SystemAssigned' |
ResourceTags
| Name | Description | Value |
|---|
ScaleSettings
| Name | Description | Value |
|---|---|---|
| autoScaleEnabled | Enable or disable auto scale | bool |
| maxNodeCount | Max number of nodes to use | int |
| minNodeCount | Min number of nodes to use | int |
SslConfiguration
| Name | Description | Value |
|---|---|---|
| cert | Cert data | string |
| cname | CNAME of the cert | string |
| key | Key data | string |
| status | Enable or disable SSL for scoring | 'Disabled' 'Enabled' |
SystemService
| Name | Description | Value |
|---|
VirtualMachine
| Name | Description | Value |
|---|---|---|
| computeType | The type of compute | 'VirtualMachine' (required) |
| properties | VirtualMachineProperties |
VirtualMachineProperties
| Name | Description | Value |
|---|---|---|
| address | Public IP address of the virtual machine. | string |
| administratorAccount | Admin credentials for virtual machine | VirtualMachineSshCredentials |
| sshPort | Port open for ssh connections. | int |
| virtualMachineSize | Virtual Machine size | string |
VirtualMachineSshCredentials
| Name | Description | Value |
|---|---|---|
| password | Password of admin account | string |
| privateKeyData | Private key data | string |
| publicKeyData | Public key data | string |
| username | Username of admin account | string |
Usage Examples
Terraform Samples
A basic example of deploying Machine Learning Compute.
terraform {
required_providers {
azapi = {
source = "Azure/azapi"
}
azurerm = {
source = "hashicorp/azurerm"
}
}
}
provider "azurerm" {
features {
}
}
provider "azapi" {
skip_provider_registration = false
}
variable "resource_name" {
type = string
default = "acctest0001"
}
variable "location" {
type = string
default = "westeurope"
}
data "azurerm_client_config" "current" {
}
resource "azapi_resource" "resourceGroup" {
type = "Microsoft.Resources/resourceGroups@2020-06-01"
name = var.resource_name
location = var.location
body = {
tags = {
stage = "test"
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}
resource "azapi_resource" "storageAccount" {
type = "Microsoft.Storage/storageAccounts@2021-09-01"
parent_id = azapi_resource.resourceGroup.id
name = var.resource_name
location = var.location
body = {
kind = "StorageV2"
sku = {
name = "Standard_LRS"
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}
resource "azapi_resource" "component" {
type = "Microsoft.Insights/components@2020-02-02"
parent_id = azapi_resource.resourceGroup.id
name = var.resource_name
location = var.location
body = {
kind = "web"
properties = {
Application_Type = "web"
DisableIpMasking = false
DisableLocalAuth = false
ForceCustomerStorageForProfiler = false
RetentionInDays = 90
SamplingPercentage = 100
publicNetworkAccessForIngestion = "Enabled"
publicNetworkAccessForQuery = "Enabled"
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}
resource "azapi_resource" "vault" {
type = "Microsoft.KeyVault/vaults@2021-10-01"
parent_id = azapi_resource.resourceGroup.id
name = var.resource_name
location = var.location
body = {
properties = {
accessPolicies = []
createMode = "default"
enablePurgeProtection = true
enableRbacAuthorization = false
enableSoftDelete = true
enabledForDeployment = false
enabledForDiskEncryption = false
enabledForTemplateDeployment = false
publicNetworkAccess = "Enabled"
sku = {
family = "A"
name = "standard"
}
tenantId = data.azurerm_client_config.current.tenant_id
}
}
schema_validation_enabled = false
response_export_values = ["*"]
lifecycle {
ignore_changes = [body.properties.accessPolicies]
}
}
resource "azapi_resource" "workspace" {
type = "Microsoft.MachineLearningServices/workspaces@2022-05-01"
parent_id = azapi_resource.resourceGroup.id
name = var.resource_name
location = var.location
identity {
type = "SystemAssigned"
identity_ids = []
}
body = {
properties = {
applicationInsights = azapi_resource.component.id
keyVault = azapi_resource.vault.id
publicNetworkAccess = "Enabled"
storageAccount = azapi_resource.storageAccount.id
v1LegacyMode = false
}
sku = {
name = "Basic"
tier = "Basic"
}
}
schema_validation_enabled = false
ignore_casing = true
response_export_values = ["*"]
}
resource "azapi_resource" "compute" {
type = "Microsoft.MachineLearningServices/workspaces/computes@2022-05-01"
parent_id = azapi_resource.workspace.id
name = var.resource_name
location = var.location
body = {
properties = {
computeLocation = "westeurope"
computeType = "ComputeInstance"
description = ""
disableLocalAuth = true
properties = {
vmSize = "STANDARD_D2_V2"
}
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}