Partager via


Espaces de travail Microsoft.MachineLearningServices/onlineEndpoints/deployments 2024-07-01-preview

Définition de ressource Bicep

Le type de ressource espaces de travail/onlineEndpoints/déploiements peut être déployé avec des opérations qui ciblent :

Pour obtenir la liste des propriétés modifiées dans chaque version de l’API, consultez journal des modifications.

Format de ressource

Pour créer une ressource Microsoft.MachineLearningServices/workspaces/onlineEndpoints/deployments, ajoutez le bicep suivant à votre modèle.

resource symbolicname 'Microsoft.MachineLearningServices/workspaces/onlineEndpoints/deployments@2024-07-01-preview' = {
  parent: resourceSymbolicName
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {}
    }
  }
  kind: 'string'
  location: 'string'
  name: 'string'
  properties: {
    appInsightsEnabled: bool
    codeConfiguration: {
      codeId: 'string'
      scoringScript: 'string'
    }
    dataCollector: {
      collections: {
        {customized property}: {
          clientId: 'string'
          dataCollectionMode: 'string'
          dataId: 'string'
          samplingRate: int
        }
      }
      requestLogging: {
        captureHeaders: [
          'string'
        ]
      }
      rollingRate: 'string'
    }
    description: 'string'
    egressPublicNetworkAccess: 'string'
    environmentId: 'string'
    environmentVariables: {
      {customized property}: 'string'
    }
    instanceType: 'string'
    livenessProbe: {
      failureThreshold: int
      initialDelay: 'string'
      period: 'string'
      successThreshold: int
      timeout: 'string'
    }
    model: 'string'
    modelMountPath: 'string'
    properties: {
      {customized property}: 'string'
    }
    readinessProbe: {
      failureThreshold: int
      initialDelay: 'string'
      period: 'string'
      successThreshold: int
      timeout: 'string'
    }
    requestSettings: {
      maxConcurrentRequestsPerInstance: int
      maxQueueWait: 'string'
      requestTimeout: 'string'
    }
    scaleSettings: {
      scaleType: 'string'
      // For remaining properties, see OnlineScaleSettings objects
    }
    endpointComputeType: 'string'
    // For remaining properties, see OnlineDeploymentProperties objects
  }
  sku: {
    capacity: int
    family: 'string'
    name: 'string'
    size: 'string'
    tier: 'string'
  }
  tags: {
    {customized property}: 'string'
  }
}

Objets OnlineDeploymentProperties

Définissez la propriété endpointComputeType pour spécifier le type d’objet.

Pour Kubernetes, utilisez :

{
  containerResourceRequirements: {
    containerResourceLimits: {
      cpu: 'string'
      gpu: 'string'
      memory: 'string'
    }
    containerResourceRequests: {
      cpu: 'string'
      gpu: 'string'
      memory: 'string'
    }
  }
  endpointComputeType: 'Kubernetes'
}

Pour managé, utilisez :

{
  endpointComputeType: 'Managed'
}

Objets OnlineScaleSettings

Définissez la propriété scaleType pour spécifier le type d’objet.

Pour par défaut, utilisez :

{
  scaleType: 'Default'
}

Pour TargetUtilization, utilisez :

{
  maxInstances: int
  minInstances: int
  pollingInterval: 'string'
  scaleType: 'TargetUtilization'
  targetUtilizationPercentage: int
}

Valeurs de propriété

CodeConfiguration

Nom Description Valeur
codeId ID de ressource ARM de la ressource de code. corde
scoringScript [Obligatoire] Script à exécuter au démarrage. Eg. « score.py » corde

Contraintes:
Longueur minimale = 1
Modèle = [a-zA-Z0-9_] (obligatoire)

Collection

Nom Description Valeur
clientId ID client msi utilisé pour collecter la journalisation dans le stockage d’objets blob. S’il s’agit de null, le back-end sélectionne une identité de point de terminaison inscrite pour l’authentification. corde
dataCollectionMode Activez ou désactivez la collecte de données. 'Désactivé'
'Activé'
dataId ID de ressource arm de données. Le côté client garantit que la ressource de données pointe vers le stockage d’objets blob et que le back-end collecte les données vers le stockage d’objets blob. corde
samplingRate Taux d’échantillonnage pour la collecte. Le taux d’échantillonnage 1,0 signifie que nous collectons 100% de données par défaut. Int

ContainerResourceRequirements

Nom Description Valeur
containerResourceLimits Informations sur la limite des ressources de conteneur : ContainerResourceSettings
containerResourceRequests Informations sur la demande de ressource de conteneur : ContainerResourceSettings

ContainerResourceSettings

Nom Description Valeur
CPU Nombre de demandes/limites de processeurs virtuels pour le conteneur. Plus d’informations :
https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
corde
GPU Nombre de cartes GPU Nvidia demande/limite pour le conteneur. Plus d’informations :
https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
corde
mémoire Demande/limite de taille de mémoire pour le conteneur. Plus d’informations :
https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
corde

DataCollector

