# Deploy Model > Skill unificado de despliegue de modelos de Azure OpenAI con enrutado por intención: despliegues rápidos con preset, despliegues personalizados y descubrimiento de capacidad entre regiones y proyectos. Fuente: https://skillsagentes.com/skills/microsoft/azure-skills/deploy-model Markdown: https://skillsagentes.com/skills/microsoft/azure-skills/deploy-model.md Repositorio: https://github.com/microsoft/azure-skills Autor: microsoft Licencia: MIT Actualizado: el mes pasado Coste de contexto: 162 tok instalada, 1.8k tok al activarse, 26.1k tok con todos los archivos del bundle Bundle: 17 archivos, 102 KB Permisos que pide: ninguno declarado ## Instalación Un skill son archivos markdown: los mismos archivos valen para cualquier agente y lo único que cambia es el directorio de destino, es decir la bandera `--agent`. Añade `-g` para instalarlo en todos los proyectos de la máquina. ```bash # Claude Code npx -y skills add microsoft/azure-skills --skill deploy-model --agent claude-code # Cursor npx -y skills add microsoft/azure-skills --skill deploy-model --agent cursor # Codex npx -y skills add microsoft/azure-skills --skill deploy-model --agent codex # Gemini CLI npx -y skills add microsoft/azure-skills --skill deploy-model --agent gemini # Windsurf npx -y skills add microsoft/azure-skills --skill deploy-model --agent windsurf # Cline npx -y skills add microsoft/azure-skills --skill deploy-model --agent cline ``` ## Qué hace - Es el skill unificado de despliegue de modelos de Azure OpenAI, con enrutado por intención. - Cubre tres caminos: despliegue rápido con preset, despliegue totalmente personalizado (versión, SKU, capacidad, política RAI) y descubrimiento de capacidad entre regiones y proyectos. - Crea los despliegues **fuera de banda**, vía CLI de Azure, MCP o portal. - Para proyectos Foundry gestionados por azd, el propio archivo indica declarar los despliegues en `azure.yaml` en vez de usar este skill. ## Cuándo usarla - Se quiere desplegar o aprovisionar un modelo de Azure OpenAI. - Se quiere encontrar capacidad, comprobar disponibilidad o saber en qué región desplegar. ## Cuándo no - Para listar despliegues existentes, borrarlos, crear agentes o crear proyectos: el archivo remite a otras herramientas. ## Qué la activa - "despliega gpt en Azure OpenAI" - "¿dónde puedo desplegar este modelo?" - "crea un deployment de modelo" ## Antes de instalar - Para proyectos scaffoldados con `azd ai agent init`, los despliegues se declaran en `azure.yaml` y los crea `azd provision` vía Bicep. - Variables de entorno: BASE_URL, DEPLOYMENT_NAME, DEPLOYMENT_PATH, ENCODED_PATH, ENCODED_SUB, FOUNDRY_RESOURCE, GUID_HEX, PROJECT_NAME, RESOURCE_GROUP, SUBSCRIPTION_ID - makes network requests - reads environment config ## Archivos - SKILL.md — 7 KB - TEST_PROMPTS.md — 3 KB - capacity/SKILL.md — 7 KB - capacity/scripts/discover_and_rank.ps1 — 5 KB - capacity/scripts/discover_and_rank.sh — 5 KB - capacity/scripts/query_capacity.ps1 — 3 KB - capacity/scripts/query_capacity.sh — 3 KB - customize/EXAMPLES.md — 4 KB - customize/SKILL.md — 9 KB - customize/references/customize-guides.md — 3 KB - customize/references/customize-workflow.md — 13 KB - preset/EXAMPLES.md — 3 KB - preset/SKILL.md — 5 KB - preset/references/preset-workflow.md — 22 KB - preset/references/workflow.md — 6 KB - scripts/generate_deployment_url.ps1 — 2 KB - scripts/generate_deployment_url.sh — 3 KB ## SKILL.md Reproducido tal cual desde microsoft/azure-skills bajo MIT. Esta sección es el documento original y está en inglés. # 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 agent init`), declare deployments in `azure.yaml services.ai-project.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: Region: Resource: 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 : 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 --subscription -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 --subscription -o json ``` Match by usage name pattern `OpenAI..` (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 - Microsoft 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 ## Dónde encaja - Categoría: [DevOps e infraestructura](https://skillsagentes.com/categorias/devops-infraestructura.md) — Despliegues, contenedores, IaC y flujos de gestión de incidentes. - Creador: [microsoft](https://skillsagentes.com/creators/microsoft.md) — 43 skills en el directorio - [Todas las skills](https://skillsagentes.com/skills.md) - [Ranking de instalaciones](https://skillsagentes.com/ranking.md) ## Otras skills del mismo repositorio - [Microsoft Foundry](https://skillsagentes.com/skills/microsoft/azure-skills/microsoft-foundry.md): Despliega, evalúa, ajusta y gestiona agentes de Foundry de punta a punta con azd: agentes hospedados, evaluación por lotes y continua, optimizador de prompts y fine-tuning (SFT/DPO/RFT). - [Azure Prepare](https://skillsagentes.com/skills/microsoft/azure-skills/azure-prepare.md): Prepara proyectos Azure basados en azd para desplegar: genera azure.yaml, la infraestructura (Bicep o Terraform) y los Dockerfiles del flujo del Azure Developer CLI. - [Azure Diagnostics](https://skillsagentes.com/skills/microsoft/azure-skills/azure-diagnostics.md): Depura incidencias de producción en Azure con AppLens, Azure Monitor, resource health y triaje seguro. Cubre App Service, Container Apps, Functions, AKS, VMs y mensajería. - [Azure Validate](https://skillsagentes.com/skills/microsoft/azure-skills/azure-validate.md): Validación previa al despliegue en Azure. Comprueba en profundidad la configuración, la infraestructura (Bicep o Terraform), los roles RBAC, los permisos de identidad administrada y los prerrequisitos. - [Azure App Onboard](https://skillsagentes.com/skills/microsoft/azure-skills/azure-app-onboard.md): Orquestador de punta a punta: de una idea o una app existente hasta un despliegue en Azure, con estimación de costes y aprobación previa. Analiza tu app y detecta los servicios adecuados. --- Skills Agentes · [Índice de páginas en markdown](https://skillsagentes.com/sitemap.md) · [Inicio](https://skillsagentes.com/index.md)