オプション
家 Skill DevOps と CI/CD deploy-model

deploy-model

microsoft/skills microsoft/skills

インテリジェントな意図ベースのルーティング機能を備えたAzure OpenAIモデルのデプロイメントを作成し、クイックプリセット、完全なカスタマイズ、およびリージョンやプロジェクトを横断した容量の検出をサポートします。

...すべて拡張します
1
更新された時間 2026年9月18日

モデルのデプロイ

適用範囲 — まずこちらをお読みください。このスキルは、Azure CLI / MCP / ポータルを介して、アウトオブバンドでモデルのデプロイを作成します。azd が管理する Foundry プロジェクト(azd-ai-starter-basicから、またはazd ai agent init を通じて生成されたもの)については、azure.yaml の services セクションでデプロイを宣言してください.config.deployments[]を使用する場合 —azd ai agent init はサンプルマニフェストからエントリを書き出し、azd provision はBicep を通じてデプロイを作成します。推奨手順については、foundry-agent/create/create-hosted.md を参照してください。 このスキルは、以下の場合にのみ使用してください:(a) azd プロジェクトによって管理されていない Foundry プロジェクト、(b) azd ライフサイクル外のアドホックなデプロイ。

すべての Azure OpenAI モデルデプロイメントワークフローの統一されたエントリポイント。ユーザーの意図を分析し、適切なデプロイメントモードへルーティングします。

クイックリファレンス

モード 使用すべき場合 サブスキル
プリセット 迅速な導入、カスタマイズ不要 preset/SKILL.md
カスタマイズ 完全な制御:バージョン、SKU、容量、RAIポリシー customize/SKILL.md
キャパシティの検出 特定の容量でデプロイ可能な場所を特定 capacity/SKILL.md

意図の検出

ユーザーのプロンプトを分析し、適切なモードにルーティングします:

ユーザーのプロンプト
    │
    ├─ シンプルなデプロイ(修飾子なし)
    │  "deploy gpt-4o", "set up a model"
    │  └─> PRESETモード
    │
    ├─ カスタマイズキーワードが含まれる場合
    │  "カスタム設定", "バージョンを選択", "SKUを選択",
    │  "容量をXに設定", "コンテンツフィルターを設定",
    │  「PTUデプロイ」、「特定のクォータで」
    │  └─> CUSTOMIZEモード
    │
    ├─ 容量/可用性の照会
    │  「デプロイ可能な場所を探す」、「容量を確認」、
    │  「Xの容量があるリージョンは?」、「10K TPMに最適なリージョンは?」、
    │  「このモデルはどこで利用可能か」
    │  └─> 容量調査モード
    │
    └─ 曖昧(容量目標とデプロイ意図の両方を含む)
       「最適なリージョンに10Kの容量でGPT-4oをデプロイする」
       └─> まずCAPACITY DISCOVERY → その後PRESETまたはCUSTOMIZE

ルーティングルール

プロンプト内のシグナル ルーティング先 理由
モデル名のみ、オプションなし プリセット ユーザーが迅速な導入を希望している
「カスタム」、「設定」、「選択」、「選ぶ」 カスタマイズ ユーザーが制御を望んでいる
「検索」、「確認」、「どこ」、「どの地域」、「利用可能」 容量 ユーザーは状況把握を望んでいる
具体的な容量数値 + 「最適なリージョン」 容量 → プリセット 検出後、迅速にデプロイ
具体的な容量数値 + 「カスタム」キーワード 容量 → カスタマイズ 検出後、オプションを指定して展開
「PTU」、「プロビジョニング済みスループット」 カスタマイズ PTUにはSKUの選択が必要です
「最適なリージョン」、「最適なリージョン」(容量目標なし) プリセット リージョンの最適化はプリセットの得意分野です

マルチモード・チェイニング

一部のプロンプトでは、2つのモードを順次実行する必要があります:

