capacity

作成者: microsoft

利用可能なAzure OpenAIモデル容量をリージョンやプロジェクト全体で発見します。クォータ制限を分析し、可用性を比較し、最適なデプロイを推奨します…

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

Capacity Discovery

Finds available Azure OpenAI model capacity across all accessible regions and projects. Recommends the best deployment location based on capacity requirements.

Quick Reference

PropertyDescription
PurposeFind where you can deploy a model with sufficient capacity
ScopeAll regions and projects the user has access to
OutputRanked table of regions/projects with available capacity
ActionRead-only analysis — does NOT deploy. Hands off to preset or customize
AuthenticationAzure CLI (az login)

When to Use This Skill

  • ✅ User asks "where can I deploy gpt-4o?"
  • ✅ User specifies a capacity target: "find a region with 10K TPM for gpt-4o"
  • ✅ User wants to compare availability: "which regions have gpt-4o available?"
  • ✅ User got a quota error and needs to find an alternative location
  • ✅ User asks "best region and project for deploying model X"

After discovery → hand off to preset or customize for actual deployment.

Scripts

Pre-built scripts handle the complex REST API calls and data processing. Use these instead of constructing commands manually.

ScriptPurposeUsage
scripts/discover_and_rank.ps1Full discovery: capacity + projects + rankingPrimary script for capacity discovery
scripts/discover_and_rank.shSame as above (bash)Primary script for capacity discovery
scripts/query_capacity.ps1Raw capacity query (no project matching)Quick capacity check or version listing
scripts/query_capacity.shSame as above (bash)Quick capacity check or version listing

Workflow

Phase 1: Validate Prerequisites

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

Phase 2: Identify Model and Version

Extract model name from user prompt. If version is unknown, query available versions:

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

This lists available versions. Use the latest version unless user specifies otherwise.

Phase 3: Run Discovery

Run the full discovery script with model name, version, and minimum capacity target:

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

💡 The script automatically queries capacity across ALL regions, cross-references with the user's existing projects, and outputs a ranked table sorted by: meets target → project count → available capacity.

Phase 3.5: Validate Subscription Quota

After discovery identifies candidate regions, validate that the user's subscription actually has available quota in each region. Model capacity (from Phase 3) shows what the platform can support, but subscription quota limits what this specific user can deploy.

# For each candidate region from discovery results:
$usageData = az cognitiveservices usage list --location <region> --subscription $SUBSCRIPTION_ID -o json 2>$null | ConvertFrom-Json

# Check quota for each SKU the model supports
# Quota names follow pattern: 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  # No quota allocated
}
# For each candidate region from discovery results:
usage_json=$(az cognitiveservices usage list --location <region> --subscription "$SUBSCRIPTION_ID" -o json 2>/dev/null)

# Extract quota for specific SKU+model
quota_available=$(echo "$usage_json" | jq -r --arg name "OpenAI.<SKU>.<model-name>" \
  '.[] | select(.name.value == $name) | .limit - .currentValue')

Annotate discovery results:

Add a "Quota Available" column to the ranked output from Phase 3:

RegionAvailable CapacityMeets TargetProjectsQuota Available
eastus2120K TPM3✅ 80K
westus390K TPM1❌ 0 (at limit)
swedencentral100K TPM0✅ 100K

Regions/SKUs where quotaAvailable = 0 should be marked with ❌ in the results. If no region has available quota, hand off to the quota skill for increase requests and troubleshooting.

Phase 4: Present Results and Hand Off

After the script outputs the ranked table (now annotated with quota info), present it to the user and ask:

  1. 🚀 Quick deploy to top recommendation with defaults → route to preset
  2. ⚙️ Custom deploy with version/SKU/capacity/RAI selection → route to customize
  3. 📊 Check another model or capacity target → re-run Phase 2
  4. ❌ Cancel

Phase 5: Confirm Project Before Deploying

Before handing off to preset or customize, always confirm the target project with the user. See the Project Selection rules in the parent router.