Nom Description Valeur
Collections [Obligatoire] Configuration du regroupement. Chaque collection possède sa propre configuration pour collecter des données de modèle et le nom de la collection peut être une chaîne arbitraire.
Le collecteur de données de modèle peut être utilisé pour la journalisation des charges utiles ou la journalisation personnalisée ou les deux. La demande et la réponse de collecte sont réservées à la journalisation des charges utiles, d’autres sont destinées à la journalisation personnalisée.
DataCollectorCollections (obligatoire)
requestLogging La configuration de journalisation des demandes pour mdc inclut des paramètres de journalisation avancés pour toutes les collections. C’est facultatif. RequestLogging
rollingRate Lorsque les données de modèle sont collectées dans le stockage d’objets blob, nous devons déployer les données sur un chemin différent pour éviter de les journaliser dans un seul fichier d’objets blob.
Si le taux de roulement est horaire, toutes les données sont collectées dans le chemin d’accès de l’objet blob /aaaa/MM/dd/HH/.
Si c’est le jour, toutes les données sont collectées dans le chemin d’accès d’objet blob /aaaa/MM/jj/.
L’autre avantage du chemin propagé est que l’interface utilisateur de surveillance du modèle est en mesure de sélectionner un intervalle de temps de données très rapidement.
'Day'
'Heure'
'Minute'
'Month'
'Year'

DataCollectorCollections

Nom Description Valeur

DefaultScaleSettings

Nom Description Valeur
scaleType [Obligatoire] Type d’algorithme de mise à l’échelle du déploiement 'Default' (obligatoire)

EndpointDeploymentPropertiesBaseEnvironmentVariables

Nom Description Valeur

EndpointDeploymentPropertiesBasePropertiesBaseProperties

Nom Description Valeur

KubernetesOnlineDeployment

Nom Description Valeur
containerResourceRequirements Configuration requise pour le conteneur (processeur et mémoire). ContainerResourceRequirements
endpointComputeType [Obligatoire] Type de calcul du point de terminaison. 'Kubernetes' (obligatoire)

ManagedOnlineDeployment

Nom Description Valeur
endpointComputeType [Obligatoire] Type de calcul du point de terminaison. 'Managed' (obligatoire)

ManagedServiceIdentity

Nom Description Valeur
type Type d’identité de service managé (où les types SystemAssigned et UserAssigned sont autorisés). 'None'
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned' (obligatoire)
userAssignedIdentities Ensemble d’identités affectées par l’utilisateur associées à la ressource. Les clés de dictionnaire userAssignedIdentities seront des ID de ressource ARM sous la forme : « /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Les valeurs de dictionnaire peuvent être des objets vides ({}) dans les requêtes. UserAssignedIdentities

Microsoft.MachineLearningServices/workspaces/onlineEndpoints/deployments

Nom Description Valeur
identité Identité de service managée (identités affectées par le système et/ou identités affectées par l’utilisateur) ManagedServiceIdentity
gentil Métadonnées utilisées par le portail/l’outil/etc pour afficher différentes expériences d’expérience utilisateur pour les ressources du même type. corde
emplacement Emplacement géographique où réside la ressource chaîne (obligatoire)
nom Nom de la ressource corde

Contraintes:
Modèle = ^[a-zA-Z0-9][a-zA-Z0-9\-_]{0,254}$ (obligatoire)
parent Dans Bicep, vous pouvez spécifier la ressource parente d’une ressource enfant. Vous devez uniquement ajouter cette propriété lorsque la ressource enfant est déclarée en dehors de la ressource parente.

Pour plus d’informations, consultez ressource enfant en dehors de la ressource parente.
Nom symbolique de la ressource de type : espaces de travail /onlineEndpoints
Propriétés [Obligatoire] Attributs supplémentaires de l’entité. OnlineDeploymentProperties (obligatoire)
Sku Détails de la référence SKU requis pour le contrat ARM pour la mise à l’échelle automatique. référence SKU
étiquettes Balises de ressource Dictionnaire de noms et de valeurs d’étiquettes. Consultez les balises dans les modèles

OnlineDeploymentProperties

Nom Description Valeur
appInsightsEnabled Si la valeur est true, active la journalisation Application Insights. Bool
codeConfiguration Configuration du code pour le déploiement du point de terminaison. codeConfiguration
dataCollector La configuration mdc, nous désactivons mdc lorsqu’elle a la valeur Null. DataCollector
description Description du déploiement du point de terminaison. corde
egressPublicNetworkAccess Si cette option est activée, autorisez l’accès au réseau public de sortie. Si cette option est désactivée, cela crée une sortie sécurisée. Valeur par défaut : activée. 'Désactivé'
'Activé'
endpointComputeType Défini sur « Kubernetes » pour le type KubernetesOnlineDeployment. Défini sur « Managed » pour le type ManagedOnlineDeployment. 'Kubernetes'
'Managed' (obligatoire)
environmentId ID de ressource ARM ou AssetId de la spécification d’environnement pour le déploiement du point de terminaison. corde
environmentVariables Configuration des variables d’environnement pour le déploiement. EndpointDeploymentPropertiesBaseEnvironmentVariables
instanceType Type d’instance de calcul. corde
livenessProbe La sonde Liveness surveille régulièrement l’intégrité du conteneur. probeSettings
modèle Chemin d’ACCÈS DE l’URI au modèle. corde
modelMountPath Chemin d’accès pour monter le modèle dans un conteneur personnalisé. corde
Propriétés Dictionnaire de propriétés. Les propriétés peuvent être ajoutées, mais pas supprimées ou modifiées. EndpointDeploymentPropertiesBaseProperties
readinessProbe La sonde Readiness valide si le conteneur est prêt à servir le trafic. Les propriétés et les valeurs par défaut sont identiques à celles de la sonde liveness. probeSettings
requestSettings Demander des paramètres pour le déploiement. OnlineRequestSettings
scaleSettings Mettre à l’échelle les paramètres du déploiement.
S’il est null ou non fourni,
il est défini par défaut sur TargetUtilizationScaleSettings pour KubernetesOnlineDeployment
et à DefaultScaleSettings pour ManagedOnlineDeployment.
OnlineScaleSettings

