深夜的城市,一支出租车队仍在穿行。调度长老周盯着大屏,心里算着账:打表单随叫随到、单价最高,可空驶时段成本全压在车队头上;包月单提前收钱、单价打折,可一旦某天没人约车,预付的钱就打水漂;顺风车单最便宜,但高峰时平台一个调度,车就被全价乘客抢走。老周发现,聪明车队从不押注单一玩法,而是按客流把三套方案混着用——白天商圈用打表,写字楼通勤用包月,深夜机场用顺风车。 云上的GPU集群,就是一支隐形的出租车队。按量计费像打表,预留实例像包月,竞价实例像顺风车,FinOps工程师就是那位调度长。GPU成本计算模型要回答的,正是“每一单推理的边际成本到底是多少、怎么组合最省钱、下个月要备多少预算”这三件事。这篇文章,就用老周车队的运营故事,把云上算力的成本结构、优化策略与预测方法一次讲透。

岗位关联

掌握GPU成本模型,是AI基础设施工程师做预算、选实例、谈报价的核心能力。看懂这本“算力账本”,你就能在云账单面前从容决策,而不是月底对着数字发愁。

目录
  1. 可视化演示
  2. GPU计费模式
  3. 成本计算框架
  4. 成本曲线分析
  5. FinOps优化策略
  6. 成本预测模型
  7. 生产环境验证
  8. 工具与监控
  9. AI 应用场景
  10. Python 演示
  11. 常见误区
  12. 面试题

可视化演示

展示分布式事务两阶段提交协议的完整流程:协调者发起Prepare阶段收集投票,根据结果执行Commit或Abort。

本节配有交互动效(进入视口后自动加载,约 3KB)。

Prepare阶段 协调者向所有参与者发送Prepare消息,请求投票 参与者锁定资源并回复Yes/No coord \u2192 prepare \u2192 participants 第一阶段:协调者收集所有参与者的投票

GPU计费模式

老周调度车队时,桌上永远放着三张价目表:打表、包月、顺风车。打表单来一单算一单,随时接客、随时收车,单价最贵;包月单提前收钱、锁定折扣,可如果某天没人约车,预付的钱就白扔;顺风车单最便宜,但乘客一句“取消”,车就得空着回场。他很快明白,车队的命脉不在选哪一种,而在按场景混着用。

云上的GPU实例与这三张价目表一一对应。按量计费(On-demand)按秒或小时结算,可以随时创建、随时释放,单价最高,适合突发流量和临时实验;预留实例(Reserved)需要预付一到三年费用来锁定折扣,单价最低,但你必须承诺一个长期稳定的“出车量”;竞价实例(Spot)则以市场动态价格出售云厂商的闲置算力,价格诱人,但云厂商随时可能把资源收回。

现实中,几乎没有人只用一种模式。FinOps工程师的工作,就是像老周决定“白天打表、通勤包月、深夜顺风车”那样,为不同负载分配权重。把三种模式的加权单价写在一起,就得到了混合策略的成本公式:

理解了三张价目表,调度长心里就有了底。接下来要做的,是把“每卡时价格”翻译成老板关心的“每单推理成本”,这是第二本账。

Cmix=won×Pon+wpr×Pru+wsp×Psp\displaystyle C_{\text{mix}} = w_{\text{on}} \times P_{\text{on}} + w_{\text{pr}} \times \frac{P_{\text{r}}}{u} + w_{\text{sp}} \times P_{\text{sp}}
混合成本等于三种计费模式的加权平均,其中预留实例的有效单价要除以当前利用率,因为它预付的钱需要靠实际使用来摊销。
  1. 权重归一三种计费模式的占比加起来必须等于1,代表集群全部算力的分配方案
    won+wpr+wsp=1\displaystyle w_{\text{on}} + w_{\text{pr}} + w_{\text{sp}} = 1
  2. 按量贡献按量单价恒定,权重直接相乘得到它对混合成本的贡献
    Con=won×Pon\displaystyle C_{\text{on}} = w_{\text{on}} \times P_{\text{on}}
  3. 预留摊销预留单价看似低,但要用实际利用率u去摊销,利用率越低单价越高
    Cpr=wpr×Pru\displaystyle C_{\text{pr}} = w_{\text{pr}} \times \frac{P_{\text{r}}}{u}
  4. 总混合成本三项加总得到每卡时的综合单价
    Cmix=Con+Cpr+Csp\displaystyle C_{\text{mix}} = C_{\text{on}} + C_{\text{pr}} + C_{\text{sp}}

