Design and Implement a GenAIOps Infrastructure · Topic 3 of 4
Model Deployments, Selection, Versioning and Provisioned Throughput
AI-300 GenAIOps: choose serverless or managed compute deployments, select the right model, version deployments and size provisioned throughput units.
- 6 min
- Serverless equals pay per token; managed compute equals VMs you pay for and need quota for.
- Data Zone types keep processing inside a data zone (US, EU or APAC); Global types maximize capacity.
- PTUs give fixed hourly cost and stable latency; size with the capacity calculator.
What it is
A model deployment makes a model from the Foundry catalog callable at an endpoint under a deployment name that your app uses. How the model is hosted, and how you pay, depends on the deployment type. You also choose which model fits the job, keep versions under control, and use provisioned throughput units (PTUs) when traffic is steady and latency must be predictable.
How it works
Serverless versus managed compute
| Hosting | What you get | Billing | Typical models |
|---|---|---|---|
| Serverless API (standard deployment) | Hosted by Microsoft; you only call the API | Pay per token (or per request) | Models sold directly by Azure and many partner models |
| Managed compute | A managed online endpoint on virtual machines you choose, in your subscription | Pay for the VMs while the deployment exists | Many open models from the catalog |
Serverless needs no VM quota and scales for you, but limits and prices are set by the service. Managed compute gives dedicated capacity and control over the VM size, needs core quota for that VM family, and costs money even when idle, so delete deployments you do not use.
Deployment types for Foundry models
| Type | Processing location | Billing |
|---|---|---|
| Standard | Within the Azure geography you choose | Pay per token |
| Global Standard | Any Azure region, for the best availability and quota | Pay per token |
| Data Zone Standard | Within a data zone (US, EU or APAC) | Pay per token |
| Provisioned (regional, global or data zone) | As named | Hourly per PTU |
| Global Batch | Asynchronous jobs | About 50 percent below Global Standard, 24 hour target turnaround |
Capacity for pay per token is a tokens per minute quota per model, region and subscription. Choose a data zone type when residency matters; choose global for the broadest capacity when it does not.
Select the right model
| Criterion | Question |
|---|---|
| Task fit and quality | Does it reach the needed quality on your test set, not just public benchmarks? |
| Cost | Price per token, and the volume expected |
| Latency and throughput | Time to first token, tokens per second |
| Context window | Is the longest prompt plus response supported? |
| Modality | Text, image, audio, embeddings |
| Region and residency | Available where data must stay |
| Customization | Can it be fine-tuned if needed? |
| Safety and license | Content safety fit, license terms |
Use the catalog's model leaderboards and benchmarks to build a shortlist, then run the same evaluation dataset against each candidate. A model router deployment can pick among underlying models per request to balance quality and cost. Use smaller, cheaper models for simple tasks and larger ones only where needed.
Versioning and production strategy
- Pin the model version in production. A deployment has a version upgrade policy (
versionUpgradeOption):OnceNewDefaultVersionAvailableupgrades within two weeks of a new default,OnceCurrentVersionExpiredupgrades at retirement, andNoAutoUpgradenever upgrades, so the deployment stops working at retirement. Automatic updates apply only to Standard deployment types, and production should avoid surprise upgrades. - Models are retired on a published schedule, so track retirement dates and plan migrations.
- Apps call the deployment name. To upgrade, create a second deployment with the new version, evaluate it, shift a small share of traffic (through app configuration or a gateway such as Azure API Management), then retire the old one.
- Put deployments in Bicep so versions and capacity are reviewed in pull requests.
resource chat 'Microsoft.CognitiveServices/accounts/deployments@2025-06-01' = {
parent: foundry
name: 'chat-v2'
sku: { name: 'GlobalStandard', capacity: 50 }
properties: {
model: { format: 'OpenAI', name: modelName, version: modelVersion }
versionUpgradeOption: 'NoAutoUpgrade'
}
}
Provisioned throughput units
A PTU is a unit of reserved model processing capacity. You buy PTUs for a deployment instead of paying per token, which gives stable latency and a fixed hourly cost whatever the volume.
| Standard (pay per token) | Provisioned (PTU) | |
|---|---|---|
| Cost pattern | Grows with tokens | Fixed per hour for the reserved PTUs |
| Latency | Can vary with shared load | Predictable |
| Best for | Spiky, low or unknown volume, development | Steady high volume, production, latency targets |
| Over limit | 429 when quota exceeded | 429 when the PTUs are exhausted |
Deployment types are ProvisionedManaged, GlobalProvisionedManaged and DataZoneProvisionedManaged. Size capacity with the capacity calculator in the Foundry portal, using requests per minute and prompt and completion token counts. Each model has minimum PTU and increment sizes. Azure reservations lower the hourly price for long commitments. Watch the provisioned utilization metric for the deployment. For bursts, configure spillover: when the provisioned deployment returns a non 200 response such as 429, requests go to a standard deployment in the same Foundry resource (for all requests, or per request with the x-ms-spillover-deployment header). PTU quota is per subscription, region and deployment type, and having quota does not guarantee capacity, so create the deployment before you buy a reservation.
A worked example
A support bot has steady daytime traffic of thousands of requests per minute and a latency target. The team sizes PTUs with the calculator, buys a reservation, and keeps a smaller standard deployment as the spillover target. A new model version is deployed beside the old one as chat-v3, evaluated, and given 10 percent of traffic before cutover.
How the exam asks about this
- "Steady high volume with predictable latency." Provisioned throughput.
- "Prototype with unpredictable usage and no capacity planning." Standard (pay per token).
- "A new model version must be tested before users see it." A second deployment with the new version and gradual traffic shift.
What to remember for the exam
- Serverless equals pay per token; managed compute equals VMs you pay for and need quota for.
- Data Zone types keep processing inside a data zone (US, EU or APAC); Global types maximize capacity.
- PTUs give fixed hourly cost and stable latency; size with the capacity calculator.
- Pin versions in production and plan for retirement dates.
- Apps call the deployment name, not the model name.
PTUs cost money every hour even with zero traffic. Do not use them for idle or experimental workloads.
Common mistakes
Choosing by benchmark alone. Public scores do not match your data. Evaluate on your own set.
Auto-upgrading production. A new default version can change behaviour unexpectedly.
Leaving managed compute running. VMs bill continuously.
Check yourself
Which deployment option fits steady, high volume traffic with strict latency needs?
Provisioned throughput (PTU).
What is the difference between serverless and managed compute hosting?
Serverless is hosted by Microsoft and billed per token; managed compute runs on VMs you choose and pay for, needing core quota.
How do you upgrade a model version safely?
Create a second deployment with the new version, evaluate it, shift traffic gradually, then retire the old one.
Topic 3 of 4 in Design and Implement a GenAIOps Infrastructure
Test yourself on Design and Implement a GenAIOps Infrastructure
The full Microsoft AI-300 question bank has 650 questions, with timed practice exams and an explanation for every answer.
This study guide is independent and is not affiliated with, endorsed by, or sponsored by Microsoft. Vendor names, certification names and exam codes are trademarks of their respective owners and are used for identification only.