OnlineRequestSettings

Nom Description Valeur
maxConcurrentRequestsPerInstance Nombre maximal de requêtes simultanées par nœud autorisé par déploiement. La valeur par défaut est 1. Int
maxQueueWait (Déconseillé pour les points de terminaison Managed Online) Durée maximale pendant laquelle une demande reste dans la file d’attente au format ISO 8601.
La valeur par défaut est 500 ms.
(À présent, augmentez request_timeout_ms pour prendre en compte les retards de mise en réseau/file d’attente)
corde
requestTimeout Délai d’expiration du score au format ISO 8601.
La valeur par défaut est 5 000 ms.
corde

OnlineScaleSettings

Nom Description Valeur
scaleType Défini sur « Default » pour le type DefaultScaleSettings. Défini sur « TargetUtilization » pour le type TargetUtilizationScaleSettings. 'Default'
'TargetUtilization' (obligatoire)

ProbeSettings

Nom Description Valeur
failureThreshold Nombre d’échecs à autoriser avant de retourner un état défectueux. Int
initialDelay Délai avant la première sonde au format ISO 8601. corde
période Durée entre les sondes au format ISO 8601. corde
successThreshold Nombre de sondes réussies avant de retourner un état sain. Int
Timeout Délai d’expiration de la sonde au format ISO 8601. corde

RequestLogging

Nom Description Valeur
captureHeaders Pour la journalisation des charges utiles, nous collectons uniquement la charge utile par défaut. Si les clients souhaitent également collecter les en-têtes spécifiés, ils peuvent les définir dans captureHeaders afin que le back-end collecte ces en-têtes ainsi que la charge utile. string[]

Sku

Nom Description Valeur
capacité Si la référence SKU prend en charge le scale-out/in, l’entier de capacité doit être inclus. Si le scale-out/in n’est pas possible pour la ressource, cela peut être omis. Int
Famille Si le service a différentes générations de matériel, pour la même référence SKU, vous pouvez le capturer ici. corde
nom Nom de la référence SKU. Ex - P3. Il s’agit généralement d’une lettre+code numérique chaîne (obligatoire)
taille Taille de la référence SKU. Lorsque le champ de nom est la combinaison de niveau et d’une autre valeur, il s’agit du code autonome. corde
niveau Ce champ doit être implémenté par le fournisseur de ressources si le service a plusieurs niveaux, mais n’est pas obligatoire sur un PUT. 'De base'
'Free'
'Premium'
'Standard'

TargetUtilizationScaleSettings

Nom Description Valeur
maxInstances Nombre maximal d’instances auxquelles le déploiement peut être mis à l’échelle. Le quota sera réservé à max_instances. Int
minInstances Nombre minimal d’instances à toujours présenter. Int
pollingInterval Intervalle d’interrogation au format ISO 8691. Prend uniquement en charge la durée avec une précision aussi faible que secondes. corde
scaleType [Obligatoire] Type d’algorithme de mise à l’échelle du déploiement 'TargetUtilization' (obligatoire)
targetUtilizationPercentage Ciblez l’utilisation du processeur pour le générateur de mise à l’échelle automatique. Int

TrackedResourceTags

Nom Description Valeur

UserAssignedIdentities

Nom Description Valeur

UserAssignedIdentity

Nom Description Valeur

Définition de ressource de modèle ARM

Le type de ressource espaces de travail/onlineEndpoints/déploiements peut être déployé avec des opérations qui ciblent :

Pour obtenir la liste des propriétés modifiées dans chaque version de l’API, consultez journal des modifications.

Format de ressource

Pour créer une ressource Microsoft.MachineLearningServices/workspaces/onlineEndpoints/deployments, ajoutez le code JSON suivant à votre modèle.

{
  "type": "Microsoft.MachineLearningServices/workspaces/onlineEndpoints/deployments",
  "apiVersion": "2024-07-01-preview",
  "name": "string",
  "identity": {
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {
      }
    }
  },
  "kind": "string",
  "location": "string",
  "properties": {
    "appInsightsEnabled": "bool",
    "codeConfiguration": {
      "codeId": "string",
      "scoringScript": "string"
    },
    "dataCollector": {
      "collections": {
        "{customized property}": {
          "clientId": "string",
          "dataCollectionMode": "string",
          "dataId": "string",
          "samplingRate": "int"
        }
      },
      "requestLogging": {
        "captureHeaders": [ "string" ]
      },
      "rollingRate": "string"
    },
    "description": "string",
    "egressPublicNetworkAccess": "string",
    "environmentId": "string",
    "environmentVariables": {
      "{customized property}": "string"
    },
    "instanceType": "string",
    "livenessProbe": {
      "failureThreshold": "int",
      "initialDelay": "string",
      "period": "string",
      "successThreshold": "int",
      "timeout": "string"
    },
    "model": "string",
    "modelMountPath": "string",
    "properties": {
      "{customized property}": "string"
    },
    "readinessProbe": {
      "failureThreshold": "int",
      "initialDelay": "string",
      "period": "string",
      "successThreshold": "int",
      "timeout": "string"
    },
    "requestSettings": {
      "maxConcurrentRequestsPerInstance": "int",
      "maxQueueWait": "string",
      "requestTimeout": "string"
    },
    "scaleSettings": {
      "scaleType": "string"
      // For remaining properties, see OnlineScaleSettings objects
    },
    "endpointComputeType": "string"
    // For remaining properties, see OnlineDeploymentProperties objects
  },
  "sku": {
    "capacity": "int",
    "family": "string",
    "name": "string",
    "size": "string",
    "tier": "string"
  },
  "tags": {
    "{customized property}": "string"
  }
}

