opção
LarLar Skill DevOps e CI/CD deploy-model

deploy-model

microsoft/skills microsoft/skills

Cria implantações de modelos do Azure OpenAI com roteamento inteligente baseado em intenção, oferecendo suporte a predefinições rápidas, personalização total e descoberta de capacidade entre regiões e projetos.

...Expandir tudo
1
Tempo atualizado 18 de Setembro de 2026

Implantar modelo

Escopo — leia isto primeiro. Esta habilidade cria implantações de modelo fora da banda por meio da CLI do Azure / MCP / portal. Para projetos do Foundry gerenciados pelo azd (aqueles gerados a partir do azd-ai-starter-basic ou por meio do comando ` azd ai agent init`), declare as implantações nos serviços do arquivo `azure.yaml`..config.deployments[] em vez disso — o comando ` azd ai agent init` grava a entrada a partir do manifesto de exemplo e o `azd provision` cria a implantação por meio do Bicep. Consulte foundry-agent/create/create-hosted.md para conhecer o caminho recomendado. Use essa funcionalidade apenas para: (a) projetos do Foundry não gerenciados por um projeto azd, (b) implantações ad hoc fora do ciclo de vida do azd.

Ponto de entrada unificado para todos os fluxos de trabalho de implantação de modelos do Azure OpenAI. Analisa a intenção do usuário e direciona para o modo de implantação apropriado.

Referência rápida

Modo Quando usar Subhabilidade
Predefinição Implantação rápida, sem necessidade de personalização predefinição/SKILL.md
Personalizar Controle total: versão, SKU, capacidade, política de RAI customize/SKILL.md
Detecção de capacidade Descubra onde é possível fazer a implantação com uma capacidade específica capacity/SKILL.md

Detecção de intenção

Analise o prompt do usuário e encaminhe para o modo correto:

Solicitação do usuário
    │
    ├─ Implantação simples (sem modificadores)
    │  “implantar gpt-4o”, “configurar um modelo”
    │  └─> modo PRÉ-CONFIGURADO
    │
    ├─ Presença de palavras-chave de personalização
    │  “configurações personalizadas”, “escolher versão”, “selecionar SKU”,
    │  “definir capacidade para X”, “configurar filtro de conteúdo”,
    │  “implantação de PTU”, “com cota específica”
    │  └─> modo CUSTOMIZE
    │
    ├─ Consulta de capacidade/disponibilidade
    │  “descobrir onde posso implantar”, “verificar capacidade”,
    │  “qual região tem capacidade X”, “melhor região para 10 mil TPM”,
    │  “onde este modelo está disponível”
    │  └─> modo DESCOBERTA DE CAPACIDADE
    │
    └─ Ambíguo (possui meta de capacidade + intenção de implantação)
       “implantar o gpt-4o com capacidade de 10 mil na melhor região”
       └─> primeiro DESCOBERTA DE CAPACIDADE → depois PRÉ-CONFIGURAÇÃO ou PERSONALIZAÇÃO

Regras de roteamento

Sinal no prompt Rotear para Motivo
Apenas o nome do modelo, sem opções Predefinição O usuário deseja uma implantação rápida
“personalizar”, “configurar”, “escolher”, “selecionar” Personalizar O usuário deseja controle
“encontrar”, “verificar”, “onde”, “qual região”, “disponível” Capacidade O usuário deseja identificar
Número específico de capacidade + “melhor região” Capacidade → Predefinição Descobrir e, em seguida, implantar rapidamente
Número específico de capacidade + palavras-chave “personalizadas” Capacidade → Personalizar Descubra e, em seguida, implante com opções
“PTU”, “taxa de transferência provisionada” Personalizar O PTU requer a seleção de SKU
“região ideal”, “melhor região” (sem meta de capacidade) Predefinição A otimização da região é a especialidade das configurações predefinidas

Encadeamento multimodo

Algumas solicitações exigem dois modos em sequência:

Padrão: Capacidade → Implantação Quando um usuário especifica um requisito de capacidade E deseja a implantação:

  1. Execute a Descoberta de Capacidade para localizar regiões/projetos com cota suficiente
  2. Apresente os resultados ao usuário
  3. Pergunte: “Você gostaria de fazer a implantação com as configurações padrão rápidas ou personalizar as configurações?”
  4. Direcione para “Predefinição” ou “Personalizar” com base na resposta