成本计算框架

老周算账有个习惯:不只看车队一个月烧了多少油,而是看“每跑一单,油钱、保险、维修、司机工资加起来是多少”。只有算出单均成本,他才知道哪条线路在赚钱、哪条线路在亏钱。GPU的成本账,本质上是同一本账。

成本计算框架的核心,是把集群的一切开销归拢到“总成本”这一口锅里。硬件成本分摊包括GPU服务器本身的折旧或租赁费用;电力成本包括机房供电与散热;运维成本包括值班人力、监控告警、故障恢复;此外还有网络带宽和对象存储等配套费用。这口锅的总额,就是每月的算力总成本。

有了总成本,还需要业务量的分母。对推理服务来说,业务量就是单位时间内成功完成的推理请求总数(或总Token数)。把总成本除以总请求数,就得到每个请求分摊的算力成本,也就是单位推理成本:

有了这本账,老周就能回答老板的灵魂拷问:“咱们跑一个AI客服回答,到底花几分钱?” 接下来,他还要研究一个更微妙的规律——为什么车越闲,单均成本反而越贵。

Cunit=CtotalNinference\displaystyle C_{\text{unit}} = \frac{C_{\text{total}}}{N_{\text{inference}}}
单位推理成本 = 总成本 ÷ 推理请求总数。它把“这个月花了多少钱”翻译成“每回答一个问题花了多少钱”。
  1. 分子总成本硬件、电力、运维、网络等所有费用加总
    Ctotal=Ccompute+Cpower+Cnetwork+Cops\displaystyle C_{\text{total}} = C_{\text{compute}} + C_{\text{power}} + C_{\text{network}} + C_{\text{ops}}
  2. 分母业务量同一时间段内成功完成的推理请求总数
    Ninference\displaystyle N_{\text{inference}}
  3. 相除得单价把总成本平均摊到每个推理请求上,得到单次成本
    Cunit=CtotalNinference\displaystyle C_{\text{unit}} = \frac{C_{\text{total}}}{N_{\text{inference}}}

成本曲线分析

老周发现一个反直觉的现象:包月车如果整天趴着不动,折算到每一单上的成本,比打表还贵。他画了一张图:横轴是出车率,纵轴是单均成本,包月车的曲线像滑梯一样,出车率越低,单均成本越高,最后还穿过了打表单的价格线。

这条“滑梯曲线”就是GPU成本曲线分析的核心。预留实例的有效单价并不等于合同上的折扣价,而是一个与利用率强相关的函数。假设预留实例预付后的摊单价为 P_r,实际利用率为 u,那么有效单价是:

规模效应和边际递减规律也会叠加在这条曲线上:集群规模越大,单卡采购价越低,摊薄效应越明显;但当利用率逼近100%时,排队延迟上升,服务质量下降,边际收益反而递减。老周在图上圈出那个拐点,把它贴在调度室墙上——从此每辆包月车低于35%出车率,他就果断改成打表接单。

Peff=Pru,u∗=PrPon\displaystyle P_{\text{eff}} = \frac{P_{\text{r}}}{u}, \qquad u^{*} = \frac{P_{\text{r}}}{P_{\text{on}}}
预留实例的有效单价 = 预付摊单价 ÷ 利用率。当利用率低于拐点 u* 时,预留实例比按量计费还贵,这就是“利用率拐点”。
  1. 预付摊单价预留实例的每月固定成本,记为 P_r
    Pr=预付总额合约月数\displaystyle P_{\text{r}} = \frac{\text{预付总额}}{\text{合约月数}}
  2. 有效单价把固定成本除以实际利用率,得到每个有效卡时的真实成本
    Peff=Pru\displaystyle P_{\text{eff}} = \frac{P_{\text{r}}}{u}
  3. 拐点求解令有效单价等于按量单价,解出拐点利用率
    u∗=PrPon\displaystyle u^{*} = \frac{P_{\text{r}}}{P_{\text{on}}}

