Azure OpenAI 上给 gpt-4o 开了 200 个 PTU 的预置部署,突发时段请求溢出到标准部署,月底账单里标准部署那部分比按 token 估算高出三倍,预置那份还照小时扣满。
一开始怀疑是「路由没设上限,长 prompt 把 PTU 额度快速吃穿」,查了一圈,方向不对。
把日志和配置对完,能解释这个现象的基本就这几处。溢出到即用即付部署后按标准单价结算,不再享受预置折扣。少数情况下是预置容量闲置时仍按小时计费,不随用量退还。
还有一种情况,同一模型在另一个区域也建了部署,流量被分流却各自计费。
动手时先看两个部署的当前配置和容量
az cognitiveservices account deployment show --name ptu-gpt4o --resource-group rg-ai --account-name aoai-prod
拉预置部署的利用率指标确认是否被打满
az monitor metrics list --resource $AOAI_ID --metric ProvisionedManagedUtilization --interval PT5M
给溢出路径加并发上限并按优先级排队
python -c "print({'ptu_priority':True,'overflow_max_concurrency':8})"
剩下的就是按月对比两份部署的 token 与费用
python -c "print({'ptu_tokens':8.2e7,'overflow_tokens':1.1e7})"
别只看报错消失,验证要多做一步。溢出请求占比降到 5% 以下,账单里标准部署那条费用明显收窄,预置利用率稳定在 70% 到 85% 之间。
预置买的是容量不是折扣,用不满照样付费,溢出那部分才是按量计价的真金白银,路由上一定要设上限,否则账单没有天花板。线上能稳定复现的问题都不算难,难的是只在大流量下才出现的那种。