💡 Dica: Se não tiver certeza de qual modo o usuário deseja, use “Pré-definido” (implantação rápida) como padrão. Usuários que desejam personalização geralmente usam palavras-chave explícitas como “personalizado”, “configurar” ou “com configurações específicas”.

Seleção do projeto (todos os modos)

Antes de qualquer implantação, decida em qual projeto a implantação será feita. Isso se aplica a todos os modos (predefinido, personalizado e após a descoberta de capacidade).

Ordem de resolução

  1. Verifique a variável de ambiente PROJECT_RESOURCE_ID — se estiver definida, use-a como padrão
  2. Verifique a solicitação do usuário — se o usuário tiver indicado um projeto ou região específica, use essa informação
  3. Se nenhuma das opções acima — consulte os projetos do usuário e sugira o projeto atual

Etapa de confirmação (obrigatória)

Sempre confirme o destino antes da implantação. Mostre ao usuário o que será utilizado e dê a ele a oportunidade de alterá-lo:

Implantando em:
  Projeto:  
  Região:   
  Recurso: 

Está correto? Ou escolha um projeto diferente:
  1. ✅ Sim, implantar aqui (padrão)
  2. 📋 Mostrar outros projetos nesta região
  3. 🌍 Escolher uma região diferente

Se o usuário escolher a opção 2, mostre os 5 principais projetos nessa região:

Projetos em :
  1. project-alpha (rg-alpha)
  2. project-beta (rg-beta)
  3. project-gamma (rg-gamma)
  ...

⚠️ Nunca faça uma implantação sem mostrar ao usuário qual projeto será usado. Isso evita implantações acidentais no recurso errado.

Validação pré-implantação (todos os modos)

Antes de apresentar quaisquer opções de implantação (SKU, capacidade), sempre valide estes dois aspectos:

  1. O modelo é compatível com o SKU — consulte o catálogo de modelos para confirmar se o modelo e a versão selecionados são compatíveis com o SKU de destino:

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

    Filtre pelo modelo e extraia .model.skus[].name para obter os SKUs compatíveis.

  2. A assinatura possui cota disponível — verifique se a assinatura do usuário possui cota não alocada para a combinação de SKU e modelo:

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

    Faça a correspondência pelo padrão de nome de uso OpenAI.. (por exemplo, OpenAI.GlobalStandard.gpt-4o). Capa de computação disponível = limite - valor atual.

⚠️ Aviso: Apresente apenas as opções que passarem nas duas verificações. NÃO mostre listas de SKUs codificadas — sempre faça a consulta dinamicamente. SKUs com cota disponível igual a 0 devem ser exibidos como ❌ itens informativos, não como opções selecionáveis.

💡 Gerenciamento de cota: para solicitações de aumento de cota, monitoramento de uso e solução de erros de cota, consulte a skill de cota em vez de duplicar essas orientações no texto.

Pré-requisitos

Todos os modos de implantação exigem:

  • CLI do Azure instalado e autenticado (az login)
  • Assinatura ativa do Azure com permissões de implantação
  • ID do recurso do projeto do Azure AI Foundry (ou o agente ajudará a identificá-lo por meio da variável de ambiente PROJECT_RESOURCE_ID )

Subhabilidades

  • preset/SKILL.md — Implantação rápida na região ideal com configurações padrão adequadas
  • customize/SKILL.md — Fluxo interativo guiado com controle total da configuração
  • capacity/SKILL.md — Descubra a capacidade disponível em todas as regiões e projetos
Ver no 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

Todos os arquivos

0 arquivos

Instalar deploy-model

Baixe e descompacte os arquivos das habilidades no diretório .claude/skills/.

Baixar ZIP

Clone o repositório e copie os arquivos da habilidade para o seu projeto.

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

Copiar Copiar
Configuração rápida: Copie a pasta da habilidade para .claude/skills/ O Claude detectará e utilizará automaticamente a habilidade
Repositório microsoft/skills

Habilidades relacionadas

Verification &amp; Quality Assurance
Tempo atualizado 29 de Junho de 2026
base44-cli
Tempo atualizado 29 de Junho de 2026
klingai-upgrade-migration
Tempo atualizado 3 de Julho de 2026
Railway CLI Management
Tempo atualizado 2 de Julho de 2026
OR