FinOps优化策略

调度室墙上贴着老周的三大纪律:稳定线路包月跑,零散订单打表接,深夜机场派顺风车。这套组合拳,就是FinOps优化策略的车队版。FinOps的核心不是一味省钱,而是让每一类负载匹配最合适的计费模式。

具体来说:承载稳定流量的核心推理服务,用预留实例锁定长期折扣,相当于通勤包月;可中断的离线批处理任务和模型评测,丢进竞价实例池,被回收了就靠checkpoint续跑,相当于顺风车;突发流量和临时实验,用按量实例随时拉起,相当于打表救急。这种混合调度的节约效果,可以用节省率来量化:

除了组合计费模式,FinOps还强调成本归因:把每一笔GPU开销打到具体的业务线、模型版本和负责人头上,让“谁用电谁买单”。老周把这套策略推行了三个月,车队整体成本下降了四成,靠的不是砍车,而是让每辆车都跑在最合适的计价模式下。

S=Con−CmixCon×100%\displaystyle S = \frac{C_{\text{on}} - C_{\text{mix}}}{C_{\text{on}}} \times 100\%
节省率 =(纯按量成本 − 混合策略成本)÷ 纯按量成本。它衡量FinOps优化后相对基线省了多少钱。
  1. 纯按量基线假设全部负载都用按量计费的单价,作为对比基准
    Con=Pon×T\displaystyle C_{\text{on}} = P_{\text{on}} \times T
  2. 混合策略成本按优化后的权重组合计算出的实际成本
    Cmix=wonPon+wprPpr(u)+wspPsp\displaystyle C_{\text{mix}} = w_{\text{on}}P_{\text{on}} + w_{\text{pr}}P_{\text{pr}}(u) + w_{\text{sp}}P_{\text{sp}}
  3. 归一化比例节约额除以基线成本,得到可跨团队比较的优化幅度
    S=Con−CmixCon×100%\displaystyle S = \frac{C_{\text{on}} - C_{\text{mix}}}{C_{\text{on}}} \times 100\%

成本预测模型

老周每天早晨会看天气预报:明天下雨,打车的人多,就多安排打表车;周末商场有活动,就提前备好包月车。天气预报式的预测,到了GPU成本这里,变成了一台指数平滑模型,它用历史数据给未来“画天气”。

成本预测模型的第一步是特征工程。常用的输入包括:历史GPU利用率曲线、在线推理请求量、训练任务排期表、节假日因子,以及竞价实例的价格波动历史。第二步是选择预测方法,其中指数平滑(Exponential Smoothing)因为简单稳健,被广泛用于月度成本基线预测。它的核心思想是:本期的预测值 = 上一期实际值 与 上一期预测值的加权混合:

预测模型不仅输出未来成本基线,还会触发异常预警:当实际成本连续数日偏离预测值超过阈值时,系统自动报警,提醒调度长检查是否存在资源泄漏或流量暴涨。老周靠这套“算力天气预报”,从“月末看着账单哀叹”变成了“月初就知道哪辆车该派出场”。

y^t=αyt+(1−α)y^t−1\displaystyle \hat{y}_{t} = \alpha y_{t} + (1-\alpha)\hat{y}_{t-1}
指数平滑用平滑系数 α 权衡“最新实际值”与“历史趋势”的权重。α 越大,模型对近期变化越敏感。
  1. 平滑系数α 在0到1之间,决定模型对新鲜数据的敏感程度
    0≤α≤1\displaystyle 0 \leq \alpha \leq 1
  2. 本期观测当前时刻的实际成本数据,记为 y_t
    yt=本月GPU实际账单\displaystyle y_{t} = \text{本月GPU实际账单}
  3. 指数加权新预测等于新旧信息的加权平均,历史越久远权重越小
    y^t=αyt+(1−α)y^t−1\displaystyle \hat{y}_{t} = \alpha y_{t} + (1-\alpha)\hat{y}_{t-1}

