Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Note
Le calcul managé dans Foundry est actuellement en préversion publique et l’inscription est nécessaire pour l’utiliser. Cette version préliminaire est fournie sans contrat de niveau de service, et nous la déconseillons pour les charges de travail en production. Certaines fonctionnalités peuvent ne pas être prises en charge ou avoir des fonctionnalités contraintes. Pour plus d’informations, consultez Conditions d'utilisation supplémentaires pour les versions préliminaires de Microsoft Azure.
Le déploiement de calcul managé (préversion) dans Microsoft Foundry héberge des modèles open source sur une capacité GPU dédiée. Microsoft possède la topologie GPU, le runtime, l’image conteneur et la mise à jour corrective de sécurité. Vous choisissez le modèle, le modèle de déploiement, la famille d’accélérateurs et le comportement de mise à l’échelle qui correspondent à votre charge de travail. Cet article décrit le flux de travail de bout en bout pour déployer un modèle open source sur un calcul managé dans Microsoft Foundry.
Dans cet article, vous allez apprendre à :
- Choisir un modèle dans le catalogue de modèles
- Sélectionner un modèle de déploiement
- Déployer le modèle à l’aide du portail Foundry ou du Kit de développement logiciel (SDK) Python
- Effectuer une inférence à l’aide du Kit de développement logiciel (SDK) OpenAI
- Mettre à l’échelle et surveiller le déploiement
- Demander plus de quota
Pour obtenir une vue d’ensemble du déploiement de calcul managé dans Foundry, notamment les instances de modèle, les modèles de déploiement, les runtimes, les familles d’accélérateurs, la facturation et les limitations actuelles, consultez Calcul managé dans Microsoft Foundry (préversion).
Prerequisites
Un abonnement Azure actif. Pour en créer un, consultez Créer votre compte gratuit Azure.
Groupe de ressources dans l’abonnement dans lequel vous êtes autorisé à créer des ressources.
Un compte Microsoft Foundry (compte Cognitive Services de type
AIServices) et un projet Foundry. Pour en créer un, consultez Créer un projet Foundry.Les attributions de rôles Azure suivantes sur l’étendue du compte Foundry :
- Contributeur Cognitive Services (ou Propriétaire Foundry / Propriétaire du compte Foundry) : requis pour créer, mettre à jour et supprimer des déploiements de calcul gérés. Consultez Contrôle d’accès basé sur les rôles pour Microsoft Foundry — Opérations du plan de contrôle du calcul managé.
- Foundry User — requis pour appeler un déploiement avec Microsoft Entra ID depuis le Playground, le SDK ou l’API REST.
Quota de calcul managé approuvé pour la famille d’accélérateurs que vous envisagez de déployer sur (A100, H100 ou MI300X) dans la région cible. Le quota de calcul managé est distinct du quota de machines virtuelles Azure. Consultez Demander plus de quota à la fin de cet article.
Outils locaux pour les exemples du Kit de développement logiciel (SDK) et de l’interface CLI :
pip install "azure-mgmt-cognitiveservices==15.0.0b2" azure-identity openai requests az loginAzure CLI 2.60 ou version ultérieure.
Important
Le calcul managé dans Foundry est en préversion publique. Les API, les noms de référence SKU et les régions prises en charge peuvent changer avant la disponibilité générale. Le filtrage de contenu intégré ne fait pas partie du chemin des données de calcul managées en préversion publique. Si vous avez besoin d’un filtrage au niveau de la demande ou d’une réponse, appelez les API Azure AI Sécurité du Contenu directement à partir de votre application.
Choisir un modèle dans le catalogue
Le calcul managé déploie des modèles issus de la Hugging Face Collection dans le catalogue de modèles Foundry, servis depuis le registre azure-huggingface.
- Connectez-vous à Microsoft Foundry. Vérifiez que l'option New Foundry est activée. Ces étapes font référence à Foundry (nouveau).
- Sélectionnez votre abonnement et votre ressource Foundry.
- Sélectionnez Générer dans le volet de navigation supérieur droit, puis sélectionnez Modèles dans le volet gauche.
- Filtrez le catalogue par collections. Choisissez Hugging Face. Vous pouvez également utiliser l’un des autres filtres pour affiner le modèle que vous souhaitez déployer (par exemple, choisir une famille de modèles comme Qwen) ou par modalité ou tâche. Vous pouvez également effectuer une recherche par nom de modèle.
- Sélectionnez une carte de modèle (par exemple)
nvidia-nemotron-3-nano-30b-a3b-fp8pour ouvrir ses détails.
La carte de modèle affiche la licence en amont, la modalité, les tâches prises en charge et les modèles de déploiement publiés pour le modèle. Si vous envisagez de déployer via le Kit de développement logiciel (SDK) Python ou REST au lieu d'utiliser l'Assistant Portail, vous aurez besoin de trois valeurs comme entrée à l'appel de déploiement. Vous trouverez ces valeurs dans le portail Foundry comme suit :
ID de modèle : l’identifiant de ressource du registre entièrement qualifié pour le modèle. Disponible sur la carte de modèle dans le catalogue (copie à partir du volet Détails du modèle). Exemple :
azureml://registries/azure-huggingface/models/nvidia--nvidia-nemotron-3-nano-30b-a3b-fp8/versions/2ID du modèle de déploiement : identifie le runtime, la famille d’accélérateurs et le nombre et la longueur du contexte du modèle. Disponible dans l’Assistant Déploiement qui s’ouvre lorsque vous sélectionnez Déployer sur la carte de modèle. Sélectionnez un modèle et copiez l’ID du modèle de déploiement depuis l’assistant. Exemple :
azureml://registries/azure-huggingface/deploymenttemplates/nvidia--nvidia-nemotron-3-nano-30b-a3b-fp8--nvidia-h100/labels/latestNote
Un ID de modèle et un ID de modèle de déploiement doivent être compatibles ; chaque modèle répertorie les versions de modèle qu’il prend en charge. L’Assistant Portail affiche uniquement les modèles compatibles pour le modèle que vous avez sélectionné. Si vous effectuez le déploiement à l’aide de code, vérifiez que les deux références correspondent à des ressources de registre valides dans le registre
azure-huggingface.Pour en savoir plus sur les modèles de déploiement, consultez Modèle de déploiement dans l’article de présentation de Calcul managé.
Type d’accélérateur : par exemple
H100_80GB, ouA100_80GBMI_300_192GB. Affiché à côté de chaque modèle dans l’assistant de déploiement.
Déployer le modèle
Sélectionnez Déployer sur la fiche du modèle pour ouvrir l’assistant de déploiement.
Spécifiez un nom de déploiement. Le nom de déploiement est ce que votre application passe dans le champ au moment de l’inférence
model: choisissez un nom stable et convivial pour l’application (par exemple).nemotron-3-nano-30bLe type de déploiement (Global Managed Compute) est pré-sélectionné dans l’Assistant Déploiement.
Sélectionnez le modèle de déploiement qui correspond à votre charge de travail. Par exemple, le gabarit H100 à accélérateur unique pour un coût minimal avec une longueur de contexte modérée, ou un gabarit à deux accélérateurs si vos prompts dépassent la limite de contexte d’un accélérateur unique.
Sélectionnez le type d’accélérateur, par exemple
H100_80GB.Définissez les instances de modèle sur
1(ou une valeur supérieure si vous avez mesuré votre charge de travail). Les instances de modèle déterminent la taille de la capacité de calcul managée et correspondent à la valeurcapacitydans la référence SKU du déploiement. Chaque instance consomme le nombre d’accélérateurs défini par le modèle ; par exemple, un modèle qui spécifie un H100 par instance avec la capacité 2 utilise deux accélérateurs H100 au total.Tip
Commencez avec
capacity: 1pour un premier déploiement, puis augmentez la capacité après avoir mesuré votre charge de travail. Consultez Gérer et mettre à l’échelle le déploiement pour savoir comment augmenter la capacité.Cochez la case pour accuser réception du coût du déploiement.
Sélectionnez Déployer. L’approvisionnement prend généralement 10 à 15 minutes.
Vérifier le déploiement
La page des détails du déploiement passe de Creating à Succeeded lorsque le modèle est actif derrière le point de terminaison Foundry. Vous pouvez voir des détails sur le déploiement, notamment l’état d’approvisionnement, le type de déploiement et d’autres sélections que vous avez effectuées lors de la création du déploiement.
Envoyer une requête de test
Lorsque le déploiement est prêt, testez-le de manière interactive dans le terrain de jeu Foundry.
- Sélectionnez l’onglet Playground pour y accéder depuis la page Détails du déploiement.
- Envoyez une invite de commande pour tester le déploiement.
Surveillance du déploiement
Les déploiements de calcul managés émettent des métriques sur la même surface d’Azure Monitor que d’autres déploiements Foundry. Dans la page des détails du déploiement dans le portail Foundry, l’onglet Moniteur affiche :
- Nombre de requêtes regroupés par code d’état HTTP.
- Centiles de temps de réponse (p50, p90, p99).
- Pour les modèles de complétion de chat : nombre de jetons d’entrée et de sortie, percentiles du temps jusqu’au premier jeton (TTFT) et percentiles du temps de décodage entre les jetons.
Pour une analyse ou des alertes plus approfondies, ouvrez le déploiement dans le portail Azure et utilisez Metrics sous Monitoring pour tracer les mêmes métriques, regrouper par déploiement et configurer des alertes. Les balises de facturation par déploiement sont émises automatiquement. Filtrez Cost Management par la balise de déploiement pour attribuer des dépenses à un déploiement de calcul managé spécifique. Pour plus d’informations, consultez Plan et gérer les coûts de Microsoft Foundry.
Supprimer le déploiement
La suppression d’un déploiement libère l’allocation d’accélérateur et arrête immédiatement la facturation. Pour supprimer un déploiement :
- Accédez à la liste des déploiements dans le portail Foundry.
- Sélectionnez le bouton radio à côté de votre nom de déploiement.
- Dans le volet de droite, sélectionnez Supprimer.
Demander plus de quota
Le quota de calcul managé est accordé par famille d’accélérateurs par région via le processus de quota Foundry et est parate de Azure quota de machines virtuelles. Le quota de machines virtuelles Azure existant ne peut pas être appliqué à un déploiement de calcul managé.
Pour demander davantage de quota :
- Sélectionnez Utiliser dans le volet supérieur droit, puis Quota dans le volet gauche.
- Sélectionnez l’onglet Calcul managé . Le tableau répertorie les allocations actuelles regroupées par famille d’accélérateurs et par région.
- Sélectionnez Quota de demandes dans le coin supérieur droit.
- Dans le formulaire de requête, choisissez la famille d’accélérateurs (A100, H100 ou MI300X), la région cible et le quota demandé. Envoyez la demande.
Laissez jusqu’à 15 minutes pour qu’une modification de quota approuvée se propage. Actualisez la page Quota pour vérifier l’allocation mise à jour. Pour plus d’informations sur les concepts de quota, consultez Gérer et augmenter les quotas pour les ressources.
Utilisez le script Python suivant pour déployer le modèle. Remplacez les espaces réservés par votre propre ID d’abonnement, groupe de ressources, nom du compte Foundry et nom de déploiement.
Tip
Commencez avec capacity: 1 pour un premier déploiement, puis augmentez la capacité après avoir mesuré votre charge de travail. Consultez Gérer et mettre à l’échelle le déploiement pour savoir comment augmenter la capacité.
from azure.identity import DefaultAzureCredential
from azure.mgmt.cognitiveservices import CognitiveServicesManagementClient
SUBSCRIPTION_ID = "<your-subscription-id>"
RESOURCE_GROUP = "<your-resource-group>"
ACCOUNT_NAME = "<your-foundry-account>"
DEPLOYMENT_NAME = "nemotron-3-nano-30b"
MODEL = "azureml://registries/azure-huggingface/models/nvidia--nvidia-nemotron-3-nano-30b-a3b-fp8/versions/2"
TEMPLATE = "azureml://registries/azure-huggingface/deploymenttemplates/nvidia--nvidia-nemotron-3-nano-30b-a3b-fp8--nvidia-h100/labels/latest"
client = CognitiveServicesManagementClient(
DefaultAzureCredential(), SUBSCRIPTION_ID
)
deployment = client.managed_compute_deployments.begin_create_or_update(
resource_group_name=RESOURCE_GROUP,
account_name=ACCOUNT_NAME,
deployment_name=DEPLOYMENT_NAME,
resource={
"sku": {"name": "GlobalManagedCompute", "capacity": 1},
"properties": {
"model": MODEL,
"deploymentTemplate": TEMPLATE,
"acceleratorType": "H100_80GB",
"versionUpgradeOption": "OnceNewDefaultVersionAvailable",
},
},
).result() # blocks until terminal state (~10–15 min)
print(f"State: {deployment.properties.provisioning_state}")
print(f"ID: {deployment.id}")
Vérifier le déploiement
Une fois le déploiement créé, vérifiez qu’il est en bon état de fonctionnement avant d’envoyer du trafic.
d = client.managed_compute_deployments.get(
resource_group_name=RESOURCE_GROUP,
account_name=ACCOUNT_NAME,
deployment_name=DEPLOYMENT_NAME,
)
print(f"State: {d.properties.provisioning_state}") # expect: Succeeded
print(f"Model: {d.properties.model}")
print(f"Template: {d.properties.deployment_template}")
print(f"Accelerator: {d.properties.accelerator_type}")
print(f"Capacity: {d.sku.capacity}")
Recherchez :
-
provisioningState: Succeededsignifie que le déploiement est actif. -
acceleratorTypecorrespond à la valeur que vous avez demandée. -
sku.capacitycorrespond au nombre d’instances que vous avez demandées.
Si provisioningState est Failed, consultez Dépannage.
Envoyer une requête de test
Les déploiements de calcul managés sont accessibles via le point de terminaison Foundry unifié à l’adresse suivante :
https://<account>.services.ai.azure.com/openai/v1/
Le model champ du corps de la demande prend le nom de déploiement que vous avez spécifié, et non l’ID de modèle.
from azure.identity import DefaultAzureCredential, get_bearer_token_provider
from openai import OpenAI
ACCOUNT_NAME = "<your-foundry-account>"
DEPLOYMENT_NAME = "nemotron-3-nano-30b"
token_provider = get_bearer_token_provider(
DefaultAzureCredential(),
"https://cognitiveservices.azure.com/.default",
)
client = OpenAI(
base_url=f"https://{ACCOUNT_NAME}.services.ai.azure.com/openai/v1",
api_key="placeholder", # required by OpenAI SDK; overridden by Authorization header
default_headers={"Authorization": f"Bearer {token_provider()}"},
)
resp = client.chat.completions.create(
model=DEPLOYMENT_NAME,
messages=[{"role": "user", "content": "What is the capital of France?"}],
)
print(resp.choices[0].message.content)
L’appel au déploiement avec Microsoft Entra ID nécessite le rôle Azure AI User sur le compte Foundry.
Gérer et mettre à l’échelle le déploiement
Étant donné que les déploiements de calcul managés sont centrés sur les modèles, vous mettez à l’échelle les déploiements en modifiant le nombre d’instances de modèle, et non en dimensionnant un nœud.
Modifier la capacité
d = client.managed_compute_deployments.get(
RESOURCE_GROUP, ACCOUNT_NAME, DEPLOYMENT_NAME
)
d.sku.capacity = 3
client.managed_compute_deployments.begin_create_or_update(
resource_group_name=RESOURCE_GROUP,
account_name=ACCOUNT_NAME,
deployment_name=DEPLOYMENT_NAME,
resource=d,
).result()
Récupérer les mises à jour du runtime et du modèle
Définir versionUpgradeOption sur OnceNewDefaultVersionAvailable pour le déploiement permet à celui-ci d’adopter les nouvelles versions par défaut du modèle et du runtime lorsque Microsoft les publie. Les correctifs de runtime et les correctifs CVE sont appliqués automatiquement aux déploiements de clients en direct ; vous ne redéployez pas le modèle pour les récupérer.
Surveillance du déploiement
Les déploiements de calcul managés émettent des métriques sur la même surface d’Azure Monitor que d’autres déploiements Foundry. Pour une analyse ou des alertes plus approfondies, ouvrez le déploiement dans le portail Azure et utilisez Metrics sous Monitoring pour graphiquer des métriques telles que :
- Nombre de requêtes regroupés par code d’état HTTP.
- Centiles de temps de réponse (p50, p90, p99).
- Pour les modèles de complétion de chat : nombre de jetons d’entrée et de sortie, percentiles du TTFT (time-to-first-token) et percentiles du temps de décodage entre les jetons.
Vous pouvez également regrouper par déploiement et configurer des alertes. Les balises de facturation par déploiement sont émises automatiquement. Filtrez Cost Management par la balise de déploiement pour attribuer des dépenses à un déploiement de calcul managé spécifique. Pour plus d’informations, consultez Plan et gérer les coûts de Microsoft Foundry.
Supprimer le déploiement
La suppression d’un déploiement libère l’allocation d’accélérateur et arrête immédiatement la facturation. Pour supprimer un déploiement :
client.managed_compute_deployments.begin_delete(
resource_group_name=RESOURCE_GROUP,
account_name=ACCOUNT_NAME,
deployment_name=DEPLOYMENT_NAME,
).result()
Résumé du contrôle d’accès
| Action | Rôle minimal |
|---|---|
| Créer, mettre à jour ou supprimer un déploiement de calcul managé | Contributeur Cognitive Services (ou Propriétaire Foundry/Propriétaire du compte Foundry) sur le compte Foundry |
| Consulter un déploiement ou répertorier les déploiements | Utilisateur de Cognitive Services, utilisateur Foundry, chef de projet Foundry, ou l’un des rôles ci-dessus |
| Appelez le déploiement avec Microsoft Entra ID | Utilisateur Foundry sur le compte Foundry |
| Appeler le déploiement avec une clé API | Clé de compte (aucun rôle Azure requis pour l’appel lui-même ; la récupération de clé nécessite un accès en lecture) |
Pour obtenir la liste complète des opérations du fournisseur de ressources Azure, la matrice de correspondance entre les rôles et les autorisations, ainsi que la comparaison avec les déploiements standard, consultez Contrôle d’accès basé sur les rôles pour Microsoft Foundry — opérations du plan de contrôle pour le calcul géré.
Résolution des problèmes
provisioningState: Failed
Vérifiez que la famille d’accélérateurs demandée a un quota approuvé dans la région cible et que le modèle de déploiement choisi répertorie cette famille d’accélérateurs. Un modèle et un modèle de déploiement incompatibles, par exemple un modèle publié pour une autre version de modèle, est une cause courante. Vérifiez que les deux références pointent vers des ressources de registre valides dans le registre azure-huggingface.
« Quota dépassé » lors de la création
Le compte Foundry n’a pas suffisamment de quota de calcul managé dans la région pour la famille d’accélérateurs demandée. Demandez plus de quota. Azure quota de machines virtuelles ne s'applique pas au calcul managé.
« Capacité insuffisante » dans la région
La région n’a renvoyé aucune capacité disponible pour la famille d’accélérateurs demandée. Essayez une autre famille (par exemple, déployez sur MI300X au lieu de H100), choisissez un modèle avec moins d’accélérateurs par instance ou ciblez une autre région. Les familles disposant d’une mémoire plus importante, comme MI300X, disposent souvent de la capacité nécessaire pour exécuter des modèles qui ne tiennent pas sur A100.
Erreur 404 à partir de la route /openai/v1/
Si une requête de chat-completion vers https://<account>.services.ai.azure.com/openai/v1/chat/completions renvoie une erreur 404, vérifiez que :
- Le nom du déploiement dans le corps de la demande correspond au déploiement que vous avez créé.
- Le
provisioningStatedu déploiement estSucceeded. - Le runtime du modèle expose les complétions de conversation. Certains runtimes (par exemple, TEI pour les incorporations) n’exposent pas la route de complétion de conversation ; utilisez plutôt la route documentée sur la carte de modèle.
Déploiement bloqué dans Creating depuis plus de 20 minutes
Certains modèles plus grands mettent plus de temps que les 10 à 15 minutes habituelles à se charger. Si provisioningState est toujours Creating après 20 minutes, consultez la page des détails du déploiement dans le portail Foundry pour voir un message d’état de l’opération, et vérifiez que la région sous-jacente ne s’est pas dégradée. Si le déploiement reste à l'état Creating pendant plus de 30 minutes sans aucun message d’opération, supprimez-le et réessayez. Le provisionnement est idempotent par rapport au nom du déploiement.
Contenu connexe
- Calcul géré dans Microsoft Foundry
- Vue d’ensemble du déploiement pour les modèles Microsoft Foundry
- Contrôle d’accès en fonction du rôle pour Microsoft Foundry
- Planifier et gérer les coûts pour Microsoft Foundry
- Gérer et augmenter les quotas pour les ressources
- Configurer une liaison privée pour Microsoft Foundry