If the discovery table shows a sample project for the chosen region, suggest it as the default. Otherwise, query projects in that region and let the user pick.

Error Handling

ErrorCauseResolution
"No capacity found"Model not available or all at quotaHand off to quota skill for increase requests and troubleshooting
Script auth erroraz login expiredRe-run az login
Empty version listModel not in region catalogTry a different region: ./scripts/query_capacity.sh <model> "" eastus
"No projects found"No AI Services resourcesGuide to project/create skill or Azure Portal

Related Skills

  • preset — Quick deployment after capacity discovery
  • customize — Custom deployment after capacity discovery
  • quota — For quota viewing, increase requests, and troubleshooting quota errors, defer to this skill instead of duplicating guidance

microsoftのその他のスキル

oss-growth
microsoft
OSS成長ハッカーのペルソナ
agent-framework-azure-ai-py
microsoft
Microsoft Agent Framework Python SDK(agent-framework-azure-ai)を使用してAzure AI Foundryエージェントを構築します。AzureAIAgentsProviderを使用した永続的なエージェントの作成、ホスト型ツール(コードインタープリター、ファイル検索、ウェブ検索)の使用、MCPサーバーの統合、会話スレッドの管理、ストリーミング応答の実装時に使用します。関数ツール、構造化出力、マルチツールエージェントをカバーします。
development
airunway-aks-setup
microsoft
AKS上でAI Runwayをセットアップ — ベアクラスターからモデル実行まで。クラスター検証、コントローラーインストール、GPU評価、プロバイダー設定、初回デプロイをカバー。対象: 「AI Runwayのセットアップ」「AKSクラスターのオンボード」「AI Runwayのインストール」「airunway setup」「AKSへのモデルデプロイ」「AKSでのGPU推論」「AKSでのKAITOセットアップ」「AKSでのLLM実行」「AKSでのvLLM」「AKSでのモデルサービング設定」「AI Runwayコントローラー」。
devops
appinsights-instrumentation
microsoft
Azure Application Insightsを使用したWebアプリのインストルメンテーションに関するガイダンス。テレメトリパターン、SDKセットアップ、構成リファレンスを提供します。対象: アプリのインストルメンテーション方法、App Insights SDK、テレメトリパターン、App Insightsとは何か、Application Insightsガイダンス、インストルメンテーション例、APMベストプラクティス。
devops
applicationinsights-web-ts
microsoft
Application Insights JavaScript SDK(@microsoft/applicationinsights-web)を使用してブラウザ/Webアプリを計測します。Real User Monitoring(RUM)— ページビュー、クリック、AJAX/fetch依存関係、例外、カスタムイベント、およびバックエンドのOpenTelemetryトレースに関連付けられたブラウザ側のGenAIエージェントトレースに使用します。SDKローダースクリプトとnpmセットアップ、フレームワーク拡張機能(React、React Native、Angular)、Click Analytics、テレメトリ初期化子、およびブラウザから生成されるエージェント/ツール/モデルスパンのOTel GenAIセマンティック規約をカバーします。
devops
azure-ai-anomalydetector-java
microsoft
Azure AI Anomaly Detector SDK for Javaを使用して異常検出アプリケーションを構築します。単変量/多変量異常検出、時系列分析、またはAIを活用したモニタリングを実装する際に使用します。
development
azure-ai-language-conversations-py
microsoft
azure-ai-language-conversations Python SDKを使用して会話言語理解(CLU)を実装します。ConversationAnalysisClientを使用して会話の意図とエンティティを分析する場合、NLP機能を構築する場合、またはアプリケーションに言語理解を統合する場合に使用します。
development
azure-ai-ml-py
microsoft
Azure Machine Learning SDK v2 for Python。MLワークスペース、ジョブ、モデル、データセット、コンピュート、パイプラインに使用します。 トリガー: 「azure-ai-ml」、「MLClient」、「ワークスペース」、「モデルレジストリ」、「トレーニングジョブ」、「データセット」。
development