生产环境验证

再漂亮的调度方案,也要先上路试跑。老周不会一口气把整支车队改成新计价模式,而是先挑两条线路试点,让新方案和旧方案同时跑一个月,拿数据说话。这种“先试点、后推广”的思路,在云上算力里就是生产环境验证。

生产环境验证的第一步是小流量A/B测试:把少量真实业务流量切到新的混合策略集群,其余流量留在按量基线集群,运行几天后对比单位推理成本与服务质量指标。第二步是构造峰值压测,用历史流量回放或压力工具模拟大促场景,验证竞价实例被回收时系统能否平滑切换。评估模型的预测效果,常用平均绝对百分比误差(MAPE):

验证通过的标准是成本下降、SLA不降。老周的规则很简单:连续两周混合策略单均成本低于基线10%以上,且P99延迟不恶化,才批准全量切换。这套“先试点、再压测、后推广”的流程,让每一次成本优化都踩在实打实的数据上。

MAPE=1n∑i=1n∣yi−y^iyi∣\displaystyle \text{MAPE} = \frac{1}{n}\sum_{i=1}^{n}\left|\frac{y_i - \hat{y}_i}{y_i}\right|
MAPE衡量预测值与实际值的平均偏差比例。比如0.08表示预测平均偏了8%,越接近0越好。
  1. 单点误差每个数据点的相对偏差,用绝对值避免正负抵消
    ∣yi−y^iyi∣\displaystyle \left|\frac{y_i - \hat{y}_i}{y_i}\right|
  2. 累加求和把n个样本点的相对误差全部加起来
    ∑i=1n∣yi−y^iyi∣\displaystyle \sum_{i=1}^{n}\left|\frac{y_i - \hat{y}_i}{y_i}\right|
  3. 取平均除以样本数,得到整体的平均偏差比例
    1n∑i=1n∣yi−y^iyi∣\displaystyle \frac{1}{n}\sum_{i=1}^{n}\left|\frac{y_i - \hat{y}_i}{y_i}\right|

工具与监控

老周调度室的墙上挂着一块大屏,实时滚动着每辆车的状态:出车率、单均成本、包月车空驶预警、顺风车被取消次数。大屏就是他的“车队的仪表盘”,任何异常都能在几分钟内被发现。云上算力的工具与监控,就是给GPU集群装这样一块大屏。

成本看板按业务线、模型、实例类型三个维度展示实时成本与用量,支持下钻到单台GPU的粒度;利用率监控跟踪每张卡的算力使用率,识别闲置和过载;预算预警在月成本达到预算的某个百分比时自动提醒,比如80%警告、100%封顶。预算利用率的计算也很直观:

配额管理在此基础上更进一步:为每个业务线设定GPU配额上限,超配自动排队或降级,从源头杜绝“僵尸实例”和“一人占用千卡”的无序使用。老周说,大屏不是用来好看的,它让每一分算力都有人负责,让每一笔成本都有迹可循——这才是FinOps真正的落地形态。

Bused=CusedCbudget×100%\displaystyle B_{\text{used}} = \frac{C_{\text{used}}}{C_{\text{budget}}} \times 100\%
预算利用率 = 已用成本 ÷ 总预算 × 100%。它回答“这个月钱花到哪了、还剩多少”。
  1. 已用成本从月初到当前的累计GPU花费
    Cused=∑tCday,t\displaystyle C_{\text{used}} = \sum_{t} C_{\text{day},t}
  2. 预算总额财务批复的本月算力预算上限
    Cbudget\displaystyle C_{\text{budget}}
  3. 比例换算两者相除再乘100%,得到百分比的预算消耗进度
    Bused=CusedCbudget×100%\displaystyle B_{\text{used}} = \frac{C_{\text{used}}}{C_{\text{budget}}} \times 100\%

AI 应用场景

大模型推理服务的成本看板

阶段:成本监控与优化

