CtrlK
BlogDocsLog inGet started
Tessl Logo

customize

Interactive guided deployment flow for Azure OpenAI models with full customization control. Step-by-step selection of model version, SKU (GlobalStandard/Standard/ProvisionedManaged), capacity, RAI policy (content filter), and advanced options (dynamic quota, priority processing, spillover). USE FOR: custom deployment, customize model deployment, choose version, select SKU, set capacity, configure content filter, RAI policy, deployment options, detailed deployment, advanced deployment, PTU deployment, provisioned throughput. DO NOT USE FOR: quick deployment to optimal region (use preset).

Install with Tessl CLI

npx tessl i github:microsoft/github-copilot-for-azure --skill customize
What are skills?

88

4.45x

Quality

85%

Does it follow best practices?

Impact

89%

4.45x

Average score across 3 eval scenarios

Optimize this skill with Tessl

npx tessl skill review --optimize ./plugin/skills/microsoft-foundry/models/deploy-model/customize/SKILL.md
SKILL.md
Review
Evals

Customize Model Deployment

Interactive guided workflow for deploying Azure OpenAI models with full customization control over version, SKU, capacity, content filtering, and advanced options.

Quick Reference

PropertyDescription
FlowInteractive step-by-step guided deployment
CustomizationVersion, SKU, Capacity, RAI Policy, Advanced Options
SKU SupportGlobalStandard, Standard, ProvisionedManaged, DataZoneStandard
Best ForPrecise control over deployment configuration
AuthenticationAzure CLI (az login)
ToolsAzure CLI, MCP tools (optional)

When to Use This Skill

Use this skill when you need precise control over deployment configuration:

  • Choose specific model version (not just latest)
  • Select deployment SKU (GlobalStandard vs Standard vs PTU)
  • Set exact capacity within available range
  • Configure content filtering (RAI policy selection)
  • Enable advanced features (dynamic quota, priority processing, spillover)
  • PTU deployments (Provisioned Throughput Units)

Alternative: Use preset for quick deployment to the best available region with automatic configuration.

Comparison: customize vs preset

Featurecustomizepreset
FocusFull customization controlOptimal region selection
Version SelectionUser chooses from availableUses latest automatically
SKU SelectionUser chooses (GlobalStandard/Standard/PTU)GlobalStandard only
CapacityUser specifies exact valueAuto-calculated (50% of available)
RAI PolicyUser selects from optionsDefault policy only
RegionCurrent region first, falls back to all regions if no capacityChecks capacity across all regions upfront
Use CasePrecise deployment requirementsQuick deployment to best region

Prerequisites

  • Azure subscription with Cognitive Services Contributor or Owner role
  • Azure AI Foundry project resource ID (format: /subscriptions/{sub}/resourceGroups/{rg}/providers/Microsoft.CognitiveServices/accounts/{account}/projects/{project})
  • Azure CLI installed and authenticated (az login)
  • Optional: Set PROJECT_RESOURCE_ID environment variable

Workflow Overview

Complete Flow (14 Phases)

1. Verify Authentication
2. Get Project Resource ID
3. Verify Project Exists
4. Get Model Name (if not provided)
5. List Model Versions → User Selects
6. List SKUs for Version → User Selects
7. Get Capacity Range → User Configures
   7b. If no capacity: Cross-Region Fallback → Query all regions → User selects region/project
8. List RAI Policies → User Selects
9. Configure Advanced Options (if applicable)
10. Configure Version Upgrade Policy
11. Generate Deployment Name
12. Review Configuration
13. Execute Deployment & Monitor

Fast Path (Defaults)

If user accepts all defaults (latest version, GlobalStandard SKU, recommended capacity, default RAI policy, standard upgrade policy), deployment completes in ~5 interactions.


Phase Summaries

⚠️ MUST READ: Before executing any phase, load references/customize-workflow.md for the full scripts and implementation details. The summaries below describe what each phase does — the reference file contains the how (CLI commands, quota patterns, capacity formulas, cross-region fallback logic).

