Espaces de travail Microsoft.MachineLearningServices/onlineEndpoints/deployments 2024-01-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 :
- groupes de ressources - Consultez commandes de déploiement de 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 bicep suivant à votre modèle.
resource symbolicname 'Microsoft.MachineLearningServices/workspaces/onlineEndpoints/deployments@2024-01-01-preview' = {
name: 'string'
location: 'string'
tags: {
tagName1: 'tagValue1'
tagName2: 'tagValue2'
}
sku: {
capacity: int
family: 'string'
name: 'string'
size: 'string'
tier: 'string'
}
kind: 'string'
parent: resourceSymbolicName
identity: {
type: 'string'
userAssignedIdentities: {
{customized property}: {}
}
}
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 :
endpointComputeType: 'Kubernetes'
containerResourceRequirements: {
containerResourceLimits: {
cpu: 'string'
gpu: 'string'
memory: 'string'
}
containerResourceRequests: {
cpu: 'string'
gpu: 'string'
memory: 'string'
}
}
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 :
scaleType: 'TargetUtilization'
maxInstances: int
minInstances: int
pollingInterval: 'string'
targetUtilizationPercentage: int
Valeurs de propriété
workspaces/onlineEndpoints/deployments
Nom | Description | Valeur |
---|---|---|
nom | Nom de la ressource Découvrez comment définir des noms et des types pour les ressources enfants dans Bicep. |
chaîne (obligatoire) |
emplacement | Emplacement géographique où réside la ressource | chaîne (obligatoire) |
étiquettes | Balises de ressource. | Dictionnaire de noms et de valeurs d’étiquettes. Consultez les balises dans les modèles |
Sku | Détails de la référence SKU requis pour le contrat ARM pour la mise à l’échelle automatique. | référence SKU |
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 |
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 : onlineEndpoints |
identité | Identité de service managée (identités affectées par le système et/ou identités affectées par l’utilisateur) | ManagedServiceIdentity |
Propriétés | [Obligatoire] Attributs supplémentaires de l’entité. | OnlineDeploymentProperties (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 |
UserAssignedIdentities
Nom | Description | Valeur |
---|---|---|
{propriété personnalisée} | UserAssignedIdentity |
UserAssignedIdentity
Cet objet ne contient aucune propriété à définir pendant le déploiement. Toutes les propriétés sont ReadOnly.
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é' |
environmentId | ID de ressource ARM 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 |
endpointComputeType | Définir le type d’objet |
Kubernetes managed (obligatoire) |
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 » | chaîne (obligatoire) Contraintes: Longueur minimale = 1 Modèle = [a-zA-Z0-9_] |
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 |
---|---|---|
{propriété personnalisée} | collection |
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 |
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[] |
EndpointDeploymentPropertiesBaseEnvironmentVariables
Nom | Description | Valeur |
---|---|---|
{propriété personnalisée} | corde |
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 |
EndpointDeploymentPropertiesBasePropertiesBaseProperties
Nom | Description | Valeur |
---|---|---|
{propriété personnalisée} | corde |
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éfinir le type d’objet |
par défaut TargetUtilization (obligatoire) |
DefaultScaleSettings
Nom | Description | Valeur |
---|---|---|
scaleType | [Obligatoire] Type d’algorithme de mise à l’échelle du déploiement | 'Default' (obligatoire) |
TargetUtilizationScaleSettings
Nom | Description | Valeur |
---|---|---|
scaleType | [Obligatoire] Type d’algorithme de mise à l’échelle du déploiement | 'TargetUtilization' (obligatoire) |
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 |
targetUtilizationPercentage | Ciblez l’utilisation du processeur pour le générateur de mise à l’échelle automatique. | Int |
KubernetesOnlineDeployment
Nom | Description | Valeur |
---|---|---|
endpointComputeType | [Obligatoire] Type de calcul du point de terminaison. | 'Kubernetes' (obligatoire) |
containerResourceRequirements | Configuration requise pour le conteneur (processeur et mémoire). | ContainerResourceRequirements |
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 |
ManagedOnlineDeployment
Nom | Description | Valeur |
---|---|---|
endpointComputeType | [Obligatoire] Type de calcul du point de terminaison. | 'Managed' (obligatoire) |
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' |
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 :
- groupes de ressources - Consultez commandes de déploiement de 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 code JSON suivant à votre modèle.
{
"type": "Microsoft.MachineLearningServices/workspaces/onlineEndpoints/deployments",
"apiVersion": "2024-01-01-preview",
"name": "string",
"location": "string",
"tags": {
"tagName1": "tagValue1",
"tagName2": "tagValue2"
},
"sku": {
"capacity": "int",
"family": "string",
"name": "string",
"size": "string",
"tier": "string"
},
"kind": "string",
"identity": {
"type": "string",
"userAssignedIdentities": {
"{customized property}": {}
}
},
"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 :
"endpointComputeType": "Kubernetes",
"containerResourceRequirements": {
"containerResourceLimits": {
"cpu": "string",
"gpu": "string",
"memory": "string"
},
"containerResourceRequests": {
"cpu": "string",
"gpu": "string",
"memory": "string"
}
}
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 :
"scaleType": "TargetUtilization",
"maxInstances": "int",
"minInstances": "int",
"pollingInterval": "string",
"targetUtilizationPercentage": "int"
Valeurs de propriété
workspaces/onlineEndpoints/deployments
Nom | Description | Valeur |
---|---|---|
type | Type de ressource | 'Microsoft.MachineLearningServices/workspaces/onlineEndpoints/deployments' |
apiVersion | Version de l’API de ressource | '2024-01-01-preview' |
nom | Nom de la ressource Découvrez comment définir des noms et des types pour les ressources enfants dans modèles ARM JSON. |
chaîne (obligatoire) |
emplacement | Emplacement géographique où réside la ressource | chaîne (obligatoire) |
étiquettes | Balises de ressource. | Dictionnaire de noms et de valeurs d’étiquettes. Consultez les balises dans les modèles |
Sku | Détails de la référence SKU requis pour le contrat ARM pour la mise à l’échelle automatique. | référence SKU |
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 |
identité | Identité de service managée (identités affectées par le système et/ou identités affectées par l’utilisateur) | ManagedServiceIdentity |
Propriétés | [Obligatoire] Attributs supplémentaires de l’entité. | OnlineDeploymentProperties (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 |
UserAssignedIdentities
Nom | Description | Valeur |
---|---|---|
{propriété personnalisée} | UserAssignedIdentity |
UserAssignedIdentity
Cet objet ne contient aucune propriété à définir pendant le déploiement. Toutes les propriétés sont ReadOnly.
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é' |
environmentId | ID de ressource ARM 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 |
endpointComputeType | Définir le type d’objet |
Kubernetes managed (obligatoire) |
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 » | chaîne (obligatoire) Contraintes: Longueur minimale = 1 Modèle = [a-zA-Z0-9_] |
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 |
---|---|---|
{propriété personnalisée} | collection |
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 |
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[] |
EndpointDeploymentPropertiesBaseEnvironmentVariables
Nom | Description | Valeur |
---|---|---|
{propriété personnalisée} | corde |
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 |
EndpointDeploymentPropertiesBasePropertiesBaseProperties
Nom | Description | Valeur |
---|---|---|
{propriété personnalisée} | corde |
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éfinir le type d’objet |
par défaut TargetUtilization (obligatoire) |
DefaultScaleSettings
Nom | Description | Valeur |
---|---|---|
scaleType | [Obligatoire] Type d’algorithme de mise à l’échelle du déploiement | 'Default' (obligatoire) |
TargetUtilizationScaleSettings
Nom | Description | Valeur |
---|---|---|
scaleType | [Obligatoire] Type d’algorithme de mise à l’échelle du déploiement | 'TargetUtilization' (obligatoire) |
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 |
targetUtilizationPercentage | Ciblez l’utilisation du processeur pour le générateur de mise à l’échelle automatique. | Int |
KubernetesOnlineDeployment
Nom | Description | Valeur |
---|---|---|
endpointComputeType | [Obligatoire] Type de calcul du point de terminaison. | 'Kubernetes' (obligatoire) |
containerResourceRequirements | Configuration requise pour le conteneur (processeur et mémoire). | ContainerResourceRequirements |
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 |
ManagedOnlineDeployment
Nom | Description | Valeur |
---|---|---|
endpointComputeType | [Obligatoire] Type de calcul du point de terminaison. | 'Managed' (obligatoire) |
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' |
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-01-01-preview"
name = "string"
location = "string"
parent_id = "string"
tags = {
tagName1 = "tagValue1"
tagName2 = "tagValue2"
}
identity {
type = "string"
identity_ids = []
}
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
}
sku = {
capacity = int
family = "string"
name = "string"
size = "string"
tier = "string"
}
kind = "string"
})
}
Objets OnlineDeploymentProperties
Définissez la propriété endpointComputeType pour spécifier le type d’objet.
Pour Kubernetes, utilisez :
endpointComputeType = "Kubernetes"
containerResourceRequirements = {
containerResourceLimits = {
cpu = "string"
gpu = "string"
memory = "string"
}
containerResourceRequests = {
cpu = "string"
gpu = "string"
memory = "string"
}
}
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 :
scaleType = "TargetUtilization"
maxInstances = int
minInstances = int
pollingInterval = "string"
targetUtilizationPercentage = int
Valeurs de propriété
workspaces/onlineEndpoints/deployments
Nom | Description | Valeur |
---|---|---|
type | Type de ressource | « Microsoft.MachineLearningServices/workspaces/onlineEndpoints/deployments@2024-01-01-preview » |
nom | Nom de la ressource | chaîne (obligatoire) |
emplacement | Emplacement géographique où réside la ressource | chaîne (obligatoire) |
parent_id | ID de la ressource qui est le parent de cette ressource. | ID de ressource de type : onlineEndpoints |
étiquettes | Balises de ressource. | Dictionnaire de noms et de valeurs d’étiquettes. |
Sku | Détails de la référence SKU requis pour le contrat ARM pour la mise à l’échelle automatique. | référence SKU |
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 |
identité | Identité de service managée (identités affectées par le système et/ou identités affectées par l’utilisateur) | ManagedServiceIdentity |
Propriétés | [Obligatoire] Attributs supplémentaires de l’entité. | OnlineDeploymentProperties (obligatoire) |
ManagedServiceIdentity
Nom | Description | Valeur |
---|---|---|
type | Type d’identité de service managé (où les types SystemAssigned et UserAssigned sont autorisés). | « SystemAssigned » « SystemAssigned,UserAssigned » « UserAssigned » (obligatoire) |
identity_ids | 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. | Tableau d’ID d’identité utilisateur. |
UserAssignedIdentities
Nom | Description | Valeur |
---|---|---|
{propriété personnalisée} | UserAssignedIdentity |
UserAssignedIdentity
Cet objet ne contient aucune propriété à définir pendant le déploiement. Toutes les propriétés sont ReadOnly.
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é » |
environmentId | ID de ressource ARM 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 |
endpointComputeType | Définir le type d’objet |
Kubernetes managed (obligatoire) |
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 » | chaîne (obligatoire) Contraintes: Longueur minimale = 1 Modèle = [a-zA-Z0-9_] |
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. |
« Jour » « Heure » « Minute » « Mois » « Année » |
DataCollectorCollections
Nom | Description | Valeur |
---|---|---|
{propriété personnalisée} | collection |
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 |
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[] |
EndpointDeploymentPropertiesBaseEnvironmentVariables
Nom | Description | Valeur |
---|---|---|
{propriété personnalisée} | corde |
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 |
EndpointDeploymentPropertiesBasePropertiesBaseProperties
Nom | Description | Valeur |
---|---|---|
{propriété personnalisée} | corde |
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éfinir le type d’objet |
par défaut TargetUtilization (obligatoire) |
DefaultScaleSettings
Nom | Description | Valeur |
---|---|---|
scaleType | [Obligatoire] Type d’algorithme de mise à l’échelle du déploiement | « Par défaut » (obligatoire) |
TargetUtilizationScaleSettings
Nom | Description | Valeur |
---|---|---|
scaleType | [Obligatoire] Type d’algorithme de mise à l’échelle du déploiement | « TargetUtilization » (obligatoire) |
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 |
targetUtilizationPercentage | Ciblez l’utilisation du processeur pour le générateur de mise à l’échelle automatique. | Int |
KubernetesOnlineDeployment
Nom | Description | Valeur |
---|---|---|
endpointComputeType | [Obligatoire] Type de calcul du point de terminaison. | « Kubernetes » (obligatoire) |
containerResourceRequirements | Configuration requise pour le conteneur (processeur et mémoire). | ContainerResourceRequirements |
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 |
ManagedOnlineDeployment
Nom | Description | Valeur |
---|---|---|
endpointComputeType | [Obligatoire] Type de calcul du point de terminaison. | « Géré » (obligatoire) |
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 » « Gratuit » « Premium » « Standard » |