capacity

--- Découvrez la capacité disponible du modèle Azure OpenAI dans les régions et les projets. Analyse les limites de quota, compare la disponibilité et recommande les emplacements de déploiement optimaux en fonction des exigences de capacité. UTILISER POUR : trouver une capacité, vérifier le quota, où puis-je déployer, découverte de capacité, meilleure région pour la capacité, recherche de capacité multi-projets, analyse de quota, disponibilité du modèle, comparaison des régions, vérifier la disponibilité TPM. NE PAS UTILISER POUR : déploiement réel (transférer à une présélection ou personnaliser après la découverte), demandes d'augmentation de quota (diriger l'utilisateur vers Azure Portal), énumération des déploiements existants.

npx skills add https://github.com/microsoft/skills --skill capacity

Découverte de Capacité

Trouve la capacité disponible du modèle Azure OpenAI dans toutes les régions et projets accessibles. Recommande le meilleur emplacement de déploiement en fonction des exigences de capacité.

Référence Rapide

Propriété Description
Objectif Trouver où vous pouvez déployer un modèle avec une capacité suffisante
Portée Toutes les régions et projets auxquels l'utilisateur a accès
Résultat Tableau classé des régions/projets avec capacité disponible
Action Analyse en lecture seule — ne déploie PAS. Transmet à preset ou customize
Authentification Azure CLI (az login)

Quand Utiliser Cette Compétence

  • ✅ L'utilisateur demande « où puis-je déployer gpt-4o ? »
  • ✅ L'utilisateur spécifie une cible de capacité : « trouve une région avec 10K TPM pour gpt-4o »
  • ✅ L'utilisateur veut comparer la disponibilité : « quelles régions ont gpt-4o disponible ? »
  • ✅ L'utilisateur a reçu une erreur de quota et doit trouver un emplacement alternatif
  • ✅ L'utilisateur demande « meilleure région et projet pour déployer le modèle X »

Après découverte → transmet à preset ou customize pour le déploiement réel.

Scripts

Les scripts préconçus gèrent les appels API REST complexes et le traitement des données. Utilisez-les au lieu de construire manuellement les commandes.

Script Objectif Utilisation
scripts/discover_and_rank.ps1 Découverte complète : capacité + projets + classement Script principal pour la découverte de capacité
scripts/discover_and_rank.sh Identique à ci-dessus (bash) Script principal pour la découverte de capacité
scripts/query_capacity.ps1 Requête de capacité brute (pas de correspondance de projet) Vérification rapide de capacité ou listage de versions
scripts/query_capacity.sh Identique à ci-dessus (bash) Vérification rapide de capacité ou listage de versions

Flux de Travail

Phase 1 : Valider les Prérequis

az account show --query "{Subscription:name, SubscriptionId:id}" --output table

Phase 2 : Identifier le Modèle et la Version

Extrayez le nom du modèle de l'invite utilisateur. Si la version est inconnue, interrogez les versions disponibles :

.\scripts\query_capacity.ps1 -ModelName <model-name>
./scripts/query_capacity.sh <model-name>

Ceci liste les versions disponibles. Utilisez la version la plus récente sauf si l'utilisateur en spécifie une autre.

Phase 3 : Exécuter la Découverte

Exécutez le script de découverte complète avec le nom du modèle, la version et la cible de capacité minimale :

.\scripts\discover_and_rank.ps1 -ModelName <model-name> -ModelVersion <version> -MinCapacity <target>
./scripts/discover_and_rank.sh <model-name> <version> <min-capacity>

? Le script interroge automatiquement la capacité dans TOUTES les régions, fait une correspondance croisée avec les projets existants de l'utilisateur, et produit un tableau classé selon : répond à la cible → nombre de projets → capacité disponible.

Phase 3.5 : Valider le Quota d'Abonnement

Après que la découverte identifie les régions candidates, validez que l'abonnement de l'utilisateur dispose réellement de quota disponible dans chaque région. La capacité du modèle (Phase 3) montre ce que la plateforme peut supporter, mais le quota d'abonnement limite ce que cet utilisateur spécifique peut déployer.

# Pour chaque région candidate à partir des résultats de découverte :
$usageData = az cognitiveservices usage list --location <region> --subscription $SUBSCRIPTION_ID -o json 2>$null | ConvertFrom-Json

# Vérifier le quota pour chaque SKU que le modèle supporte
# Les noms de quota suivent le motif : OpenAI.<SKU>.<model-name>
$usageEntry = $usageData | Where-Object { $_.name.value -eq "OpenAI.<SKU>.<model-name>" }

if ($usageEntry) {
  $quotaAvailable = $usageEntry.limit - $usageEntry.currentValue
} else {
  $quotaAvailable = 0  # Aucun quota alloué
}
# Pour chaque région candidate à partir des résultats de découverte :
usage_json=$(az cognitiveservices usage list --location <region> --subscription "$SUBSCRIPTION_ID" -o json 2>/dev/null)

# Extraire le quota pour le SKU+modèle spécifique
quota_available=$(echo "$usage_json" | jq -r --arg name "OpenAI.<SKU>.<model-name>" \
  '.[] | select(.name.value == $name) | .limit - .currentValue')

Annotez les résultats de découverte :

Ajoutez une colonne « Quota Disponible » au résultat classé de la Phase 3 :

Région Capacité Disponible Répond à la Cible Projets Quota Disponible
eastus2 120K TPM 3 ✅ 80K
westus3 90K TPM 1 ❌ 0 (à la limite)
swedencentral 100K TPM 0 ✅ 100K

Les régions/SKUs où quotaAvailable = 0 doivent être marqués avec ❌ dans les résultats. Si aucune région n'a de quota disponible, transmettez à la compétence quota pour les demandes d'augmentation et le dépannage.

Phase 4 : Présenter les Résultats et Transmettre

Après que le script produit le tableau classé (maintenant annoté avec les infos de quota), présentez-le à l'utilisateur et demandez :

  1. ? Déploiement rapide vers la meilleure recommandation avec défauts → route vers preset
  2. ⚙️ Déploiement personnalisé avec sélection de version/SKU/capacité/RAI → route vers customize
  3. ? Vérifier un autre modèle ou cible de capacité → réexécuter Phase 2
  4. ❌ Annuler

Phase 5 : Confirmer le Projet Avant de Déployer

Avant de transmettre à preset ou customize, confirmez toujours le projet cible avec l'utilisateur. Consultez les règles de Sélection de Projet dans le routeur parent.

Si le tableau de découverte montre un exemple de projet pour la région choisie, suggérez-le comme défaut. Sinon, interrogez les projets dans cette région et laissez l'utilisateur en choisir un.

Gestion des Erreurs

Erreur Cause Résolution
« Aucune capacité trouvée » Modèle non disponible ou tous au quota Transmettez à la compétence quota pour les demandes d'augmentation et le dépannage
Erreur d'authentification du script az login expiré Réexécutez az login
Liste de versions vide Modèle non dans le catalogue de la région Essayez une région différente : ./scripts/query_capacity.sh <model> "" eastus
« Aucun projet trouvé » Aucune ressource AI Services Guide vers la compétence project/create ou Azure Portal

Compétences Associées

  • preset — Déploiement rapide après découverte de capacité
  • customize — Déploiement personnalisé après découverte de capacité
  • quota — Pour la consultation des quotas, les demandes d'augmentation et le dépannage des erreurs de quota, déférez à cette compétence au lieu de dupliquer les conseils