PhaseActionKey Details
1. Verify AuthCheck az account show; prompt az login if neededVerify correct subscription is active
2. Get Project IDRead PROJECT_RESOURCE_ID env var or prompt userARM resource ID format required
3. Verify ProjectParse resource ID, call az cognitiveservices account showExtracts subscription, RG, account, project, region
4. Get ModelList models via az cognitiveservices account list-modelsUser selects from available or enters custom name
5. Select VersionQuery versions for chosen modelRecommend latest; user picks from list
6. Select SKUQuery model catalog + subscription quota, show only deployable SKUs⚠️ Never hardcode SKU lists — always query live data
7. Configure CapacityQuery capacity API, validate min/max/step, user enters valueCross-region fallback if no capacity in current region
8. Select RAI PolicyPresent content filter optionsDefault: Microsoft.DefaultV2
9. Advanced OptionsDynamic quota (GlobalStandard), priority processing (PTU), spilloverSKU-dependent availability
10. Upgrade PolicyChoose: OnceNewDefaultVersionAvailable / OnceCurrentVersionExpired / NoAutoUpgradeDefault: auto-upgrade on new default
11. Deployment NameAuto-generate unique name, allow custom overrideValidates format: ^[\w.-]{2,64}$
12. ReviewDisplay full config summary, confirm before proceedingUser approves or cancels
13. Deploy & Monitoraz cognitiveservices account deployment create, poll statusTimeout after 5 min; show endpoint + portal link

Error Handling

Common Issues and Resolutions

ErrorCauseResolution
Model not foundInvalid model nameList available models with az cognitiveservices account list-models
Version not availableVersion not supported for SKUSelect different version or SKU
Insufficient quotaCapacity > available quotaSkill auto-searches all regions; fails only if no region has quota
SKU not supportedSKU not available in regionCross-region fallback searches other regions automatically
Capacity out of rangeInvalid capacity valuePREVENTED: Skill validates min/max/step at input (Phase 7)
Deployment name existsName conflictAuto-incremented name generation
Authentication failedNot logged inRun az login
Permission deniedInsufficient permissionsAssign Cognitive Services Contributor role
Capacity query failsAPI/permissions/network errorDEPLOYMENT BLOCKED: Will not proceed without valid quota data

Troubleshooting Commands

# Check deployment status
az cognitiveservices account deployment show --name <account> --resource-group <rg> --deployment-name <name>

# List all deployments
az cognitiveservices account deployment list --name <account> --resource-group <rg> -o table

# Check quota usage
az cognitiveservices usage list --name <account> --resource-group <rg>

# Delete failed deployment
az cognitiveservices account deployment delete --name <account> --resource-group <rg> --deployment-name <name>

Selection Guides & Advanced Topics

For SKU comparison tables, PTU sizing formulas, and advanced option details, load references/customize-guides.md.

SKU selection: GlobalStandard (production/HA) → Standard (dev/test) → ProvisionedManaged (high-volume/guaranteed throughput) → DataZoneStandard (data residency).

Capacity: TPM-based SKUs range from 1K (dev) to 100K+ (large production). PTU-based use formula: (Input TPM × 0.001) + (Output TPM × 0.002) + (Requests/min × 0.1).

Advanced options: Dynamic quota (GlobalStandard only), priority processing (PTU only, extra cost), spillover (overflow to backup deployment).


Related Skills

  • preset - Quick deployment to best region with automatic configuration
  • microsoft-foundry - Parent skill for all Azure AI Foundry operations
  • quota — For quota viewing, increase requests, and troubleshooting quota errors, defer to this skill instead of duplicating guidance
  • rbac - Manage permissions and access control

Notes

  • Set PROJECT_RESOURCE_ID environment variable to skip prompt
  • Not all SKUs available in all regions; capacity varies by subscription/region/model
  • Custom RAI policies can be configured in Azure Portal
  • Automatic version upgrades occur during maintenance windows
  • Use Azure Monitor and Application Insights for production deployments
Repository
microsoft/github-copilot-for-azure
Last updated
Created

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.