Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
- Últimas
- 2025-10-01-visualização
- 2025-09-01
- 2025-07-01-visualização
- 2025-06-01
- 2025-04-01
- 2025-04-01-visualização
- 2025-01-01-visualização
- 2024-10-01
- 2024-10-01-pré-visualização
- 2024-07-01-visualização
- 2024-04-01
- 2024-04-01-visualização
- 2024-01-01-pré-visualização
- 2023-10-01
- 2023-08-01-PREVIEW
- 2023-06-01-visualização
- 2023-04-01
- 2023-04-01-visualização
- 2023-02-01-visualização
- 2022-12-01-pré-visualização
- 2022-10-01
- 2022-10-01-pré-visualização
- 2022-06-01-pré-visualização
- 2022-05-01
- 2022-02-01-pré-visualização
- 2022-01-01-pré-visualização
- 2021-07-01
- 2021-04-01
- 2021-03-01-pré-visualização
- 2021-01-01
- 2020-09-01-pré-visualização
- 2020-08-01
- 2020-06-01
- 2020-05-15-pré-visualização
- 2020-05-01-pré-visualização
- 2020-04-01
- 2020-03-01
- 2020-02-18-pré-visualização
- 2020-01-01
- 2019-11-01
- 2019-06-01
- 2019-05-01
- 2018-11-19
- 2018-03-01-visualização
Definição de recursos do bíceps
O tipo de recurso de espaços de trabalho pode ser implantado com operações que visam:
Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.
Formato do recurso
Para criar um recurso Microsoft.MachineLearningServices/workspaces, adicione o seguinte Bicep ao seu modelo.
resource symbolicname 'Microsoft.MachineLearningServices/workspaces@2024-10-01-preview' = {
scope: resourceSymbolicName or scope
identity: {
type: 'string'
userAssignedIdentities: {
{customized property}: {}
}
}
kind: 'string'
location: 'string'
name: 'string'
properties: {
allowPublicAccessWhenBehindVnet: bool
allowRoleAssignmentOnRG: bool
applicationInsights: 'string'
associatedWorkspaces: [
'string'
]
containerRegistries: [
'string'
]
containerRegistry: 'string'
description: 'string'
discoveryUrl: 'string'
enableDataIsolation: bool
enableServiceSideCMKEncryption: bool
enableSimplifiedCmk: bool
enableSoftwareBillOfMaterials: bool
encryption: {
cosmosDbResourceId: 'string'
identity: {
userAssignedIdentity: 'string'
}
keyVaultProperties: {
identityClientId: 'string'
keyIdentifier: 'string'
keyVaultArmId: 'string'
}
searchAccountResourceId: 'string'
status: 'string'
storageAccountResourceId: 'string'
}
existingWorkspaces: [
'string'
]
featureStoreSettings: {
computeRuntime: {
sparkRuntimeVersion: 'string'
}
offlineStoreConnectionName: 'string'
onlineStoreConnectionName: 'string'
}
friendlyName: 'string'
hbiWorkspace: bool
hubResourceId: 'string'
imageBuildCompute: 'string'
ipAllowlist: [
'string'
]
keyVault: 'string'
keyVaults: [
'string'
]
managedNetwork: {
firewallSku: 'string'
isolationMode: 'string'
outboundRules: {
{customized property}: {
category: 'string'
status: 'string'
type: 'string'
// For remaining properties, see OutboundRule objects
}
}
status: {
sparkReady: bool
status: 'string'
}
}
networkAcls: {
defaultAction: 'string'
ipRules: [
{
value: 'string'
}
]
}
primaryUserAssignedIdentity: 'string'
provisionNetworkNow: bool
publicNetworkAccess: 'string'
serverlessComputeSettings: {
serverlessComputeCustomSubnet: 'string'
serverlessComputeNoPublicIP: bool
}
serviceManagedResourcesSettings: {
cosmosDb: {
collectionsThroughput: int
}
}
sharedPrivateLinkResources: [
{
name: 'string'
properties: {
groupId: 'string'
privateLinkResourceId: 'string'
requestMessage: 'string'
status: 'string'
}
}
]
softDeleteRetentionInDays: int
storageAccount: 'string'
storageAccounts: [
'string'
]
systemDatastoresAuthMode: 'string'
v1LegacyMode: bool
workspaceHubConfig: {
additionalWorkspaceStorageAccounts: [
'string'
]
defaultWorkspaceResourceGroup: 'string'
}
}
sku: {
capacity: int
family: 'string'
name: 'string'
size: 'string'
tier: 'string'
}
tags: {
{customized property}: 'string'
}
}
Objetos OutboundRule
Defina a propriedade type para especificar o tipo de objeto.
Para FQDN , use:
{
destination: 'string'
type: 'FQDN'
}
Para PrivateEndpoint, use:
{
destination: {
serviceResourceId: 'string'
sparkEnabled: bool
sparkStatus: 'string'
subresourceTarget: 'string'
}
fqdns: [
'string'
]
type: 'PrivateEndpoint'
}
Para ServiceTag, use:
{
destination: {
action: 'string'
addressPrefixes: [
'string'
]
portRanges: 'string'
protocol: 'string'
serviceTag: 'string'
}
type: 'ServiceTag'
}
Valores de propriedade
Microsoft.MachineLearningServices/espaços de trabalho
| Designação | Descrição | Valor |
|---|---|---|
| identidade | Identidade do serviço gerenciado (identidades atribuídas pelo sistema e/ou pelo usuário) | ManagedServiceIdentity |
| tipo | cadeia (de caracteres) | |
| localização | cadeia (de caracteres) | |
| Designação | O nome do recurso | cadeia de caracteres Restrições: Padrão = ^[a-zA-Z0-9][a-zA-Z0-9_-]{2,32}$ (obrigatório) |
| propriedades | Atributos adicionais da entidade. | WorkspaceProperties (obrigatório) |
| âmbito | Use ao criar um recurso em um escopo diferente do escopo de implantação. | Defina essa propriedade como o nome simbólico de um recurso para aplicar o recurso de extensão . |
| SKU | Opcional. Este campo deve ser implementado pelo RP porque a AML está suportando mais de uma camada | Referência |
| Etiquetas | Tags de recursos | Dicionário de nomes e valores de tags. Consulte Tags em modelos |
ComputeRuntimeDto
| Designação | Descrição | Valor |
|---|---|---|
| sparkRuntimeVersion | cadeia (de caracteres) |
CosmosDbSettings
| Designação | Descrição | Valor |
|---|---|---|
| collectionsThroughput | Int |
EncryptionProperty
FeatureStoreSettings
| Designação | Descrição | Valor |
|---|---|---|
| computeRuntime | ComputeRuntimeDto | |
| offlineStoreConnectionName | cadeia (de caracteres) | |
| onlineStoreConnectionName | cadeia (de caracteres) |
FqdnOutboundRule
| Designação | Descrição | Valor |
|---|---|---|
| destino | cadeia (de caracteres) | |
| tipo | Tipo de rede gerenciada Regra de saída de um espaço de trabalho de aprendizado de máquina. | «FQDN» (obrigatório) |
IdentidadeForCmk
| Designação | Descrição | Valor |
|---|---|---|
| identidade atribuída pelo usuário | UserAssignedIdentity a ser usado para buscar a chave de criptografia do keyVault | cadeia (de caracteres) |
IPRule
| Designação | Descrição | Valor |
|---|---|---|
| valor | Um intervalo de endereços IPv4 na notação CIDR, como '124.56.78.91' (endereço IP simples) ou '124.56.78.0/24' (todos os endereços que começam com 124.56.78). O valor pode ser 'Permitir' ou 'Negar'. | cadeia (de caracteres) |
KeyVaultProperties
| Designação | Descrição | Valor |
|---|---|---|
| identityClientId | Atualmente, suportamos apenas SystemAssigned MSI. Precisamos disso quando suportamos UserAssignedIdentities |
cadeia (de caracteres) |
| keyIdentifier | Identificador de chave KeyVault para criptografar os dados | cadeia de caracteres Restrições: Comprimento mínimo = 1 Padrão = [a-zA-Z0-9_] (obrigatório) |
| keyVaultArmId | KeyVault Arm Id que contém a chave de criptografia de dados | cadeia de caracteres Restrições: Comprimento mínimo = 1 Padrão = [a-zA-Z0-9_] (obrigatório) |
ManagedNetworkProvisionStatus
| Designação | Descrição | Valor |
|---|---|---|
| sparkReady [en] | Bool | |
| estado | Status para a rede gerenciada de um espaço de trabalho de aprendizado de máquina. | 'Ativo' 'Inativo' |
ManagedNetworkSettings
ManagedNetworkSettingsOutboundRules
| Designação | Descrição | Valor |
|---|
Identidade de Serviço Gerido (ManagedServiceIdentity)
| Designação | Descrição | Valor |
|---|---|---|
| tipo | Tipo de identidade de serviço gerenciado (onde os tipos SystemAssigned e UserAssigned são permitidos). | 'Nenhuma' 'SystemAssigned' 'SystemAssigned,UserAssigned' 'UserAssigned' (obrigatório) |
| identidades atribuídas pelo utilizador | O conjunto de identidades atribuídas pelo usuário associadas ao recurso. As chaves do dicionário userAssignedIdentities serão ids de recurso ARM no formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Os valores de dicionário podem ser objetos vazios ({}) em solicitações. | UserAssignedIdentities |
NetworkAcls
| Designação | Descrição | Valor |
|---|---|---|
| defaultAction | A ação padrão quando nenhuma regra de ipRules e de virtualNetworkRules corresponder. Isso só é usado depois que a propriedade bypass foi avaliada. | 'Permitir' 'Negar' |
| ipRegras | Regras que regem a acessibilidade de um recurso a partir de um endereço IP específico ou intervalo de IP. | IPRule[] |
Regra de saída
| Designação | Descrição | Valor |
|---|---|---|
| categoria | Categoria de uma rede gerenciada Regra de saída de um espaço de trabalho de aprendizado de máquina. | 'Dependência' 'Recomendado' 'Obrigatório' 'Definido pelo usuário' |
| estado | Tipo de rede gerenciada Regra de saída de um espaço de trabalho de aprendizado de máquina. | 'Ativo' 'Inativo' |
| tipo | Defina como 'FQDN' para o tipo FqdnOutboundRule. Defina como 'PrivateEndpoint' para o tipo PrivateEndpointOutboundRule. Defina como 'ServiceTag' para o tipo ServiceTagOutboundRule. | «FQDN» 'PrivateEndpoint' 'ServiceTag' (obrigatório) |
PrivateEndpointDestination
| Designação | Descrição | Valor |
|---|---|---|
| serviceResourceId | cadeia (de caracteres) | |
| sparkEnabled | Bool | |
| sparkStatus | Tipo de rede gerenciada Regra de saída de um espaço de trabalho de aprendizado de máquina. | 'Ativo' 'Inativo' |
| subresourceTarget | cadeia (de caracteres) |
PrivateEndpointOutboundRule
ServerlessComputeSettings
| Designação | Descrição | Valor |
|---|---|---|
| serverlessComputeCustomSubnet | A ID de recurso de uma sub-rede de rede virtual existente na qual nós de computação sem servidor devem ser implantados | cadeia (de caracteres) |
| serverlessComputeNoPublicIP | O sinalizador para sinalizar se os nós de computação sem servidor implantados na vNet personalizada não teriam endereços IP públicos para um espaço de trabalho com ponto de extremidade privado | Bool |
ServiceManagedResourcesSettings
| Designação | Descrição | Valor |
|---|---|---|
| cosmosDb | CosmosDbSettings |
ServiceTagDestination
| Designação | Descrição | Valor |
|---|---|---|
| ação | O enum de ação para a regra de rede. | 'Permitir' 'Negar' |
| addressPrefixes | Opcional, se fornecida, a propriedade ServiceTag será ignorada. | string[] |
| portRanges | cadeia (de caracteres) | |
| protocolo | cadeia (de caracteres) | |
| serviceTag | cadeia (de caracteres) |
ServiceTagOutboundRule
| Designação | Descrição | Valor |
|---|---|---|
| destino | Destino da etiqueta de serviço para uma regra de saída da etiqueta de serviço para a rede gerenciada de um espaço de trabalho de aprendizado de máquina. | ServiceTagDestination |
| tipo | Tipo de rede gerenciada Regra de saída de um espaço de trabalho de aprendizado de máquina. | 'ServiceTag' (obrigatório) |
SharedPrivateLinkResource
| Designação | Descrição | Valor |
|---|---|---|
| Designação | Nome exclusivo do link privado | cadeia (de caracteres) |
| propriedades | Propriedades de um recurso de link privado compartilhado. | SharedPrivateLinkResourceProperty |
SharedPrivateLinkResourceProperty
| Designação | Descrição | Valor |
|---|---|---|
| ID do grupo | ID de grupo do link privado | cadeia (de caracteres) |
| privateLinkResourceId | O ID do recurso ao qual o link privado se vincula | cadeia (de caracteres) |
| requestMensagem | Solicitar mensagem | cadeia (de caracteres) |
| estado | Estado da ligação do consumidor de serviços ao prestador de serviços | 'Aprovado' 'Desconectado' 'Pendente' 'Rejeitado' 'Tempo limite' |
Referência
| Designação | Descrição | Valor |
|---|---|---|
| capacidade | Se a SKU suportar scaleout/in, o inteiro de capacidade deve ser incluído. Se a expansão/entrada não for possível para o recurso, isso poderá ser omitido. | Int |
| Família | Se o serviço tiver diferentes gerações de hardware, para o mesmo SKU, isso pode ser capturado aqui. | cadeia (de caracteres) |
| Designação | O nome do SKU. Ex - P3. Normalmente, é um código de letra + número | string (obrigatório) |
| tamanho | O tamanho do SKU. Quando o campo de nome é a combinação de camada e algum outro valor, este seria o código autônomo. | cadeia (de caracteres) |
| escalão | Este campo deve ser implementado pelo Provedor de Recursos se o serviço tiver mais de uma camada, mas não é obrigatório em um PUT. | 'Básico' 'Grátis' 'Premium' 'Padrão' |
UserAssignedIdentities
| Designação | Descrição | Valor |
|---|
IdentidadeAtribuídaPeloUtilizador
| Designação | Descrição | Valor |
|---|
WorkspaceHubConfig
| Designação | Descrição | Valor |
|---|---|---|
| adicionalWorkspaceStorageAccounts | string[] | |
| defaultWorkspaceResourceGroup | cadeia (de caracteres) |
WorkspaceProperties
| Designação | Descrição | Valor |
|---|---|---|
| allowPublicAccessWhenBehindVnet | O sinalizador para indicar se o acesso público deve ser permitido quando estiver atrás da VNet. | Bool |
| allowRoleAssignmentOnRG | O sinalizador para indicar se faremos atribuição de função para o MSI do espaço de trabalho no nível do grupo de recursos. | Bool |
| applicationInsights | ID ARM dos insights do aplicativo associados a este espaço de trabalho. | cadeia (de caracteres) |
| associatedWorkspaces | string[] | |
| contentoresRegistos | string[] | |
| containerRegistry | ID ARM do registo de contentor associado a esta área de trabalho. | cadeia (de caracteres) |
| Descrição | A descrição deste espaço de trabalho. | cadeia (de caracteres) |
| discoveryUrl | Url para o serviço de descoberta para identificar pontos de extremidade regionais para serviços de experimentação de aprendizado de máquina | cadeia (de caracteres) |
| enableDataIsolation | Bool | |
| enableServiceSideCMKEncryption | Bool | |
| enableSimplifiedCmk | Sinalizador para saber se a CMK simplificada deve ser habilitada para este espaço de trabalho. | Bool |
| enableSoftwareLista de materiais | Sinalize para saber se SoftwareBillOfMaterials deve ser habilitado para este espaço de trabalho. | Bool |
| cifragem | EncryptionProperty | |
| existentesWorkspaces | string[] | |
| featureStoreSettings | Configurações para espaço de trabalho do tipo de repositório de recursos. | FeatureStoreSettings |
| friendlyNome | O nome amigável para este espaço de trabalho. Este nome em mutável | cadeia (de caracteres) |
| hbiWorkspace | O sinalizador para sinalizar dados HBI no espaço de trabalho e reduzir os dados de diagnóstico coletados pelo serviço | Bool |
| hubResourceId | cadeia (de caracteres) | |
| imageBuildCompute | O nome de computação para compilação de imagem | cadeia (de caracteres) |
| ipAllowlist | A lista de endereços IPv4 que têm permissão para acessar o espaço de trabalho. | string[] |
| keyVault [en] | ID ARM do cofre de chaves associado a este espaço de trabalho. Isso não pode ser alterado depois que o espaço de trabalho for criado | cadeia (de caracteres) |
| keyVaults [en] | string[] | |
| managedNetwork | Configurações de rede gerenciada para um espaço de trabalho de aprendizado de máquina. | ManagedNetworkSettings |
| networkAcls | Um conjunto de regras que regem a acessibilidade de rede do espaço de trabalho. | NetworkAcls |
| primaryUserAssignedIdentity | A ID do recurso de identidade atribuída ao usuário que representa a identidade do espaço de trabalho. | cadeia (de caracteres) |
| provisionNetworkNow | Defina para disparar o provisionamento da VNet gerenciada com as Opções padrão ao criar um espaço de trabalho com a VNet gerenciada habilitada, ou então não faz nada. | Bool |
| acesso à rede pública | Se as solicitações da Rede Pública são permitidas. | 'Desativado' 'Habilitado' |
| serverlessComputeSettings | Configurações para computação sem servidor em um espaço de trabalho | ServerlessComputeSettings |
| serviceManagedResourcesSettings | As configurações de recursos gerenciados pelo serviço. | ServiceManagedResourcesSettings |
| sharedPrivateLinkResources | A lista de recursos de link privado compartilhado neste espaço de trabalho. | SharedPrivateLinkResource [] |
| softDeleteRetentionInDays | O tempo de retenção em dias após o espaço de trabalho é excluído suavemente. | Int |
| conta de armazenamento | ID ARM da conta de armazenamento associada a este espaço de trabalho. Isso não pode ser alterado depois que o espaço de trabalho for criado | cadeia (de caracteres) |
| storageContas | string[] | |
| systemDatastoresAuthMode | O modo de autenticação usado para acessar os armazenamentos de dados do sistema do espaço de trabalho. | 'Chave de acesso' 'Identidade' 'UserDelegationSAS' |
| v1LegacyMode | Ativar v1_legacy_mode pode impedir que você use recursos fornecidos pela API v2. | Bool |
| workspaceHubConfig | Objeto de configuração do WorkspaceHub. | WorkspaceHubConfig |
WorkspaceTags
| Designação | Descrição | Valor |
|---|
Exemplos de uso
Módulos verificados do Azure
Os seguintes de Módulos Verificados do Azure podem ser usados para implantar esse tipo de recurso.
| Módulo | Descrição |
|---|---|
| de espaço de trabalho dos Serviços de Aprendizado de Máquina | Espaço de trabalho do AVM Resource Module for Machine Learning Services |
Exemplos de início rápido do Azure
Os seguintes modelos início rápido do Azure contêm exemplos de Bicep para implantar esse tipo de recurso.
| Arquivo Bicep | Descrição |
|---|---|
| Configuração básica do Azure AI Foundry | Este conjunto de modelos demonstra como configurar o Azure AI Foundry com a configuração básica, ou seja, com o acesso público à Internet habilitado, chaves gerenciadas pela Microsoft para criptografia e configuração de identidade gerenciada pela Microsoft para o recurso de IA. |
| Configuração básica do Azure AI Foundry | Este conjunto de modelos demonstra como configurar o Azure AI Foundry com a configuração básica, ou seja, com o acesso público à Internet habilitado, chaves gerenciadas pela Microsoft para criptografia e configuração de identidade gerenciada pela Microsoft para o recurso de IA. |
| Azure AI Foundry Network Restrito | Este conjunto de modelos demonstra como configurar o Azure AI Foundry com link privado e saída desabilitados, usando chaves gerenciadas pela Microsoft para criptografia e configuração de identidade gerenciada pela Microsoft para o recurso de IA. |
| Azure AI Foundry com autenticação de ID do Microsoft Entra | Este conjunto de modelos demonstra como configurar o Azure AI Foundry com a autenticação Microsoft Entra ID para recursos dependentes, como os Serviços de IA do Azure e o Armazenamento do Azure. |
| de configuração básica do Azure AI Studio | Este conjunto de modelos demonstra como configurar o Azure AI Studio com a configuração básica, ou seja, com o acesso público à Internet habilitado, chaves gerenciadas pela Microsoft para criptografia e configuração de identidade gerenciada pela Microsoft para o recurso de IA. |
| Rede Restrita do Azure AI Studio | Este conjunto de modelos demonstra como configurar o Azure AI Studio com link privado e saída desabilitados, usando chaves gerenciadas pela Microsoft para criptografia e configuração de identidade gerenciada pela Microsoft para o recurso de IA. |
| configuração segura completa do Azure Machine Learning | Este conjunto de modelos Bicep demonstra como configurar o Azure Machine Learning de ponta a ponta em uma configuração segura. Esta implementação de referência inclui o espaço de trabalho, um cluster de computação, instância de computação e cluster AKS privado anexado. |
| Configuração segura de ponta a ponta do Aprendizado de Máquina do Azure | Este conjunto de modelos Bicep demonstra como configurar o Azure Machine Learning de ponta a ponta em uma configuração segura. Esta implementação de referência inclui o espaço de trabalho, um cluster de computação, instância de computação e cluster AKS privado anexado. |
| Chaves de API de configuração básica do agente | Este conjunto de modelos demonstra como configurar o Azure AI Agent Service com a configuração básica usando a autenticação de chaves de API para a conexão AI Service/AOAI. Os agentes usam recursos de pesquisa e armazenamento multilocatários totalmente gerenciados pela Microsoft. Você não terá visibilidade ou controle sobre esses recursos subjacentes do Azure. |
| de identidade de configuração básica do agente | Este conjunto de modelos demonstra como configurar o Azure AI Agent Service com a configuração básica usando a autenticação de identidade gerenciada para a conexão AI Service/AOAI. Os agentes usam recursos de pesquisa e armazenamento multilocatários totalmente gerenciados pela Microsoft. Você não terá visibilidade ou controle sobre esses recursos subjacentes do Azure. |
| Crie um destino de computação AKS com um endereço IP privado | Este modelo cria um destino de computação AKS em determinado espaço de trabalho do serviço Azure Machine Learning com um endereço IP privado. |
| Criar um espaço de trabalho de serviço do Azure Machine Learning | Este modelo de implantação especifica um espaço de trabalho do Azure Machine Learning e seus recursos associados, incluindo o Azure Key Vault, o Armazenamento do Azure, o Azure Application Insights e o Azure Container Registry. Esta configuração descreve o conjunto mínimo de recursos necessários para começar a utilizar o Azure Machine Learning. |
| Criar um espaço de trabalho de serviço do Azure Machine Learning (CMK) | Este modelo de implantação especifica como criar um espaço de trabalho do Azure Machine Learning com criptografia do lado do serviço usando suas chaves de criptografia. |
| Criar um espaço de trabalho de serviço do Azure Machine Learning (CMK) | Este modelo de implantação especifica um espaço de trabalho do Azure Machine Learning e seus recursos associados, incluindo o Azure Key Vault, o Armazenamento do Azure, o Azure Application Insights e o Azure Container Registry. O exemplo mostra como configurar o Azure Machine Learning para criptografia com uma chave de criptografia gerenciada pelo cliente. |
| Criar um espaço de trabalho de serviço do Azure Machine Learning (legado) | Este modelo de implantação especifica um espaço de trabalho do Azure Machine Learning e seus recursos associados, incluindo o Azure Key Vault, o Armazenamento do Azure, o Azure Application Insights e o Azure Container Registry. Essa configuração descreve o conjunto de recursos necessários para começar a usar o Aprendizado de Máquina do Azure em uma configuração isolada de rede. |
| Criar um espaço de trabalho de serviço do Azure Machine Learning (vnet) | Este modelo de implantação especifica um espaço de trabalho do Azure Machine Learning e seus recursos associados, incluindo o Azure Key Vault, o Armazenamento do Azure, o Azure Application Insights e o Azure Container Registry. Essa configuração descreve o conjunto de recursos necessários para começar a usar o Aprendizado de Máquina do Azure em uma configuração isolada de rede. |
| Implante o Secure AI Foundry com uma rede virtual gerenciada | Este modelo cria um ambiente seguro do Azure AI Foundry com restrições robustas de segurança de rede e identidade. |
| Agente Protegido em Rede com de Identidade Gerenciada pelo Usuário | Este conjunto de modelos demonstra como configurar o Azure AI Agent Service com isolamento de rede virtual usando a autenticação de Identidade Gerenciada pelo Usuário para a conexão AI Service/AOAI e links de rede privada para conectar o agente aos seus dados seguros. |
| Configuração do agente padrão | Este conjunto de modelos demonstra como configurar o Azure AI Agent Service com a configuração padrão, ou seja, com a autenticação de identidade gerenciada para conexões de projeto/hub e acesso público à Internet habilitado. Os agentes usam recursos de pesquisa e armazenamento de propriedade do cliente e de locatário único. Com essa configuração, você tem total controle e visibilidade sobre esses recursos, mas incorrerá em custos com base no seu uso. |
Definição de recurso de modelo ARM
O tipo de recurso de espaços de trabalho pode ser implantado com operações que visam:
Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.
Formato do recurso
Para criar um recurso Microsoft.MachineLearningServices/workspaces, adicione o seguinte JSON ao seu modelo.
{
"type": "Microsoft.MachineLearningServices/workspaces",
"apiVersion": "2024-10-01-preview",
"name": "string",
"identity": {
"type": "string",
"userAssignedIdentities": {
"{customized property}": {
}
}
},
"kind": "string",
"location": "string",
"properties": {
"allowPublicAccessWhenBehindVnet": "bool",
"allowRoleAssignmentOnRG": "bool",
"applicationInsights": "string",
"associatedWorkspaces": [ "string" ],
"containerRegistries": [ "string" ],
"containerRegistry": "string",
"description": "string",
"discoveryUrl": "string",
"enableDataIsolation": "bool",
"enableServiceSideCMKEncryption": "bool",
"enableSimplifiedCmk": "bool",
"enableSoftwareBillOfMaterials": "bool",
"encryption": {
"cosmosDbResourceId": "string",
"identity": {
"userAssignedIdentity": "string"
},
"keyVaultProperties": {
"identityClientId": "string",
"keyIdentifier": "string",
"keyVaultArmId": "string"
},
"searchAccountResourceId": "string",
"status": "string",
"storageAccountResourceId": "string"
},
"existingWorkspaces": [ "string" ],
"featureStoreSettings": {
"computeRuntime": {
"sparkRuntimeVersion": "string"
},
"offlineStoreConnectionName": "string",
"onlineStoreConnectionName": "string"
},
"friendlyName": "string",
"hbiWorkspace": "bool",
"hubResourceId": "string",
"imageBuildCompute": "string",
"ipAllowlist": [ "string" ],
"keyVault": "string",
"keyVaults": [ "string" ],
"managedNetwork": {
"firewallSku": "string",
"isolationMode": "string",
"outboundRules": {
"{customized property}": {
"category": "string",
"status": "string",
"type": "string"
// For remaining properties, see OutboundRule objects
}
},
"status": {
"sparkReady": "bool",
"status": "string"
}
},
"networkAcls": {
"defaultAction": "string",
"ipRules": [
{
"value": "string"
}
]
},
"primaryUserAssignedIdentity": "string",
"provisionNetworkNow": "bool",
"publicNetworkAccess": "string",
"serverlessComputeSettings": {
"serverlessComputeCustomSubnet": "string",
"serverlessComputeNoPublicIP": "bool"
},
"serviceManagedResourcesSettings": {
"cosmosDb": {
"collectionsThroughput": "int"
}
},
"sharedPrivateLinkResources": [
{
"name": "string",
"properties": {
"groupId": "string",
"privateLinkResourceId": "string",
"requestMessage": "string",
"status": "string"
}
}
],
"softDeleteRetentionInDays": "int",
"storageAccount": "string",
"storageAccounts": [ "string" ],
"systemDatastoresAuthMode": "string",
"v1LegacyMode": "bool",
"workspaceHubConfig": {
"additionalWorkspaceStorageAccounts": [ "string" ],
"defaultWorkspaceResourceGroup": "string"
}
},
"sku": {
"capacity": "int",
"family": "string",
"name": "string",
"size": "string",
"tier": "string"
},
"tags": {
"{customized property}": "string"
}
}
Objetos OutboundRule
Defina a propriedade type para especificar o tipo de objeto.
Para FQDN , use:
{
"destination": "string",
"type": "FQDN"
}
Para PrivateEndpoint, use:
{
"destination": {
"serviceResourceId": "string",
"sparkEnabled": "bool",
"sparkStatus": "string",
"subresourceTarget": "string"
},
"fqdns": [ "string" ],
"type": "PrivateEndpoint"
}
Para ServiceTag, use:
{
"destination": {
"action": "string",
"addressPrefixes": [ "string" ],
"portRanges": "string",
"protocol": "string",
"serviceTag": "string"
},
"type": "ServiceTag"
}
Valores de propriedade
Microsoft.MachineLearningServices/espaços de trabalho
| Designação | Descrição | Valor |
|---|---|---|
| Versão da API | A versão api | '2024-10-01-pré-visualização' |
| identidade | Identidade do serviço gerenciado (identidades atribuídas pelo sistema e/ou pelo usuário) | ManagedServiceIdentity |
| tipo | cadeia (de caracteres) | |
| localização | cadeia (de caracteres) | |
| Designação | O nome do recurso | cadeia de caracteres Restrições: Padrão = ^[a-zA-Z0-9][a-zA-Z0-9_-]{2,32}$ (obrigatório) |
| propriedades | Atributos adicionais da entidade. | WorkspaceProperties (obrigatório) |
| SKU | Opcional. Este campo deve ser implementado pelo RP porque a AML está suportando mais de uma camada | Referência |
| Etiquetas | Tags de recursos | Dicionário de nomes e valores de tags. Consulte Tags em modelos |
| tipo | O tipo de recurso | 'Microsoft.MachineLearningServices/espaços de trabalho' |
ComputeRuntimeDto
| Designação | Descrição | Valor |
|---|---|---|
| sparkRuntimeVersion | cadeia (de caracteres) |
CosmosDbSettings
| Designação | Descrição | Valor |
|---|---|---|
| collectionsThroughput | Int |
EncryptionProperty
FeatureStoreSettings
| Designação | Descrição | Valor |
|---|---|---|
| computeRuntime | ComputeRuntimeDto | |
| offlineStoreConnectionName | cadeia (de caracteres) | |
| onlineStoreConnectionName | cadeia (de caracteres) |
FqdnOutboundRule
| Designação | Descrição | Valor |
|---|---|---|
| destino | cadeia (de caracteres) | |
| tipo | Tipo de rede gerenciada Regra de saída de um espaço de trabalho de aprendizado de máquina. | «FQDN» (obrigatório) |
IdentidadeForCmk
| Designação | Descrição | Valor |
|---|---|---|
| identidade atribuída pelo usuário | UserAssignedIdentity a ser usado para buscar a chave de criptografia do keyVault | cadeia (de caracteres) |
IPRule
| Designação | Descrição | Valor |
|---|---|---|
| valor | Um intervalo de endereços IPv4 na notação CIDR, como '124.56.78.91' (endereço IP simples) ou '124.56.78.0/24' (todos os endereços que começam com 124.56.78). O valor pode ser 'Permitir' ou 'Negar'. | cadeia (de caracteres) |
KeyVaultProperties
| Designação | Descrição | Valor |
|---|---|---|
| identityClientId | Atualmente, suportamos apenas SystemAssigned MSI. Precisamos disso quando suportamos UserAssignedIdentities |
cadeia (de caracteres) |
| keyIdentifier | Identificador de chave KeyVault para criptografar os dados | cadeia de caracteres Restrições: Comprimento mínimo = 1 Padrão = [a-zA-Z0-9_] (obrigatório) |
| keyVaultArmId | KeyVault Arm Id que contém a chave de criptografia de dados | cadeia de caracteres Restrições: Comprimento mínimo = 1 Padrão = [a-zA-Z0-9_] (obrigatório) |
ManagedNetworkProvisionStatus
| Designação | Descrição | Valor |
|---|---|---|
| sparkReady [en] | Bool | |
| estado | Status para a rede gerenciada de um espaço de trabalho de aprendizado de máquina. | 'Ativo' 'Inativo' |
ManagedNetworkSettings
ManagedNetworkSettingsOutboundRules
| Designação | Descrição | Valor |
|---|
Identidade de Serviço Gerido (ManagedServiceIdentity)
| Designação | Descrição | Valor |
|---|---|---|
| tipo | Tipo de identidade de serviço gerenciado (onde os tipos SystemAssigned e UserAssigned são permitidos). | 'Nenhuma' 'SystemAssigned' 'SystemAssigned,UserAssigned' 'UserAssigned' (obrigatório) |
| identidades atribuídas pelo utilizador | O conjunto de identidades atribuídas pelo usuário associadas ao recurso. As chaves do dicionário userAssignedIdentities serão ids de recurso ARM no formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Os valores de dicionário podem ser objetos vazios ({}) em solicitações. | UserAssignedIdentities |
NetworkAcls
| Designação | Descrição | Valor |
|---|---|---|
| defaultAction | A ação padrão quando nenhuma regra de ipRules e de virtualNetworkRules corresponder. Isso só é usado depois que a propriedade bypass foi avaliada. | 'Permitir' 'Negar' |
| ipRegras | Regras que regem a acessibilidade de um recurso a partir de um endereço IP específico ou intervalo de IP. | IPRule[] |
Regra de saída
| Designação | Descrição | Valor |
|---|---|---|
| categoria | Categoria de uma rede gerenciada Regra de saída de um espaço de trabalho de aprendizado de máquina. | 'Dependência' 'Recomendado' 'Obrigatório' 'Definido pelo usuário' |
| estado | Tipo de rede gerenciada Regra de saída de um espaço de trabalho de aprendizado de máquina. | 'Ativo' 'Inativo' |
| tipo | Defina como 'FQDN' para o tipo FqdnOutboundRule. Defina como 'PrivateEndpoint' para o tipo PrivateEndpointOutboundRule. Defina como 'ServiceTag' para o tipo ServiceTagOutboundRule. | «FQDN» 'PrivateEndpoint' 'ServiceTag' (obrigatório) |
PrivateEndpointDestination
| Designação | Descrição | Valor |
|---|---|---|
| serviceResourceId | cadeia (de caracteres) | |
| sparkEnabled | Bool | |
| sparkStatus | Tipo de rede gerenciada Regra de saída de um espaço de trabalho de aprendizado de máquina. | 'Ativo' 'Inativo' |
| subresourceTarget | cadeia (de caracteres) |
PrivateEndpointOutboundRule
ServerlessComputeSettings
| Designação | Descrição | Valor |
|---|---|---|
| serverlessComputeCustomSubnet | A ID de recurso de uma sub-rede de rede virtual existente na qual nós de computação sem servidor devem ser implantados | cadeia (de caracteres) |
| serverlessComputeNoPublicIP | O sinalizador para sinalizar se os nós de computação sem servidor implantados na vNet personalizada não teriam endereços IP públicos para um espaço de trabalho com ponto de extremidade privado | Bool |
ServiceManagedResourcesSettings
| Designação | Descrição | Valor |
|---|---|---|
| cosmosDb | CosmosDbSettings |
ServiceTagDestination
| Designação | Descrição | Valor |
|---|---|---|
| ação | O enum de ação para a regra de rede. | 'Permitir' 'Negar' |
| addressPrefixes | Opcional, se fornecida, a propriedade ServiceTag será ignorada. | string[] |
| portRanges | cadeia (de caracteres) | |
| protocolo | cadeia (de caracteres) | |
| serviceTag | cadeia (de caracteres) |
ServiceTagOutboundRule
| Designação | Descrição | Valor |
|---|---|---|
| destino | Destino da etiqueta de serviço para uma regra de saída da etiqueta de serviço para a rede gerenciada de um espaço de trabalho de aprendizado de máquina. | ServiceTagDestination |
| tipo | Tipo de rede gerenciada Regra de saída de um espaço de trabalho de aprendizado de máquina. | 'ServiceTag' (obrigatório) |
SharedPrivateLinkResource
| Designação | Descrição | Valor |
|---|---|---|
| Designação | Nome exclusivo do link privado | cadeia (de caracteres) |
| propriedades | Propriedades de um recurso de link privado compartilhado. | SharedPrivateLinkResourceProperty |
SharedPrivateLinkResourceProperty
| Designação | Descrição | Valor |
|---|---|---|
| ID do grupo | ID de grupo do link privado | cadeia (de caracteres) |
| privateLinkResourceId | O ID do recurso ao qual o link privado se vincula | cadeia (de caracteres) |
| requestMensagem | Solicitar mensagem | cadeia (de caracteres) |
| estado | Estado da ligação do consumidor de serviços ao prestador de serviços | 'Aprovado' 'Desconectado' 'Pendente' 'Rejeitado' 'Tempo limite' |
Referência
| Designação | Descrição | Valor |
|---|---|---|
| capacidade | Se a SKU suportar scaleout/in, o inteiro de capacidade deve ser incluído. Se a expansão/entrada não for possível para o recurso, isso poderá ser omitido. | Int |
| Família | Se o serviço tiver diferentes gerações de hardware, para o mesmo SKU, isso pode ser capturado aqui. | cadeia (de caracteres) |
| Designação | O nome do SKU. Ex - P3. Normalmente, é um código de letra + número | string (obrigatório) |
| tamanho | O tamanho do SKU. Quando o campo de nome é a combinação de camada e algum outro valor, este seria o código autônomo. | cadeia (de caracteres) |
| escalão | Este campo deve ser implementado pelo Provedor de Recursos se o serviço tiver mais de uma camada, mas não é obrigatório em um PUT. | 'Básico' 'Grátis' 'Premium' 'Padrão' |
UserAssignedIdentities
| Designação | Descrição | Valor |
|---|
IdentidadeAtribuídaPeloUtilizador
| Designação | Descrição | Valor |
|---|
WorkspaceHubConfig
| Designação | Descrição | Valor |
|---|---|---|
| adicionalWorkspaceStorageAccounts | string[] | |
| defaultWorkspaceResourceGroup | cadeia (de caracteres) |
WorkspaceProperties
| Designação | Descrição | Valor |
|---|---|---|
| allowPublicAccessWhenBehindVnet | O sinalizador para indicar se o acesso público deve ser permitido quando estiver atrás da VNet. | Bool |
| allowRoleAssignmentOnRG | O sinalizador para indicar se faremos atribuição de função para o MSI do espaço de trabalho no nível do grupo de recursos. | Bool |
| applicationInsights | ID ARM dos insights do aplicativo associados a este espaço de trabalho. | cadeia (de caracteres) |
| associatedWorkspaces | string[] | |
| contentoresRegistos | string[] | |
| containerRegistry | ID ARM do registo de contentor associado a esta área de trabalho. | cadeia (de caracteres) |
| Descrição | A descrição deste espaço de trabalho. | cadeia (de caracteres) |
| discoveryUrl | Url para o serviço de descoberta para identificar pontos de extremidade regionais para serviços de experimentação de aprendizado de máquina | cadeia (de caracteres) |
| enableDataIsolation | Bool | |
| enableServiceSideCMKEncryption | Bool | |
| enableSimplifiedCmk | Sinalizador para saber se a CMK simplificada deve ser habilitada para este espaço de trabalho. | Bool |
| enableSoftwareLista de materiais | Sinalize para saber se SoftwareBillOfMaterials deve ser habilitado para este espaço de trabalho. | Bool |
| cifragem | EncryptionProperty | |
| existentesWorkspaces | string[] | |
| featureStoreSettings | Configurações para espaço de trabalho do tipo de repositório de recursos. | FeatureStoreSettings |
| friendlyNome | O nome amigável para este espaço de trabalho. Este nome em mutável | cadeia (de caracteres) |
| hbiWorkspace | O sinalizador para sinalizar dados HBI no espaço de trabalho e reduzir os dados de diagnóstico coletados pelo serviço | Bool |
| hubResourceId | cadeia (de caracteres) | |
| imageBuildCompute | O nome de computação para compilação de imagem | cadeia (de caracteres) |
| ipAllowlist | A lista de endereços IPv4 que têm permissão para acessar o espaço de trabalho. | string[] |
| keyVault [en] | ID ARM do cofre de chaves associado a este espaço de trabalho. Isso não pode ser alterado depois que o espaço de trabalho for criado | cadeia (de caracteres) |
| keyVaults [en] | string[] | |
| managedNetwork | Configurações de rede gerenciada para um espaço de trabalho de aprendizado de máquina. | ManagedNetworkSettings |
| networkAcls | Um conjunto de regras que regem a acessibilidade de rede do espaço de trabalho. | NetworkAcls |
| primaryUserAssignedIdentity | A ID do recurso de identidade atribuída ao usuário que representa a identidade do espaço de trabalho. | cadeia (de caracteres) |
| provisionNetworkNow | Defina para disparar o provisionamento da VNet gerenciada com as Opções padrão ao criar um espaço de trabalho com a VNet gerenciada habilitada, ou então não faz nada. | Bool |
| acesso à rede pública | Se as solicitações da Rede Pública são permitidas. | 'Desativado' 'Habilitado' |
| serverlessComputeSettings | Configurações para computação sem servidor em um espaço de trabalho | ServerlessComputeSettings |
| serviceManagedResourcesSettings | As configurações de recursos gerenciados pelo serviço. | ServiceManagedResourcesSettings |
| sharedPrivateLinkResources | A lista de recursos de link privado compartilhado neste espaço de trabalho. | SharedPrivateLinkResource [] |
| softDeleteRetentionInDays | O tempo de retenção em dias após o espaço de trabalho é excluído suavemente. | Int |
| conta de armazenamento | ID ARM da conta de armazenamento associada a este espaço de trabalho. Isso não pode ser alterado depois que o espaço de trabalho for criado | cadeia (de caracteres) |
| storageContas | string[] | |
| systemDatastoresAuthMode | O modo de autenticação usado para acessar os armazenamentos de dados do sistema do espaço de trabalho. | 'Chave de acesso' 'Identidade' 'UserDelegationSAS' |
| v1LegacyMode | Ativar v1_legacy_mode pode impedir que você use recursos fornecidos pela API v2. | Bool |
| workspaceHubConfig | Objeto de configuração do WorkspaceHub. | WorkspaceHubConfig |
WorkspaceTags
| Designação | Descrição | Valor |
|---|
Exemplos de uso
Modelos de início rápido do Azure
Os seguintes modelos de início rápido do Azure implantar esse tipo de recurso.
| Modelo | Descrição |
|---|---|
|
Configuração básica do Azure AI Foundry |
Este conjunto de modelos demonstra como configurar o Azure AI Foundry com a configuração básica, ou seja, com o acesso público à Internet habilitado, chaves gerenciadas pela Microsoft para criptografia e configuração de identidade gerenciada pela Microsoft para o recurso de IA. |
|
Configuração básica do Azure AI Foundry |
Este conjunto de modelos demonstra como configurar o Azure AI Foundry com a configuração básica, ou seja, com o acesso público à Internet habilitado, chaves gerenciadas pela Microsoft para criptografia e configuração de identidade gerenciada pela Microsoft para o recurso de IA. |
|
Azure AI Foundry Network Restrito |
Este conjunto de modelos demonstra como configurar o Azure AI Foundry com link privado e saída desabilitados, usando chaves gerenciadas pela Microsoft para criptografia e configuração de identidade gerenciada pela Microsoft para o recurso de IA. |
|
Azure AI Foundry com autenticação de ID do Microsoft Entra |
Este conjunto de modelos demonstra como configurar o Azure AI Foundry com a autenticação Microsoft Entra ID para recursos dependentes, como os Serviços de IA do Azure e o Armazenamento do Azure. |
|
de configuração básica do Azure AI Studio |
Este conjunto de modelos demonstra como configurar o Azure AI Studio com a configuração básica, ou seja, com o acesso público à Internet habilitado, chaves gerenciadas pela Microsoft para criptografia e configuração de identidade gerenciada pela Microsoft para o recurso de IA. |
|
Rede Restrita do Azure AI Studio |
Este conjunto de modelos demonstra como configurar o Azure AI Studio com link privado e saída desabilitados, usando chaves gerenciadas pela Microsoft para criptografia e configuração de identidade gerenciada pela Microsoft para o recurso de IA. |
|
configuração segura completa do Azure Machine Learning |
Este conjunto de modelos Bicep demonstra como configurar o Azure Machine Learning de ponta a ponta em uma configuração segura. Esta implementação de referência inclui o espaço de trabalho, um cluster de computação, instância de computação e cluster AKS privado anexado. |
|
Configuração segura de ponta a ponta do Aprendizado de Máquina do Azure |
Este conjunto de modelos Bicep demonstra como configurar o Azure Machine Learning de ponta a ponta em uma configuração segura. Esta implementação de referência inclui o espaço de trabalho, um cluster de computação, instância de computação e cluster AKS privado anexado. |
|
do Espaço de Trabalho do Azure Machine Learning |
Este modelo cria um novo Espaço de Trabalho do Azure Machine Learning, juntamente com uma Conta de Armazenamento encriptada, KeyVault e Registo do Applications Insights |
|
Chaves de API de configuração básica do agente |
Este conjunto de modelos demonstra como configurar o Azure AI Agent Service com a configuração básica usando a autenticação de chaves de API para a conexão AI Service/AOAI. Os agentes usam recursos de pesquisa e armazenamento multilocatários totalmente gerenciados pela Microsoft. Você não terá visibilidade ou controle sobre esses recursos subjacentes do Azure. |
|
de identidade de configuração básica do agente |
Este conjunto de modelos demonstra como configurar o Azure AI Agent Service com a configuração básica usando a autenticação de identidade gerenciada para a conexão AI Service/AOAI. Os agentes usam recursos de pesquisa e armazenamento multilocatários totalmente gerenciados pela Microsoft. Você não terá visibilidade ou controle sobre esses recursos subjacentes do Azure. |
|
Criar espaço de trabalho AML com vários Datasets & Datastores |
Este modelo cria o espaço de trabalho do Azure Machine Learning com vários conjuntos de dados & armazenamentos de dados. |
|
Crie um destino de computação AKS com um endereço IP privado |
Este modelo cria um destino de computação AKS em determinado espaço de trabalho do serviço Azure Machine Learning com um endereço IP privado. |
|
Criar um espaço de trabalho de serviço do Azure Machine Learning |
Este modelo de implantação especifica um espaço de trabalho do Azure Machine Learning e seus recursos associados, incluindo o Azure Key Vault, o Armazenamento do Azure, o Azure Application Insights e o Azure Container Registry. Esta configuração descreve o conjunto mínimo de recursos necessários para começar a utilizar o Azure Machine Learning. |
|
Criar um espaço de trabalho de serviço do Azure Machine Learning (CMK) |
Este modelo de implantação especifica como criar um espaço de trabalho do Azure Machine Learning com criptografia do lado do serviço usando suas chaves de criptografia. |
|
Criar um espaço de trabalho de serviço do Azure Machine Learning (CMK) |
Este modelo de implantação especifica um espaço de trabalho do Azure Machine Learning e seus recursos associados, incluindo o Azure Key Vault, o Armazenamento do Azure, o Azure Application Insights e o Azure Container Registry. O exemplo mostra como configurar o Azure Machine Learning para criptografia com uma chave de criptografia gerenciada pelo cliente. |
|
Criar um espaço de trabalho de serviço do Azure Machine Learning (legado) |
Este modelo de implantação especifica um espaço de trabalho do Azure Machine Learning e seus recursos associados, incluindo o Azure Key Vault, o Armazenamento do Azure, o Azure Application Insights e o Azure Container Registry. Essa configuração descreve o conjunto de recursos necessários para começar a usar o Aprendizado de Máquina do Azure em uma configuração isolada de rede. |
|
Criar um espaço de trabalho de serviço do Azure Machine Learning (vnet) |
Este modelo de implantação especifica um espaço de trabalho do Azure Machine Learning e seus recursos associados, incluindo o Azure Key Vault, o Armazenamento do Azure, o Azure Application Insights e o Azure Container Registry. Essa configuração descreve o conjunto de recursos necessários para começar a usar o Aprendizado de Máquina do Azure em uma configuração isolada de rede. |
|
Implante o Secure AI Foundry com uma rede virtual gerenciada |
Este modelo cria um ambiente seguro do Azure AI Foundry com restrições robustas de segurança de rede e identidade. |
|
Agente Protegido em Rede com de Identidade Gerenciada pelo Usuário |
Este conjunto de modelos demonstra como configurar o Azure AI Agent Service com isolamento de rede virtual usando a autenticação de Identidade Gerenciada pelo Usuário para a conexão AI Service/AOAI e links de rede privada para conectar o agente aos seus dados seguros. |
|
Configuração do agente padrão |
Este conjunto de modelos demonstra como configurar o Azure AI Agent Service com a configuração padrão, ou seja, com a autenticação de identidade gerenciada para conexões de projeto/hub e acesso público à Internet habilitado. Os agentes usam recursos de pesquisa e armazenamento de propriedade do cliente e de locatário único. Com essa configuração, você tem total controle e visibilidade sobre esses recursos, mas incorrerá em custos com base no seu uso. |
Definição de recursos Terraform (provedor AzAPI)
O tipo de recurso de espaços de trabalho pode ser implantado com operações que visam:
Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.
Formato do recurso
Para criar um recurso Microsoft.MachineLearningServices/workspaces, adicione o seguinte Terraform ao seu modelo.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.MachineLearningServices/workspaces@2024-10-01-preview"
name = "string"
parent_id = "string"
identity {
type = "string"
identity_ids = [
"string"
]
}
location = "string"
tags = {
{customized property} = "string"
}
body = {
kind = "string"
properties = {
allowPublicAccessWhenBehindVnet = bool
allowRoleAssignmentOnRG = bool
applicationInsights = "string"
associatedWorkspaces = [
"string"
]
containerRegistries = [
"string"
]
containerRegistry = "string"
description = "string"
discoveryUrl = "string"
enableDataIsolation = bool
enableServiceSideCMKEncryption = bool
enableSimplifiedCmk = bool
enableSoftwareBillOfMaterials = bool
encryption = {
cosmosDbResourceId = "string"
identity = {
userAssignedIdentity = "string"
}
keyVaultProperties = {
identityClientId = "string"
keyIdentifier = "string"
keyVaultArmId = "string"
}
searchAccountResourceId = "string"
status = "string"
storageAccountResourceId = "string"
}
existingWorkspaces = [
"string"
]
featureStoreSettings = {
computeRuntime = {
sparkRuntimeVersion = "string"
}
offlineStoreConnectionName = "string"
onlineStoreConnectionName = "string"
}
friendlyName = "string"
hbiWorkspace = bool
hubResourceId = "string"
imageBuildCompute = "string"
ipAllowlist = [
"string"
]
keyVault = "string"
keyVaults = [
"string"
]
managedNetwork = {
firewallSku = "string"
isolationMode = "string"
outboundRules = {
{customized property} = {
category = "string"
status = "string"
type = "string"
// For remaining properties, see OutboundRule objects
}
}
status = {
sparkReady = bool
status = "string"
}
}
networkAcls = {
defaultAction = "string"
ipRules = [
{
value = "string"
}
]
}
primaryUserAssignedIdentity = "string"
provisionNetworkNow = bool
publicNetworkAccess = "string"
serverlessComputeSettings = {
serverlessComputeCustomSubnet = "string"
serverlessComputeNoPublicIP = bool
}
serviceManagedResourcesSettings = {
cosmosDb = {
collectionsThroughput = int
}
}
sharedPrivateLinkResources = [
{
name = "string"
properties = {
groupId = "string"
privateLinkResourceId = "string"
requestMessage = "string"
status = "string"
}
}
]
softDeleteRetentionInDays = int
storageAccount = "string"
storageAccounts = [
"string"
]
systemDatastoresAuthMode = "string"
v1LegacyMode = bool
workspaceHubConfig = {
additionalWorkspaceStorageAccounts = [
"string"
]
defaultWorkspaceResourceGroup = "string"
}
}
sku = {
capacity = int
family = "string"
name = "string"
size = "string"
tier = "string"
}
}
}
Objetos OutboundRule
Defina a propriedade type para especificar o tipo de objeto.
Para FQDN , use:
{
destination = "string"
type = "FQDN"
}
Para PrivateEndpoint, use:
{
destination = {
serviceResourceId = "string"
sparkEnabled = bool
sparkStatus = "string"
subresourceTarget = "string"
}
fqdns = [
"string"
]
type = "PrivateEndpoint"
}
Para ServiceTag, use:
{
destination = {
action = "string"
addressPrefixes = [
"string"
]
portRanges = "string"
protocol = "string"
serviceTag = "string"
}
type = "ServiceTag"
}
Valores de propriedade
Microsoft.MachineLearningServices/espaços de trabalho
| Designação | Descrição | Valor |
|---|---|---|
| identidade | Identidade do serviço gerenciado (identidades atribuídas pelo sistema e/ou pelo usuário) | ManagedServiceIdentity |
| tipo | cadeia (de caracteres) | |
| localização | cadeia (de caracteres) | |
| Designação | O nome do recurso | cadeia de caracteres Restrições: Padrão = ^[a-zA-Z0-9][a-zA-Z0-9_-]{2,32}$ (obrigatório) |
| parent_id | A ID do recurso ao qual aplicar esse recurso de extensão. | string (obrigatório) |
| propriedades | Atributos adicionais da entidade. | WorkspaceProperties (obrigatório) |
| SKU | Opcional. Este campo deve ser implementado pelo RP porque a AML está suportando mais de uma camada | Referência |
| Etiquetas | Tags de recursos | Dicionário de nomes e valores de tags. |
| tipo | O tipo de recurso | "Microsoft.MachineLearningServices/workspaces@2024-10-01-preview" |
ComputeRuntimeDto
| Designação | Descrição | Valor |
|---|---|---|
| sparkRuntimeVersion | cadeia (de caracteres) |
CosmosDbSettings
| Designação | Descrição | Valor |
|---|---|---|
| collectionsThroughput | Int |
EncryptionProperty
FeatureStoreSettings
| Designação | Descrição | Valor |
|---|---|---|
| computeRuntime | ComputeRuntimeDto | |
| offlineStoreConnectionName | cadeia (de caracteres) | |
| onlineStoreConnectionName | cadeia (de caracteres) |
FqdnOutboundRule
| Designação | Descrição | Valor |
|---|---|---|
| destino | cadeia (de caracteres) | |
| tipo | Tipo de rede gerenciada Regra de saída de um espaço de trabalho de aprendizado de máquina. | «FQDN» (obrigatório) |
IdentidadeForCmk
| Designação | Descrição | Valor |
|---|---|---|
| identidade atribuída pelo usuário | UserAssignedIdentity a ser usado para buscar a chave de criptografia do keyVault | cadeia (de caracteres) |
IPRule
| Designação | Descrição | Valor |
|---|---|---|
| valor | Um intervalo de endereços IPv4 na notação CIDR, como '124.56.78.91' (endereço IP simples) ou '124.56.78.0/24' (todos os endereços que começam com 124.56.78). O valor pode ser 'Permitir' ou 'Negar'. | cadeia (de caracteres) |
KeyVaultProperties
| Designação | Descrição | Valor |
|---|---|---|
| identityClientId | Atualmente, suportamos apenas SystemAssigned MSI. Precisamos disso quando suportamos UserAssignedIdentities |
cadeia (de caracteres) |
| keyIdentifier | Identificador de chave KeyVault para criptografar os dados | cadeia de caracteres Restrições: Comprimento mínimo = 1 Padrão = [a-zA-Z0-9_] (obrigatório) |
| keyVaultArmId | KeyVault Arm Id que contém a chave de criptografia de dados | cadeia de caracteres Restrições: Comprimento mínimo = 1 Padrão = [a-zA-Z0-9_] (obrigatório) |
ManagedNetworkProvisionStatus
| Designação | Descrição | Valor |
|---|---|---|
| sparkReady [en] | Bool | |
| estado | Status para a rede gerenciada de um espaço de trabalho de aprendizado de máquina. | 'Ativo' 'Inativo' |
ManagedNetworkSettings
ManagedNetworkSettingsOutboundRules
| Designação | Descrição | Valor |
|---|
Identidade de Serviço Gerido (ManagedServiceIdentity)
| Designação | Descrição | Valor |
|---|---|---|
| tipo | Tipo de identidade de serviço gerenciado (onde os tipos SystemAssigned e UserAssigned são permitidos). | 'Nenhuma' 'SystemAssigned' 'SystemAssigned,UserAssigned' 'UserAssigned' (obrigatório) |
| identidades atribuídas pelo utilizador | O conjunto de identidades atribuídas pelo usuário associadas ao recurso. As chaves do dicionário userAssignedIdentities serão ids de recurso ARM no formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Os valores de dicionário podem ser objetos vazios ({}) em solicitações. | UserAssignedIdentities |
NetworkAcls
| Designação | Descrição | Valor |
|---|---|---|
| defaultAction | A ação padrão quando nenhuma regra de ipRules e de virtualNetworkRules corresponder. Isso só é usado depois que a propriedade bypass foi avaliada. | 'Permitir' 'Negar' |
| ipRegras | Regras que regem a acessibilidade de um recurso a partir de um endereço IP específico ou intervalo de IP. | IPRule[] |
Regra de saída
| Designação | Descrição | Valor |
|---|---|---|
| categoria | Categoria de uma rede gerenciada Regra de saída de um espaço de trabalho de aprendizado de máquina. | 'Dependência' 'Recomendado' 'Obrigatório' 'Definido pelo usuário' |
| estado | Tipo de rede gerenciada Regra de saída de um espaço de trabalho de aprendizado de máquina. | 'Ativo' 'Inativo' |
| tipo | Defina como 'FQDN' para o tipo FqdnOutboundRule. Defina como 'PrivateEndpoint' para o tipo PrivateEndpointOutboundRule. Defina como 'ServiceTag' para o tipo ServiceTagOutboundRule. | «FQDN» 'PrivateEndpoint' 'ServiceTag' (obrigatório) |
PrivateEndpointDestination
| Designação | Descrição | Valor |
|---|---|---|
| serviceResourceId | cadeia (de caracteres) | |
| sparkEnabled | Bool | |
| sparkStatus | Tipo de rede gerenciada Regra de saída de um espaço de trabalho de aprendizado de máquina. | 'Ativo' 'Inativo' |
| subresourceTarget | cadeia (de caracteres) |
PrivateEndpointOutboundRule
ServerlessComputeSettings
| Designação | Descrição | Valor |
|---|---|---|
| serverlessComputeCustomSubnet | A ID de recurso de uma sub-rede de rede virtual existente na qual nós de computação sem servidor devem ser implantados | cadeia (de caracteres) |
| serverlessComputeNoPublicIP | O sinalizador para sinalizar se os nós de computação sem servidor implantados na vNet personalizada não teriam endereços IP públicos para um espaço de trabalho com ponto de extremidade privado | Bool |
ServiceManagedResourcesSettings
| Designação | Descrição | Valor |
|---|---|---|
| cosmosDb | CosmosDbSettings |
ServiceTagDestination
| Designação | Descrição | Valor |
|---|---|---|
| ação | O enum de ação para a regra de rede. | 'Permitir' 'Negar' |
| addressPrefixes | Opcional, se fornecida, a propriedade ServiceTag será ignorada. | string[] |
| portRanges | cadeia (de caracteres) | |
| protocolo | cadeia (de caracteres) | |
| serviceTag | cadeia (de caracteres) |
ServiceTagOutboundRule
| Designação | Descrição | Valor |
|---|---|---|
| destino | Destino da etiqueta de serviço para uma regra de saída da etiqueta de serviço para a rede gerenciada de um espaço de trabalho de aprendizado de máquina. | ServiceTagDestination |
| tipo | Tipo de rede gerenciada Regra de saída de um espaço de trabalho de aprendizado de máquina. | 'ServiceTag' (obrigatório) |
SharedPrivateLinkResource
| Designação | Descrição | Valor |
|---|---|---|
| Designação | Nome exclusivo do link privado | cadeia (de caracteres) |
| propriedades | Propriedades de um recurso de link privado compartilhado. | SharedPrivateLinkResourceProperty |
SharedPrivateLinkResourceProperty
| Designação | Descrição | Valor |
|---|---|---|
| ID do grupo | ID de grupo do link privado | cadeia (de caracteres) |
| privateLinkResourceId | O ID do recurso ao qual o link privado se vincula | cadeia (de caracteres) |
| requestMensagem | Solicitar mensagem | cadeia (de caracteres) |
| estado | Estado da ligação do consumidor de serviços ao prestador de serviços | 'Aprovado' 'Desconectado' 'Pendente' 'Rejeitado' 'Tempo limite' |
Referência
| Designação | Descrição | Valor |
|---|---|---|
| capacidade | Se a SKU suportar scaleout/in, o inteiro de capacidade deve ser incluído. Se a expansão/entrada não for possível para o recurso, isso poderá ser omitido. | Int |
| Família | Se o serviço tiver diferentes gerações de hardware, para o mesmo SKU, isso pode ser capturado aqui. | cadeia (de caracteres) |
| Designação | O nome do SKU. Ex - P3. Normalmente, é um código de letra + número | string (obrigatório) |
| tamanho | O tamanho do SKU. Quando o campo de nome é a combinação de camada e algum outro valor, este seria o código autônomo. | cadeia (de caracteres) |
| escalão | Este campo deve ser implementado pelo Provedor de Recursos se o serviço tiver mais de uma camada, mas não é obrigatório em um PUT. | 'Básico' 'Grátis' 'Premium' 'Padrão' |
UserAssignedIdentities
| Designação | Descrição | Valor |
|---|
IdentidadeAtribuídaPeloUtilizador
| Designação | Descrição | Valor |
|---|
WorkspaceHubConfig
| Designação | Descrição | Valor |
|---|---|---|
| adicionalWorkspaceStorageAccounts | string[] | |
| defaultWorkspaceResourceGroup | cadeia (de caracteres) |
WorkspaceProperties
| Designação | Descrição | Valor |
|---|---|---|
| allowPublicAccessWhenBehindVnet | O sinalizador para indicar se o acesso público deve ser permitido quando estiver atrás da VNet. | Bool |
| allowRoleAssignmentOnRG | O sinalizador para indicar se faremos atribuição de função para o MSI do espaço de trabalho no nível do grupo de recursos. | Bool |
| applicationInsights | ID ARM dos insights do aplicativo associados a este espaço de trabalho. | cadeia (de caracteres) |
| associatedWorkspaces | string[] | |
| contentoresRegistos | string[] | |
| containerRegistry | ID ARM do registo de contentor associado a esta área de trabalho. | cadeia (de caracteres) |
| Descrição | A descrição deste espaço de trabalho. | cadeia (de caracteres) |
| discoveryUrl | Url para o serviço de descoberta para identificar pontos de extremidade regionais para serviços de experimentação de aprendizado de máquina | cadeia (de caracteres) |
| enableDataIsolation | Bool | |
| enableServiceSideCMKEncryption | Bool | |
| enableSimplifiedCmk | Sinalizador para saber se a CMK simplificada deve ser habilitada para este espaço de trabalho. | Bool |
| enableSoftwareLista de materiais | Sinalize para saber se SoftwareBillOfMaterials deve ser habilitado para este espaço de trabalho. | Bool |
| cifragem | EncryptionProperty | |
| existentesWorkspaces | string[] | |
| featureStoreSettings | Configurações para espaço de trabalho do tipo de repositório de recursos. | FeatureStoreSettings |
| friendlyNome | O nome amigável para este espaço de trabalho. Este nome em mutável | cadeia (de caracteres) |
| hbiWorkspace | O sinalizador para sinalizar dados HBI no espaço de trabalho e reduzir os dados de diagnóstico coletados pelo serviço | Bool |
| hubResourceId | cadeia (de caracteres) | |
| imageBuildCompute | O nome de computação para compilação de imagem | cadeia (de caracteres) |
| ipAllowlist | A lista de endereços IPv4 que têm permissão para acessar o espaço de trabalho. | string[] |
| keyVault [en] | ID ARM do cofre de chaves associado a este espaço de trabalho. Isso não pode ser alterado depois que o espaço de trabalho for criado | cadeia (de caracteres) |
| keyVaults [en] | string[] | |
| managedNetwork | Configurações de rede gerenciada para um espaço de trabalho de aprendizado de máquina. | ManagedNetworkSettings |
| networkAcls | Um conjunto de regras que regem a acessibilidade de rede do espaço de trabalho. | NetworkAcls |
| primaryUserAssignedIdentity | A ID do recurso de identidade atribuída ao usuário que representa a identidade do espaço de trabalho. | cadeia (de caracteres) |
| provisionNetworkNow | Defina para disparar o provisionamento da VNet gerenciada com as Opções padrão ao criar um espaço de trabalho com a VNet gerenciada habilitada, ou então não faz nada. | Bool |
| acesso à rede pública | Se as solicitações da Rede Pública são permitidas. | 'Desativado' 'Habilitado' |
| serverlessComputeSettings | Configurações para computação sem servidor em um espaço de trabalho | ServerlessComputeSettings |
| serviceManagedResourcesSettings | As configurações de recursos gerenciados pelo serviço. | ServiceManagedResourcesSettings |
| sharedPrivateLinkResources | A lista de recursos de link privado compartilhado neste espaço de trabalho. | SharedPrivateLinkResource [] |
| softDeleteRetentionInDays | O tempo de retenção em dias após o espaço de trabalho é excluído suavemente. | Int |
| conta de armazenamento | ID ARM da conta de armazenamento associada a este espaço de trabalho. Isso não pode ser alterado depois que o espaço de trabalho for criado | cadeia (de caracteres) |
| storageContas | string[] | |
| systemDatastoresAuthMode | O modo de autenticação usado para acessar os armazenamentos de dados do sistema do espaço de trabalho. | 'Chave de acesso' 'Identidade' 'UserDelegationSAS' |
| v1LegacyMode | Ativar v1_legacy_mode pode impedir que você use recursos fornecidos pela API v2. | Bool |
| workspaceHubConfig | Objeto de configuração do WorkspaceHub. | WorkspaceHubConfig |
WorkspaceTags
| Designação | Descrição | Valor |
|---|
Exemplos de uso
Amostras Terraform
Um exemplo básico de implantação do Azure Machine Learning Workspace.
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"
properties = {
accessTier = "Hot"
allowBlobPublicAccess = true
allowCrossTenantReplication = true
allowSharedKeyAccess = true
defaultToOAuthAuthentication = false
encryption = {
keySource = "Microsoft.Storage"
services = {
queue = {
keyType = "Service"
}
table = {
keyType = "Service"
}
}
}
isHnsEnabled = false
isNfsV3Enabled = false
isSftpEnabled = false
minimumTlsVersion = "TLS1_2"
networkAcls = {
defaultAction = "Allow"
}
publicNetworkAccess = "Enabled"
supportsHttpsTrafficOnly = true
}
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 = [
{
objectId = "45a2d1ea-488a-44b0-bb2e-3cd8e485ebef"
permissions = {
certificates = [
"all",
]
keys = [
"all",
]
secrets = [
"all",
]
storage = []
}
tenantId = data.azurerm_client_config.current.tenant_id
}
]
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 = ["*"]
}
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 = "Disabled"
storageAccount = azapi_resource.storageAccount.id
v1LegacyMode = false
}
sku = {
name = "Basic"
tier = "Basic"
}
}
ignore_casing = true
schema_validation_enabled = false
response_export_values = ["*"]
}
Módulos verificados do Azure
Os seguintes de Módulos Verificados do Azure podem ser usados para implantar esse tipo de recurso.