解决的问题:按量计费模式下账单波动大,业务方互相推诿“不是我们烧的钱”。传统方式只能等月末账单出来再复盘,无法定位成本异常的真实来源。利用单位推理成本模型,把总成本除以推理请求数,按业务线拆分Token消耗,实时定位“哪一个prompt模板在偷偷拉高成本”。

具体案例:某企业的大模型API服务日均处理1亿Token输出。通过成本看板发现某业务线的prompt模板导致平均输出Token数翻倍,单次推理成本显著高于其他线。优化模板后,该业务线单次推理成本下降40%,整体GPU账单下降15%。

离线批处理任务的竞价实例池

阶段:资源调度与弹性伸缩

解决的问题:模型评测、数据预处理、夜间批量推理等任务对中断不敏感,用按量实例跑太贵,用预留实例又浪费配额。按“顺风车”思路建设竞价实例池,配合自动checkpoint机制,实例被回收后自动从最近检查点恢复。

具体案例:某大模型训练团队将每日评测任务全部切到竞价实例池,设置30分钟checkpoint周期。实测中断恢复率达95%,该部分算力成本降低60%,训练迭代节奏完全不受影响。

年度算力预算预测

阶段:成本预测与规划

解决的问题:年初预算“拍脑袋”,年底账目对不上。利用指数平滑模型,输入历史GPU利用率、推理请求量、业务增长曲线等特征,预测未来12个月的算力成本走势,输出月度预算基线。

具体案例:某AI公司用过去12个月的成本数据训练指数平滑模型,预测下一年GPU预算。季度滚动对比显示,预测值与实际账单的偏差控制在8%以内,财务部门终于不用在年底追着基础设施团队“解释超支”。

Python 演示

python63 行
# -*- coding: utf-8 -*-"""GPU成本模型:混合计费策略选择器与单位推理成本估算""" PRICE_ONDEMAND = 0.85      # 按量单价(元/卡时)PRICE_RESERVED = 0.30      # 预留预付摊单价(元/卡时)PRICE_SPOT_BASE = 0.18     # 竞价基础单价(元/卡时)  def on_demand_cost():    """按量计费:单价恒定,不随利用率变化"""    return PRICE_ONDEMAND  def reserved_cost(utilization):    """预留实例有效单价 = 预付价 / 利用率(利用率越低单价越高)"""    return PRICE_RESERVED / utilization  def spot_cost(utilization):    """竞价实例:低价但稳定性差,模型简化为线性近似"""    return PRICE_SPOT_BASE + 0.10 * (1 - utilization)  def unit_inference_cost(total_cost, total_requests):    """单位推理成本 = 总成本 / 总请求数"""    return total_cost / total_requests  def mix_cost(utilization, w_on, w_pr, w_sp):    """混合策略下每卡时的加权单价"""    return (w_on * on_demand_cost() +            w_pr * reserved_cost(utilization) +            w_sp * spot_cost(utilization))  def find_best_mix(utilization):    """在给定利用率下枚举权重,返回最优混合策略"""    best = None    for i in range(0, 101, 5):        for j in range(0, 101 - i, 5):            k = 100 - i - j            w_on, w_pr, w_sp = i / 100.0, j / 100.0, k / 100.0            if w_on > 0.2:                continue            cost = mix_cost(utilization, w_on, w_pr, w_sp)            if best is None or cost < best[0]:                best = (cost, (w_on, w_pr, w_sp))    return best  def main():    print("利用率  全按量   最优混合  节省比例  策略(按/预/竞)")    for util in (0.3, 0.5, 0.7, 0.9):        base = mix_cost(util, 1.0, 0.0, 0.0)        cost, (w_on, w_pr, w_sp) = find_best_mix(util)        save = (base - cost) / base * 100        print("%.1f  %.3f   %.3f  %.1f%%    (%d%%/%d%%/%d%%)" % (            util, base, cost, save,            int(w_on * 100), int(w_pr * 100), int(w_sp * 100)))  if __name__ == "__main__":    main()
目的:输入GPU利用率,自动枚举按量、预留、竞价的混合权重,找出单位成本最低的计费组合,并输出相对纯按量基线的节省比例。
  1. PRICE_ONDEMAND = 0.85定义按量计费的恒定单价,这是优化的对照基线
  2. return PRICE_RESERVED / utilization预留实例有效单价随利用率反比例变化,利用率越低越贵
  3. return total_cost / total_requests单位推理成本的核心公式,成本除以业务量
  4. w_pr * reserved_cost(utilization)预留实例在混合策略中的权重贡献
  5. for i in range(0, 101, 5):以5%为步长枚举按量实例的权重
  6. if w_on > 0.2:FinOps纪律:按量只作应急,占比不超过20%
  7. best = (cost, (w_on, w_pr, w_sp))记录当前最优的成本与对应权重三元组
  8. save = (base - cost) / base * 100计算混合策略相对纯按量的节省率