パターン:容量 → デプロイ ユーザーが容量要件を指定し、かつデプロイを希望する場合:

  1. キャパシティディスカバリーを実行し、十分なクォータを持つリージョン/プロジェクトを特定する
  2. 調査結果をユーザーに提示する
  3. クイックデフォルトでデプロイしますか、それとも設定をカスタマイズしますか?」と尋ねる
  4. 回答に応じて「プリセット」または「カスタマイズ」へ誘導する

💡ヒント:ユーザーがどちらのモードを希望しているか不明な場合は、デフォルトで「プリセット」(クイックデプロイ)に設定します。カスタマイズを希望するユーザーは、通常、「カスタム」、「構成」、「特定の設定で」といった明確なキーワードを使用します。

プロジェクトの選択(全モード)

デプロイを行う前に、デプロイ先のプロジェクトを決定します。これはすべてのモード(プリセット、カスタマイズ、および容量検出後)に適用されます。

決定順序

  1. PROJECT_RESOURCE_ID環境変数を確認する— 設定されている場合は、それをデフォルトとして使用する
  2. ユーザーへのプロンプトを確認する— ユーザーが特定のプロジェクトまたはリージョンを指定した場合は、それを使用する
  3. いずれも該当しない場合— ユーザーのプロジェクトを照会し、現在のプロジェクトを提案する

確認手順(必須)

デプロイ前には必ず対象を確認してください。ユーザーに何が使用されるかを表示し、変更する機会を提供します:

デプロイ先:
  プロジェクト:  
  リージョン:   
  リソース:

これで正しいですか? または別のプロジェクトを選択してください:
  1. ✅ はい、ここにデプロイする(デフォルト)
  2. 📋 このリージョン内の他のプロジェクトを表示
  3. 🌍 別のリージョンを選択

ユーザーがオプション 2 を選択した場合は、そのリージョン内のトップ 5 のプロジェクトを表示します:

  内のプロジェクト:
  1. project-alpha (rg-alpha)
  2. project-beta (rg-beta)
  3. project-gamma (rg-gamma)
  ...

⚠️どのプロジェクトが使用されるかをユーザーに表示せずにデプロイを行わないでください。これにより、誤って間違ったリソースにデプロイしてしまうことを防ぎます。

デプロイ前の検証(全モード)

デプロイメントオプション(SKU、容量)を表示する前に、必ず以下の2点を確認してください:

  1. モデルが SKU をサポートしていること— モデルカタログをクエリして、選択したモデルとバージョンが対象の SKU をサポートしていることを確認してください:

    az cognitiveservices model list --location --subscription -o json
    

    モデルでフィルタリングし、.model.skus[].name を抽出して、サポートされている SKU を確認します。

  2. サブスクリプションに利用可能なクォータがあるか— ユーザーのサブスクリプションに、SKUとモデルの組み合わせに対して未割り当てのクォータがあることを確認します:

    az cognitiveservices usage list --location --subscription -o json
    

    使用量名のパターン「OpenAI..」(例:OpenAI.GlobalStandard.gpt-4o)に一致するものを抽出します。利用可能量は「制限値 - 現在の使用量」で計算されます。

⚠️警告:両方のチェックに合格したオプションのみを表示してください。ハードコーディングされたSKUリストは表示しないでください。常に動的にクエリを実行してください。利用可能なクォータが0のSKUは、選択可能なオプションではなく、❌ 情報項目として表示する必要があります。

💡クォータ管理:クォータ増量のリクエスト、使用状況の監視、およびクォータエラーのトラブルシューティングについては、そのガイダンスを本文内に重複して記載するのではなく、クォータスキルに委ねてください。

前提条件