Objets OnlineDeploymentProperties

Définissez la propriété endpointComputeType pour spécifier le type d’objet.

Pour Kubernetes, utilisez :

{
  "containerResourceRequirements": {
    "containerResourceLimits": {
      "cpu": "string",
      "gpu": "string",
      "memory": "string"
    },
    "containerResourceRequests": {
      "cpu": "string",
      "gpu": "string",
      "memory": "string"
    }
  },
  "endpointComputeType": "Kubernetes"
}

Pour managé, utilisez :

{
  "endpointComputeType": "Managed"
}

Objets OnlineScaleSettings

Définissez la propriété scaleType pour spécifier le type d’objet.

Pour par défaut, utilisez :

{
  "scaleType": "Default"
}

Pour TargetUtilization, utilisez :

{
  "maxInstances": "int",
  "minInstances": "int",
  "pollingInterval": "string",
  "scaleType": "TargetUtilization",
  "targetUtilizationPercentage": "int"
}

Valeurs de propriété

CodeConfiguration

Nom Description Valeur
codeId ID de ressource ARM de la ressource de code. corde
scoringScript [Obligatoire] Script à exécuter au démarrage. Eg. « score.py » corde

Contraintes:
Longueur minimale = 1
Modèle = [a-zA-Z0-9_] (obligatoire)

Collection

Nom Description Valeur
clientId ID client msi utilisé pour collecter la journalisation dans le stockage d’objets blob. S’il s’agit de null, le back-end sélectionne une identité de point de terminaison inscrite pour l’authentification. corde
dataCollectionMode Activez ou désactivez la collecte de données. 'Désactivé'
'Activé'
dataId ID de ressource arm de données. Le côté client garantit que la ressource de données pointe vers le stockage d’objets blob et que le back-end collecte les données vers le stockage d’objets blob. corde
samplingRate Taux d’échantillonnage pour la collecte. Le taux d’échantillonnage 1,0 signifie que nous collectons 100% de données par défaut. Int

ContainerResourceRequirements

Nom Description Valeur
containerResourceLimits Informations sur la limite des ressources de conteneur : ContainerResourceSettings
containerResourceRequests Informations sur la demande de ressource de conteneur : ContainerResourceSettings

ContainerResourceSettings

Nom Description Valeur
CPU Nombre de demandes/limites de processeurs virtuels pour le conteneur. Plus d’informations :
https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
corde
GPU Nombre de cartes GPU Nvidia demande/limite pour le conteneur. Plus d’informations :
https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
corde
mémoire Demande/limite de taille de mémoire pour le conteneur. Plus d’informations :
https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
corde

DataCollector

Nom Description Valeur
Collections [Obligatoire] Configuration du regroupement. Chaque collection possède sa propre configuration pour collecter des données de modèle et le nom de la collection peut être une chaîne arbitraire.
Le collecteur de données de modèle peut être utilisé pour la journalisation des charges utiles ou la journalisation personnalisée ou les deux. La demande et la réponse de collecte sont réservées à la journalisation des charges utiles, d’autres sont destinées à la journalisation personnalisée.
DataCollectorCollections (obligatoire)
requestLogging La configuration de journalisation des demandes pour mdc inclut des paramètres de journalisation avancés pour toutes les collections. C’est facultatif. RequestLogging
rollingRate Lorsque les données de modèle sont collectées dans le stockage d’objets blob, nous devons déployer les données sur un chemin différent pour éviter de les journaliser dans un seul fichier d’objets blob.
Si le taux de roulement est horaire, toutes les données sont collectées dans le chemin d’accès de l’objet blob /aaaa/MM/dd/HH/.
Si c’est le jour, toutes les données sont collectées dans le chemin d’accès d’objet blob /aaaa/MM/jj/.
L’autre avantage du chemin propagé est que l’interface utilisateur de surveillance du modèle est en mesure de sélectionner un intervalle de temps de données très rapidement.
'Day'
'Heure'
'Minute'
'Month'
'Year'

DataCollectorCollections

Nom Description Valeur

DefaultScaleSettings

Nom Description Valeur
scaleType [Obligatoire] Type d’algorithme de mise à l’échelle du déploiement 'Default' (obligatoire)

EndpointDeploymentPropertiesBaseEnvironmentVariables

Nom Description Valeur

EndpointDeploymentPropertiesBasePropertiesBaseProperties

Nom Description Valeur

KubernetesOnlineDeployment

Nom Description Valeur
containerResourceRequirements Configuration requise pour le conteneur (processeur et mémoire). ContainerResourceRequirements
endpointComputeType [Obligatoire] Type de calcul du point de terminaison. 'Kubernetes' (obligatoire)