常见误区

误区我预付买了三年预留实例,单价打了三折,怎么算都划算,闭眼冲就对了!

正解预留便宜的前提是用满。按有效单价公式 P_eff = P_r / u 计算,预估价0.30元、利用率只有30%时,有效单价高达1.00元,比按量的0.85元还贵。就像包月的出租车一天没跑够里程,折合每单成本比打表还高。买预留前必须先用预测模型确认未来利用率能否稳定超过拐点。

为何常见:商家展示的都是合同单价折扣,让人忽略了摊销的分母是“实际使用量”而非“购买量”。

误区竞价单价最低,把生产流量全部切过去,成本直接打三折,岂不是美滋滋?

正解竞价实例像顺风车,平台随时可能收回资源。推理服务一旦被中断,重试成本、延迟飙升、SLA违约可能完全抵消节省下来的钱。正确做法是把竞价实例用于可中断的批处理任务,并配好checkpoint自动恢复机制,而不是让它承载核心在线流量。

为何常见:只看到标价低的诱惑,忽略了“可被回收”的稳定性约束,没有评估中断概率与恢复成本。

误区选最便宜的实例类型就完事了,为什么月底账单还是爆了?

正解真正的账单 = 实例单价 × 运行时长 ÷ 利用率 + 网络 + 存储 + 运维人力。单位推理成本必须把硬件折旧、电力、值班人力全部摊进去。就像出租车成本不只看油费,还有保险、维修、司机工资。只看实例单价,就像只看油价就以为知道跑一趟机场要花多少钱。

为何常见:云厂商账单按实例条目展示,让人误以为实例单价就是成本的全部构成。

误区GPU卡不能闲着,直接把利用率干到100%,资源一点不浪费!

正解利用率过高会导致请求排队,推理P99延迟飙升,SLA不达标;也挤掉了应对突发流量的弹性余量。FinOps追求的是“合适的利用率 + 合理的计费组合”,而不是单点最高。老周的车队不会让每辆车都满载,因为那样乘客等待时间会失控,高峰期反而接不到单。

为何常见:把“资源不浪费”误解为“资源必须打满”,忽略了服务质量与弹性余量的约束。

面试题

Q1. 下列对按量计费特点的描述,正确的是哪一项?

单选题 · easy

  • A.单价最低,适合长期稳定负载
  • B.单价最高,适合突发短期负载← 正确答案
  • C.价格随市场波动,可能被回收
  • D.需要预付才能锁定一年费用

答案:B。按量计费像打表接单,随叫随到、随时释放,单价最高,适合突发流量和临时实验。长期稳定负载适合预留实例,随市场波动可能被回收的是竞价实例,需要预付的是预留实例。

Q2. 预留实例的有效单位成本,会随着利用率上升而如何变化?

单选题 · easy

  • A.随着利用率同步上升
  • B.保持恒定基本不变
  • C.随利用率上升而下降← 正确答案
  • D.先降后升呈U形走势

答案:C。预留实例的成本是预付固定的,有效单价 = 预付价 ÷ 利用率。利用率越高,每个有效卡时摊到的预付成本越少,单位成本自然下降。这就像包月车跑得越多,每单摊到的月租越便宜。

Q3. 预留实例预付摊单价为0.30元/卡时,实际利用率仅30%,有效单价约为多少?

单选题 · mid

  • A.0.30元/卡时
  • B.0.55元/卡时
  • C.0.85元/卡时
  • D.1.00元/卡时← 正确答案