すべてのデプロイモードで以下が必要です:

  • Azure CLI がインストールされ、認証済みであること(az login
  • デプロイ権限を持つ有効な Azure サブスクリプション
  • Azure AI Foundry プロジェクトのリソース ID(ない場合は、エージェントがPROJECT_RESOURCE_ID環境変数を通じてこれを検出します)

サブスキル

  • preset/SKILL.md— 適切なデフォルト設定による最適なリージョンへの迅速なデプロイ
  • customize/SKILL.md— 設定を完全に制御できる、対話型のガイド付きフロー
  • capacity/SKILL.md— リージョンおよびプロジェクト全体で利用可能な容量を確認
GitHubで見る
---
name: deploy-model
description: Creates Azure OpenAI model deployments with intelligent intent-based routing, supporting quick presets, full customization, and capacity discovery across regions and projects.
license: MIT
---

# Deploy Model

> **Scope — read this first.** This skill creates model deployments **out-of-band** via Azure CLI / MCP / portal. For azd-managed Foundry projects (those scaffolded from `azd-ai-starter-basic` or via `azd ai agent init`), declare deployments in `azure.yaml services.<name>.config.deployments[]` instead — `azd ai agent init` writes the entry from the sample manifest and `azd provision` creates the deployment through Bicep. See [foundry-agent/create/create-hosted.md](../../foundry-agent/create/create-hosted.md) for the Golden Path. Use this skill only for: (a) Foundry projects not managed by an azd project, (b) ad-hoc deployments outside the azd lifecycle.

Unified entry point for all Azure OpenAI model deployment workflows. Analyzes user intent and routes to the appropriate deployment mode.

## Quick Reference

| Mode | When to Use | Sub-Skill |
|------|-------------|-----------|
| **Preset** | Quick deployment, no customization needed | [preset/SKILL.md](preset/SKILL.md) |
| **Customize** | Full control: version, SKU, capacity, RAI policy | [customize/SKILL.md](customize/SKILL.md) |
| **Capacity Discovery** | Find where you can deploy with specific capacity | [capacity/SKILL.md](capacity/SKILL.md) |

## Intent Detection

Analyze the user's prompt and route to the correct mode:

```
User Prompt
    │
    ├─ Simple deployment (no modifiers)
    │  "deploy gpt-4o", "set up a model"
    │  └─> PRESET mode
    │
    ├─ Customization keywords present
    │  "custom settings", "choose version", "select SKU",
    │  "set capacity to X", "configure content filter",
    │  "PTU deployment", "with specific quota"
    │  └─> CUSTOMIZE mode
    │
    ├─ Capacity/availability query
    │  "find where I can deploy", "check capacity",
    │  "which region has X capacity", "best region for 10K TPM",
    │  "where is this model available"
    │  └─> CAPACITY DISCOVERY mode
    │
    └─ Ambiguous (has capacity target + deploy intent)
       "deploy gpt-4o with 10K capacity to best region"
       └─> CAPACITY DISCOVERY first → then PRESET or CUSTOMIZE
```

### Routing Rules

| Signal in Prompt | Route To | Reason |
|------------------|----------|--------|
| Just model name, no options | **Preset** | User wants quick deployment |
| "custom", "configure", "choose", "select" | **Customize** | User wants control |
| "find", "check", "where", "which region", "available" | **Capacity** | User wants discovery |
| Specific capacity number + "best region" | **Capacity → Preset** | Discover then deploy quickly |
| Specific capacity number + "custom" keywords | **Capacity → Customize** | Discover then deploy with options |
| "PTU", "provisioned throughput" | **Customize** | PTU requires SKU selection |
| "optimal region", "best region" (no capacity target) | **Preset** | Region optimization is preset's specialty |

### Multi-Mode Chaining

Some prompts require two modes in sequence:

**Pattern: Capacity → Deploy**
When a user specifies a capacity requirement AND wants deployment:
1. Run **Capacity Discovery** to find regions/projects with sufficient quota
2. Present findings to user
3. Ask: "Would you like to deploy with **quick defaults** or **customize settings**?"
4. Route to **Preset** or **Customize** based on answer

> 💡 **Tip:** If unsure which mode the user wants, default to **Preset** (quick deployment). Users who want customization will typically use explicit keywords like "custom", "configure", or "with specific settings".

## Project Selection (All Modes)

Before any deployment, resolve which project to deploy to. This applies to **all** modes (preset, customize, and after capacity discovery).

### Resolution Order

1. **Check `PROJECT_RESOURCE_ID` env var** — if set, use it as the default
2. **Check user prompt** — if user named a specific project or region, use that
3. **If neither** — query the user's projects and suggest the current one

### Confirmation Step (Required)

**Always confirm the target before deploying.** Show the user what will be used and give them a chance to change it:

```
Deploying to:
  Project:  <project-name>
  Region:   <region>
  Resource: <resource-group>

Is this correct? Or choose a different project:
  1. ✅ Yes, deploy here (default)
  2. 📋 Show me other projects in this region
  3. 🌍 Choose a different region
```

If user picks option 2, show top 5 projects in that region:

```
Projects in <region>:
  1. project-alpha (rg-alpha)
  2. project-beta (rg-beta)
  3. project-gamma (rg-gamma)
  ...
```

> ⚠️ **Never deploy without showing the user which project will be used.** This prevents accidental deployments to the wrong resource.

## Pre-Deployment Validation (All Modes)

Before presenting any deployment options (SKU, capacity), always validate both of these:

1. **Model supports the SKU** — query the model catalog to confirm the selected model+version supports the target SKU:
   ```bash
   az cognitiveservices model list --location <region> --subscription <sub-id> -o json
   ```
   Filter for the model, extract `.model.skus[].name` to get supported SKUs.

2. **Subscription has available quota** — check that the user's subscription has unallocated quota for the SKU+model combination:
   ```bash
   az cognitiveservices usage list --location <region> --subscription <sub-id> -o json
   ```
   Match by usage name pattern `OpenAI.<SKU>.<model-name>` (e.g., `OpenAI.GlobalStandard.gpt-4o`). Compute `available = limit - currentValue`.

> ⚠️ **Warning:** Only present options that pass both checks. Do NOT show hardcoded SKU lists — always query dynamically. SKUs with 0 available quota should be shown as ❌ informational items, not selectable options.

> 💡 **Quota management:** For quota increase requests, usage monitoring, and troubleshooting quota errors, defer to the [quota skill](../../quota/quota.md) instead of duplicating that guidance inline.

## Prerequisites

All deployment modes require:
- Azure CLI installed and authenticated (`az login`)
- Active Azure subscription with deployment permissions
- Azure AI Foundry project resource ID (or agent will help discover it via `PROJECT_RESOURCE_ID` env var)

## Sub-Skills

- **[preset/SKILL.md](preset/SKILL.md)** — Quick deployment to optimal region with sensible defaults
- **[customize/SKILL.md](customize/SKILL.md)** — Interactive guided flow with full configuration control
- **[capacity/SKILL.md](capacity/SKILL.md)** — Discover available capacity across regions and projects

すべてのファイル

0件のファイル

deploy-modelをインストール

スキルファイルをダウンロードし、.claude/skills/ ディレクトリに解凍してください。

ZIPをダウンロード

リポジトリをクローンし、スキルファイルをプロジェクトにコピーしてください。

git clone https://github.com/microsoft/skills/tree/main/.github/plugins/azure-skills/skills/microsoft-foundry/models/deploy-model # Copy SKILL.md to your .claude/skills/ directory

コピー コピー
クイックセットアップ: スキルフォルダを .claude/skills/ にコピーしてください。 Claude が自動的にそのスキルを検出して使用します。
リポジトリ microsoft/skills

関連スキル

Verification &amp; Quality Assurance
更新された時間 2026年6月29日
base44-cli
更新された時間 2026年6月29日
klingai-upgrade-migration
更新された時間 2026年7月3日
Railway CLI Management
更新された時間 2026年7月2日
OR