ManagedOnlineDeployment

Nom Description Valeur
endpointComputeType [Obligatoire] Type de calcul du point de terminaison. 'Managed' (obligatoire)

ManagedServiceIdentity

Nom Description Valeur
type Type d’identité de service managé (où les types SystemAssigned et UserAssigned sont autorisés). 'None'
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned' (obligatoire)
userAssignedIdentities Ensemble d’identités affectées par l’utilisateur associées à la ressource. Les clés de dictionnaire userAssignedIdentities seront des ID de ressource ARM sous la forme : « /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Les valeurs de dictionnaire peuvent être des objets vides ({}) dans les requêtes. UserAssignedIdentities

Microsoft.MachineLearningServices/workspaces/onlineEndpoints/deployments

Nom Description Valeur
apiVersion Version de l’API '2024-07-01-preview'
identité Identité de service managée (identités affectées par le système et/ou identités affectées par l’utilisateur) ManagedServiceIdentity
gentil Métadonnées utilisées par le portail/l’outil/etc pour afficher différentes expériences d’expérience utilisateur pour les ressources du même type. corde
emplacement Emplacement géographique où réside la ressource chaîne (obligatoire)
nom Nom de la ressource corde

Contraintes:
Modèle = ^[a-zA-Z0-9][a-zA-Z0-9\-_]{0,254}$ (obligatoire)
Propriétés [Obligatoire] Attributs supplémentaires de l’entité. OnlineDeploymentProperties (obligatoire)
Sku Détails de la référence SKU requis pour le contrat ARM pour la mise à l’échelle automatique. référence SKU
étiquettes Balises de ressource Dictionnaire de noms et de valeurs d’étiquettes. Consultez les balises dans les modèles
type Type de ressource 'Microsoft.MachineLearningServices/workspaces/onlineEndpoints/deployments'

OnlineDeploymentProperties

Nom Description Valeur
appInsightsEnabled Si la valeur est true, active la journalisation Application Insights. Bool
codeConfiguration Configuration du code pour le déploiement du point de terminaison. codeConfiguration
dataCollector La configuration mdc, nous désactivons mdc lorsqu’elle a la valeur Null. DataCollector
description Description du déploiement du point de terminaison. corde
egressPublicNetworkAccess Si cette option est activée, autorisez l’accès au réseau public de sortie. Si cette option est désactivée, cela crée une sortie sécurisée. Valeur par défaut : activée. 'Désactivé'
'Activé'
endpointComputeType Défini sur « Kubernetes » pour le type KubernetesOnlineDeployment. Défini sur « Managed » pour le type ManagedOnlineDeployment. 'Kubernetes'
'Managed' (obligatoire)
environmentId ID de ressource ARM ou AssetId de la spécification d’environnement pour le déploiement du point de terminaison. corde
environmentVariables Configuration des variables d’environnement pour le déploiement. EndpointDeploymentPropertiesBaseEnvironmentVariables
instanceType Type d’instance de calcul. corde
livenessProbe La sonde Liveness surveille régulièrement l’intégrité du conteneur. probeSettings
modèle Chemin d’ACCÈS DE l’URI au modèle. corde
modelMountPath Chemin d’accès pour monter le modèle dans un conteneur personnalisé. corde
Propriétés Dictionnaire de propriétés. Les propriétés peuvent être ajoutées, mais pas supprimées ou modifiées. EndpointDeploymentPropertiesBaseProperties
readinessProbe La sonde Readiness valide si le conteneur est prêt à servir le trafic. Les propriétés et les valeurs par défaut sont identiques à celles de la sonde liveness. probeSettings
requestSettings Demander des paramètres pour le déploiement. OnlineRequestSettings
scaleSettings Mettre à l’échelle les paramètres du déploiement.
S’il est null ou non fourni,
il est défini par défaut sur TargetUtilizationScaleSettings pour KubernetesOnlineDeployment
et à DefaultScaleSettings pour ManagedOnlineDeployment.
OnlineScaleSettings

OnlineRequestSettings

Nom Description Valeur
maxConcurrentRequestsPerInstance Nombre maximal de requêtes simultanées par nœud autorisé par déploiement. La valeur par défaut est 1. Int
maxQueueWait (Déconseillé pour les points de terminaison Managed Online) Durée maximale pendant laquelle une demande reste dans la file d’attente au format ISO 8601.
La valeur par défaut est 500 ms.
(À présent, augmentez request_timeout_ms pour prendre en compte les retards de mise en réseau/file d’attente)
corde
requestTimeout Délai d’expiration du score au format ISO 8601.
La valeur par défaut est 5 000 ms.
corde

OnlineScaleSettings

Nom Description Valeur
scaleType Défini sur « Default » pour le type DefaultScaleSettings. Défini sur « TargetUtilization » pour le type TargetUtilizationScaleSettings. 'Default'
'TargetUtilization' (obligatoire)

ProbeSettings

Nom Description Valeur
failureThreshold Nombre d’échecs à autoriser avant de retourner un état défectueux. Int
initialDelay Délai avant la première sonde au format ISO 8601. corde
période Durée entre les sondes au format ISO 8601. corde
successThreshold Nombre de sondes réussies avant de retourner un état sain. Int
Timeout Délai d’expiration de la sonde au format ISO 8601. corde

RequestLogging