答案:D。有效单价 = 0.30 ÷ 0.30 = 1.00元/卡时,此时甚至高于按量计费的0.85元。这也是“利用率拐点”的含义:利用率低于约35%时,预留实例反而不如按量划算。

Q4. 竞价实例在成本优化中最大的风险是什么?

单选题 · mid

  • A.市场单价可能过高
  • B.实例可能被平台回收← 正确答案
  • C.需要长期预付费用
  • D.无法弹性扩容缩容

答案:B。竞价实例本质是云厂商出售闲置算力,平台有优先权随时回收,就像顺风车可能被全价乘客“抢走”。因此它只适合可中断的离线批处理任务,不适合承载核心在线推理服务。

Q5. FinOps优化策略中,合理的手段包括哪些?

多选题 · mid

  • A.预留实例承载稳定负载← 正确答案
  • B.竞价实例承载中断任务← 正确答案
  • C.全量业务使用按量实例
  • D.实时监控利用率并调度← 正确答案

答案:ABD。FinOps的核心是让每类负载匹配最合适的计费模式:稳定负载用预留、可中断任务用竞价、突发流量用少量按量,同时配合实时监控动态调度。全量使用按量实例虽然灵活,但单价最高,显然不是优化手段。

Q6. 单位推理成本的计算公式是哪一项?

单选题 · easy

  • A.总成本乘以总推理次数
  • B.总成本除以总推理次数← 正确答案
  • C.总推理次数除以总成本
  • D.GPU实例数除以总成本

答案:B。单位推理成本 = 总成本 ÷ 总推理次数,相当于把车队一个月的总开销平均摊到每一单业务上。总成本乘次数会膨胀到毫无意义,反过来则是“每块钱能买几次推理”,都不是单价。

Q7. 成本预测模型中,指数平滑的核心思想是什么?

单选题 · extreme

  • A.只相信最近一期的实际数据
  • B.对新旧数据做加权混合预测← 正确答案
  • C.所有历史数据权重完全相等
  • D.直接外推线性增长趋势线

答案:B。指数平滑的公式是 ŷ_t = α·y_t + (1−α)·ŷ_{t−1},它同时考虑最新实际值和历史预测值,用平滑系数α分配权重。α越大对近期越敏感;完全相等权重违背“越近越重要”的直觉;线性外推则忽略了对波动和趋势的自适应。

Q8. 某团队把30%按量切换为预留实例,预估价0.30元,实际利用率60%,按量价0.85元,该部分成本变化约是多少?

单选题 · mid

  • A.该部分成本下降约41%← 正确答案
  • B.该部分成本下降约20%
  • C.该部分成本基本保持不变
  • D.该部分成本上升约12%

答案:A。预留有效单价 = 0.30 ÷ 0.60 = 0.50元,相比按量的0.85元,成本变化为 (0.50 − 0.85) ÷ 0.85 ≈ −41%。前提是利用率确实能达到60%,如果利用率跌破35%,预留反而会亏。

Q9. 成本曲线中的“利用率拐点”指的是什么?

单选题 · hard

  • A.超过后单位成本加速下降
  • B.低于该点预留反而不划算← 正确答案
  • C.利用率恰好等于百分之百
  • D.成本与收益相等的平衡点

答案:B。拐点 u* = P_r / P_on,是预留有效单价恰好等于按量单价的利用率。高于拐点预留更便宜,低于拐点预留比按量还贵。它提醒调度长:如果预测利用率长期低于拐点,就不要买预留实例。

Q10. 关于成本优化策略的生产环境验证,正确做法有哪些?

多选题 · hard

  • A.小流量分组测试观察成本变化← 正确答案
  • B.直接全量切换新的成本策略
  • C.压测构造峰值并对比成本曲线← 正确答案
  • D.跳过评估直接按静态配置上线

答案:AC。生产验证要先小流量A/B测试,再构造峰值压测,对比单位推理成本与SLA指标,达标后才全量推广。直接全量切换风险极高,一旦竞价回收或预留利用率不足可能引发事故;跳过评估则无法判断优化是否有效,都是FinOps的大忌。