Nom Description Valeur
captureHeaders Pour la journalisation des charges utiles, nous collectons uniquement la charge utile par défaut. Si les clients souhaitent également collecter les en-têtes spécifiés, ils peuvent les définir dans captureHeaders afin que le back-end collecte ces en-têtes ainsi que la charge utile. string[]

Sku

Nom Description Valeur
capacité Si la référence SKU prend en charge le scale-out/in, l’entier de capacité doit être inclus. Si le scale-out/in n’est pas possible pour la ressource, cela peut être omis. Int
Famille Si le service a différentes générations de matériel, pour la même référence SKU, vous pouvez le capturer ici. corde
nom Nom de la référence SKU. Ex - P3. Il s’agit généralement d’une lettre+code numérique chaîne (obligatoire)
taille Taille de la référence SKU. Lorsque le champ de nom est la combinaison de niveau et d’une autre valeur, il s’agit du code autonome. corde
niveau Ce champ doit être implémenté par le fournisseur de ressources si le service a plusieurs niveaux, mais n’est pas obligatoire sur un PUT. 'De base'
'Free'
'Premium'
'Standard'

TargetUtilizationScaleSettings

Nom Description Valeur
maxInstances Nombre maximal d’instances auxquelles le déploiement peut être mis à l’échelle. Le quota sera réservé à max_instances. Int
minInstances Nombre minimal d’instances à toujours présenter. Int
pollingInterval Intervalle d’interrogation au format ISO 8691. Prend uniquement en charge la durée avec une précision aussi faible que secondes. corde
scaleType [Obligatoire] Type d’algorithme de mise à l’échelle du déploiement 'TargetUtilization' (obligatoire)
targetUtilizationPercentage Ciblez l’utilisation du processeur pour le générateur de mise à l’échelle automatique. Int

TrackedResourceTags

Nom Description Valeur

UserAssignedIdentities

Nom Description Valeur

UserAssignedIdentity

Nom Description Valeur

Définition de ressource Terraform (fournisseur AzAPI)

Le type de ressource espaces de travail/onlineEndpoints/déploiements peut être déployé avec des opérations qui ciblent :

  • groupes de ressources

Pour obtenir la liste des propriétés modifiées dans chaque version de l’API, consultez journal des modifications.

Format de ressource

Pour créer une ressource Microsoft.MachineLearningServices/workspaces/onlineEndpoints/deployments, ajoutez le terraform suivant à votre modèle.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.MachineLearningServices/workspaces/onlineEndpoints/deployments@2024-07-01-preview"
  name = "string"
  identity = {
    type = "string"
    userAssignedIdentities = {
      {customized property} = {
      }
    }
  }
  kind = "string"
  location = "string"
  sku = {
    capacity = int
    family = "string"
    name = "string"
    size = "string"
    tier = "string"
  }
  tags = {
    {customized property} = "string"
  }
  body = jsonencode({
    properties = {
      appInsightsEnabled = bool
      codeConfiguration = {
        codeId = "string"
        scoringScript = "string"
      }
      dataCollector = {
        collections = {
          {customized property} = {
            clientId = "string"
            dataCollectionMode = "string"
            dataId = "string"
            samplingRate = int
          }
        }
        requestLogging = {
          captureHeaders = [
            "string"
          ]
        }
        rollingRate = "string"
      }
      description = "string"
      egressPublicNetworkAccess = "string"
      environmentId = "string"
      environmentVariables = {
        {customized property} = "string"
      }
      instanceType = "string"
      livenessProbe = {
        failureThreshold = int
        initialDelay = "string"
        period = "string"
        successThreshold = int
        timeout = "string"
      }
      model = "string"
      modelMountPath = "string"
      properties = {
        {customized property} = "string"
      }
      readinessProbe = {
        failureThreshold = int
        initialDelay = "string"
        period = "string"
        successThreshold = int
        timeout = "string"
      }
      requestSettings = {
        maxConcurrentRequestsPerInstance = int
        maxQueueWait = "string"
        requestTimeout = "string"
      }
      scaleSettings = {
        scaleType = "string"
        // For remaining properties, see OnlineScaleSettings objects
      }
      endpointComputeType = "string"
      // For remaining properties, see OnlineDeploymentProperties objects
    }
  })
}

Objets OnlineDeploymentProperties

Définissez la propriété endpointComputeType pour spécifier le type d’objet.

Pour Kubernetes, utilisez :

{
  containerResourceRequirements = {
    containerResourceLimits = {
      cpu = "string"
      gpu = "string"
      memory = "string"
    }
    containerResourceRequests = {
      cpu = "string"
      gpu = "string"
      memory = "string"
    }
  }
  endpointComputeType = "Kubernetes"
}

Pour managé, utilisez :

{
  endpointComputeType = "Managed"
}

Objets OnlineScaleSettings

Définissez la propriété scaleType pour spécifier le type d’objet.

Pour par défaut, utilisez :

{
  scaleType = "Default"
}

Pour TargetUtilization, utilisez :

{
  maxInstances = int
  minInstances = int
  pollingInterval = "string"
  scaleType = "TargetUtilization"
  targetUtilizationPercentage = int
}

Valeurs de propriété

CodeConfiguration

Nom Description Valeur
codeId ID de ressource ARM de la ressource de code. corde
scoringScript [Obligatoire] Script à exécuter au démarrage. Eg. « score.py » corde

Contraintes:
Longueur minimale = 1
Modèle = [a-zA-Z0-9_] (obligatoire)

Collection

Nom Description Valeur
clientId ID client msi utilisé pour collecter la journalisation dans le stockage d’objets blob. S’il s’agit de null, le back-end sélectionne une identité de point de terminaison inscrite pour l’authentification. corde
dataCollectionMode Activez ou désactivez la collecte de données. 'Désactivé'
'Activé'
dataId ID de ressource arm de données. Le côté client garantit que la ressource de données pointe vers le stockage d’objets blob et que le back-end collecte les données vers le stockage d’objets blob. corde
samplingRate Taux d’échantillonnage pour la collecte. Le taux d’échantillonnage 1,0 signifie que nous collectons 100% de données par défaut. Int

ContainerResourceRequirements

Nom Description Valeur
containerResourceLimits Informations sur la limite des ressources de conteneur : ContainerResourceSettings
containerResourceRequests Informations sur la demande de ressource de conteneur : ContainerResourceSettings

ContainerResourceSettings

Nom Description Valeur
CPU Nombre de demandes/limites de processeurs virtuels pour le conteneur. Plus d’informations :
https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
corde
GPU Nombre de cartes GPU Nvidia demande/limite pour le conteneur. Plus d’informations :
https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
corde
mémoire Demande/limite de taille de mémoire pour le conteneur. Plus d’informations :
https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
corde

DataCollector

Nom Description Valeur
Collections [Obligatoire] Configuration du regroupement. Chaque collection possède sa propre configuration pour collecter des données de modèle et le nom de la collection peut être une chaîne arbitraire.
Le collecteur de données de modèle peut être utilisé pour la journalisation des charges utiles ou la journalisation personnalisée ou les deux. La demande et la réponse de collecte sont réservées à la journalisation des charges utiles, d’autres sont destinées à la journalisation personnalisée.
DataCollectorCollections (obligatoire)
requestLogging La configuration de journalisation des demandes pour mdc inclut des paramètres de journalisation avancés pour toutes les collections. C’est facultatif. RequestLogging
rollingRate Lorsque les données de modèle sont collectées dans le stockage d’objets blob, nous devons déployer les données sur un chemin différent pour éviter de les journaliser dans un seul fichier d’objets blob.
Si le taux de roulement est horaire, toutes les données sont collectées dans le chemin d’accès de l’objet blob /aaaa/MM/dd/HH/.
Si c’est le jour, toutes les données sont collectées dans le chemin d’accès d’objet blob /aaaa/MM/jj/.
L’autre avantage du chemin propagé est que l’interface utilisateur de surveillance du modèle est en mesure de sélectionner un intervalle de temps de données très rapidement.
'Day'
'Heure'
'Minute'
'Month'
'Year'

DataCollectorCollections

Nom Description Valeur

DefaultScaleSettings

Nom Description Valeur
scaleType [Obligatoire] Type d’algorithme de mise à l’échelle du déploiement 'Default' (obligatoire)

EndpointDeploymentPropertiesBaseEnvironmentVariables

Nom Description Valeur

EndpointDeploymentPropertiesBasePropertiesBaseProperties

Nom Description Valeur

KubernetesOnlineDeployment

Nom Description Valeur
containerResourceRequirements Configuration requise pour le conteneur (processeur et mémoire). ContainerResourceRequirements
endpointComputeType [Obligatoire] Type de calcul du point de terminaison. 'Kubernetes' (obligatoire)

ManagedOnlineDeployment

Nom Description Valeur
endpointComputeType [Obligatoire] Type de calcul du point de terminaison. 'Managed' (obligatoire)

ManagedServiceIdentity

Nom Description Valeur
type Type d’identité de service managé (où les types SystemAssigned et UserAssigned sont autorisés). 'None'
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned' (obligatoire)
userAssignedIdentities Ensemble d’identités affectées par l’utilisateur associées à la ressource. Les clés de dictionnaire userAssignedIdentities seront des ID de ressource ARM sous la forme : « /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Les valeurs de dictionnaire peuvent être des objets vides ({}) dans les requêtes. UserAssignedIdentities

Microsoft.MachineLearningServices/workspaces/onlineEndpoints/deployments

Nom Description Valeur
identité Identité de service managée (identités affectées par le système et/ou identités affectées par l’utilisateur) ManagedServiceIdentity
gentil Métadonnées utilisées par le portail/l’outil/etc pour afficher différentes expériences d’expérience utilisateur pour les ressources du même type. corde
emplacement Emplacement géographique où réside la ressource chaîne (obligatoire)
nom Nom de la ressource corde

Contraintes:
Modèle = ^[a-zA-Z0-9][a-zA-Z0-9\-_]{0,254}$ (obligatoire)
parent_id ID de la ressource qui est le parent de cette ressource. ID de ressource de type : espaces de travail /onlineEndpoints
Propriétés [Obligatoire] Attributs supplémentaires de l’entité. OnlineDeploymentProperties (obligatoire)
Sku Détails de la référence SKU requis pour le contrat ARM pour la mise à l’échelle automatique. référence SKU
étiquettes Balises de ressource Dictionnaire de noms et de valeurs d’étiquettes.
type Type de ressource « Microsoft.MachineLearningServices/workspaces/onlineEndpoints/deployments@2024-07-01-preview »

OnlineDeploymentProperties

Nom Description Valeur
appInsightsEnabled Si la valeur est true, active la journalisation Application Insights. Bool
codeConfiguration Configuration du code pour le déploiement du point de terminaison. codeConfiguration
dataCollector La configuration mdc, nous désactivons mdc lorsqu’elle a la valeur Null. DataCollector
description Description du déploiement du point de terminaison. corde
egressPublicNetworkAccess Si cette option est activée, autorisez l’accès au réseau public de sortie. Si cette option est désactivée, cela crée une sortie sécurisée. Valeur par défaut : activée. 'Désactivé'
'Activé'
endpointComputeType Défini sur « Kubernetes » pour le type KubernetesOnlineDeployment. Défini sur « Managed » pour le type ManagedOnlineDeployment. 'Kubernetes'
'Managed' (obligatoire)
environmentId ID de ressource ARM ou AssetId de la spécification d’environnement pour le déploiement du point de terminaison. corde
environmentVariables Configuration des variables d’environnement pour le déploiement. EndpointDeploymentPropertiesBaseEnvironmentVariables
instanceType Type d’instance de calcul. corde
livenessProbe La sonde Liveness surveille régulièrement l’intégrité du conteneur. probeSettings
modèle Chemin d’ACCÈS DE l’URI au modèle. corde
modelMountPath Chemin d’accès pour monter le modèle dans un conteneur personnalisé. corde
Propriétés Dictionnaire de propriétés. Les propriétés peuvent être ajoutées, mais pas supprimées ou modifiées. EndpointDeploymentPropertiesBaseProperties
readinessProbe La sonde Readiness valide si le conteneur est prêt à servir le trafic. Les propriétés et les valeurs par défaut sont identiques à celles de la sonde liveness. probeSettings
requestSettings Demander des paramètres pour le déploiement. OnlineRequestSettings
scaleSettings Mettre à l’échelle les paramètres du déploiement.
S’il est null ou non fourni,
il est défini par défaut sur TargetUtilizationScaleSettings pour KubernetesOnlineDeployment
et à DefaultScaleSettings pour ManagedOnlineDeployment.
OnlineScaleSettings

OnlineRequestSettings

Nom Description Valeur
maxConcurrentRequestsPerInstance Nombre maximal de requêtes simultanées par nœud autorisé par déploiement. La valeur par défaut est 1. Int
maxQueueWait (Déconseillé pour les points de terminaison Managed Online) Durée maximale pendant laquelle une demande reste dans la file d’attente au format ISO 8601.
La valeur par défaut est 500 ms.
(À présent, augmentez request_timeout_ms pour prendre en compte les retards de mise en réseau/file d’attente)
corde
requestTimeout Délai d’expiration du score au format ISO 8601.
La valeur par défaut est 5 000 ms.
corde

OnlineScaleSettings

Nom Description Valeur
scaleType Défini sur « Default » pour le type DefaultScaleSettings. Défini sur « TargetUtilization » pour le type TargetUtilizationScaleSettings. 'Default'
'TargetUtilization' (obligatoire)

ProbeSettings

Nom Description Valeur
failureThreshold Nombre d’échecs à autoriser avant de retourner un état défectueux. Int
initialDelay Délai avant la première sonde au format ISO 8601. corde
période Durée entre les sondes au format ISO 8601. corde
successThreshold Nombre de sondes réussies avant de retourner un état sain. Int
Timeout Délai d’expiration de la sonde au format ISO 8601. corde

RequestLogging

Nom Description Valeur
captureHeaders Pour la journalisation des charges utiles, nous collectons uniquement la charge utile par défaut. Si les clients souhaitent également collecter les en-têtes spécifiés, ils peuvent les définir dans captureHeaders afin que le back-end collecte ces en-têtes ainsi que la charge utile. string[]

Sku

Nom Description Valeur
capacité Si la référence SKU prend en charge le scale-out/in, l’entier de capacité doit être inclus. Si le scale-out/in n’est pas possible pour la ressource, cela peut être omis. Int
Famille Si le service a différentes générations de matériel, pour la même référence SKU, vous pouvez le capturer ici. corde
nom Nom de la référence SKU. Ex - P3. Il s’agit généralement d’une lettre+code numérique chaîne (obligatoire)
taille Taille de la référence SKU. Lorsque le champ de nom est la combinaison de niveau et d’une autre valeur, il s’agit du code autonome. corde
niveau Ce champ doit être implémenté par le fournisseur de ressources si le service a plusieurs niveaux, mais n’est pas obligatoire sur un PUT. 'De base'
'Free'
'Premium'
'Standard'

TargetUtilizationScaleSettings

Nom Description Valeur
maxInstances Nombre maximal d’instances auxquelles le déploiement peut être mis à l’échelle. Le quota sera réservé à max_instances. Int
minInstances Nombre minimal d’instances à toujours présenter. Int
pollingInterval Intervalle d’interrogation au format ISO 8691. Prend uniquement en charge la durée avec une précision aussi faible que secondes. corde
scaleType [Obligatoire] Type d’algorithme de mise à l’échelle du déploiement 'TargetUtilization' (obligatoire)
targetUtilizationPercentage Ciblez l’utilisation du processeur pour le générateur de mise à l’échelle automatique. Int

TrackedResourceTags

Nom Description Valeur

UserAssignedIdentities

Nom Description Valeur

UserAssignedIdentity

Nom Description Valeur