《互联网产品的 AI 架构·推理性能与成本工程》附录 B 成本模型与容量公式速查

把卷二用到的算式集中成可直接代入的速查:token 成本、重试放大、缓存净收益、批处理盈亏平衡、级联阈值、容量换算、配额映射、归因分解与量化收益估算;每个公式给出变量含义、代入示例、适用边界与对应章节,并附常见误用、口径提醒与一张十分钟估算表。

公式的使用边界

附录 B 的公式都是近似模型,不是精确预测。

它们的用途是:在拿不到完整数据时,给出数量级与方向;在拿到数据后,验证观测是否离谱。代入值都是示例,读者应换成自己的参数。

所有金额使用整数微元,所有延迟使用毫秒。公式中的除法向上取整,避免成本被低估。

一、单次请求成本

成本 = ceil(输入 token × 输入单价 / 1,000,000)
     + ceil(输出 token × 输出单价 / 1,000,000)

变量:

变量含义示例值
输入 token系统提示 + 历史 + 检索 + 问题1,800
输出 token实际生成长度300
输入单价每百万 token 的微元2,500
输出单价每百万 token 的微元10,000

代入示例:

输入成本 = 1800 × 2500 / 1,000,000 = 4.5 → 5 微元
输出成本 = 300 × 10000 / 1,000,000 = 3 → 3 微元
单次成本 = 8 微元

边界:不含重试、缓存折扣、批处理折扣与失败请求。完整成本见第三节。

对应章节:9.1。

二、上下文构成

输入 token = 系统提示 + 历史 + 检索片段 + 工具结果 + 用户问题

历史部分通常按轮次线性增长:

历史 token ≈ 平均每轮 token × 保留轮数

十轮示例(每轮 90 token):

保留轮数历史 token总输入(其余 220)
3270490
5450670
109001,120

判据:历史占比超过总输入 50% 时,优先考虑摘要或滑窗,而不是继续扩容上下文。

对应章节:3.1、3.3。

三、重试放大

实际成本 = 单次成本 × (1 + 重试率 × 平均重试次数)

示例:

单次成本重试率平均重试次数实际成本
8 微元2%1.08.16
8 微元9%1.59.08
8 微元20%2.011.20

注意:重试还消耗延迟预算。重试率上升时,延迟与成本同时恶化,不是线性叠加。

对应章节:9.1、12.1。

四、缓存净收益

净收益 = 命中次数 × 单次成本
       - 未命中次数 × 单次成本 × 失效率修正
       - 缓存存储与查找成本

简化判据:

命中率 > (缓存开销 / 单次成本) / (1 - 失效率)

示例:单次成本 8 微元,缓存开销折合每次 1 微元,失效率 5%:

阈值命中率 = (1 / 8) / 0.95 ≈ 13.2%

命中率低于 13.2% 时,缓存不划算。

边界:失效率包含过期结果、键冲突与租户串数据。误命中的代价往往高于未命中。

对应章节:5.1、5.3。

五、批处理盈亏平衡

离线总成本 = 作业固定开销 + 条数 × 单条离线成本
在线总成本 = 条数 × 单条在线成本

盈亏平衡条数 = 作业固定开销 / (单条在线成本 - 单条离线成本)

示例:在线 636 微元,离线 429 微元,作业开销 50,000 微元:

盈亏平衡 = 50,000 / (636 - 429) ≈ 242 条

判据:预计条数小于盈亏平衡点时,不要为这批任务单独搭离线链路。

对应章节:7.1、7.3。

六、级联阈值

级联期望成本 = 小模型成本 + (1 - 小模型通过率) × 大模型成本
直接成本 = 大模型成本

盈亏平衡通过率:

通过率 > 小模型成本 / 大模型成本

示例:小模型 2 微元,大模型 10 微元:

阈值通过率 = 2 / 10 = 20%

小模型通过率高于 20%,级联就比全部走大模型便宜。通过率低于 20% 时,级联反而更贵。

注意:通过率必须按“能力 + 输入类型”分层统计,整体通过率会掩盖局部失效。

对应章节:6.3。

七、容量换算

日请求数 = 日活 × 人均请求数
峰值 QPS = 日请求数 / 86,400 × 峰值系数
并发 = 峰值 QPS × 平均停留时间(秒)

示例:

变量值
日活1,000,000
人均请求3
峰值系数4
平均停留2.5 秒
日请求 = 3,000,000
峰值 QPS = 3,000,000 / 86,400 × 4 ≈ 138.9
并发 = 138.9 × 2.5 ≈ 347.2 → 348

判据:并发按峰值计算,不按平均;余量另加,通常 30%。

对应章节:8.1、8.2。

八、token 需求换算

日 token = 日请求数 × 单次平均 token
峰值 token/秒 = 日 token / 86,400 × 峰值系数

示例(单次输入 1,800、输出 300,日请求 3,000,000):

日 token = 3,000,000 × 2,100 = 6.3e9
峰值 token/秒 = 6.3e9 / 86,400 × 4 ≈ 291,667

注意:输入与输出的吞吐能力不同,要分别与供应商配额比较。

对应章节:8.1、8.3。

九、配额映射

租户配额(token/月) = 月度预算 / 加权单价
租户并发 = 租户峰值 QPS × 平均停留时间
共享池 = 总容量 - Σ 保底配额

示例:

租户月度预算加权单价(微元/千 token)配额(千 token)
A1,000,0006166,667
B400,000666,667
C100,000616,667

判据:保底配额之和不应超过总容量的 80%,否则共享池失去弹性。

对应章节:8.3。

十、成本归因分解

总成本变化 = 用量变化 + 单价变化 + 结构变化 + 重试变化

逐项拆解:

用量变化 = (本期请求数 - 基期请求数) × 基期单次成本
单价变化 = 本期请求数 × (本期单次成本 - 基期单次成本)
结构变化 = 本期请求数 × (本期加权单价 - 基期加权单价)
重试变化 = 本期请求数 × 基期单次成本 × (本期重试率 - 基期重试率)

示例(请求数 +100%,单次成本 +20%,重试率 2%→9%):

来源贡献
用量+100%
单价+20%
重试+7%

三项相乘,账单约为基期的 2.6 倍。只看用量,会低估 60%。

对应章节:9.2、9.3。

十一、量化收益估算

量化后成本 ≈ 原成本 × (1 - 单价降幅)
质量损失 = 原通过率 - 量化后通过率
净收益 = 成本节省 - 质量损失带来的返工成本

示例:单价降 50%,通过率从 94% 降到 89%,返工成本折算每次 3 微元:

每百次节省 = 100 × 8 × 0.5 = 400 微元
返工增加 = 5 × 3 = 15 微元
净收益 = 385 微元

判据:净收益为正且质量损失在可接受区间,才考虑量化。

对应章节:6.1。

十二、十分钟估算表

拿到一个新能力,用这张表快速估算:

1. 单次输入 token:        ______
2. 单次输出 token:        ______
3. 输入单价(微元/百万): ______
4. 输出单价(微元/百万): ______
5. 单次成本:              (1×3 + 2×4) / 1,000,000
6. 日请求数:              ______
7. 日成本:                5 × 6
8. 峰值系数:              ______
9. 峰值 QPS:              6 / 86,400 × 8
10. 并发:                 9 × 平均停留秒数
11. 重试率:               ______
12. 实际日成本:           7 × (1 + 11 × 平均重试次数)

十二行填完,数量级就有了。它不替代真实测量,但能在需求评审时挡住明显不成立的方案。

小结

公式的作用不是精确预测,而是让讨论有共同的数量基础。

同一个公式,两个人代入不同的峰值系数与重试率,会得到完全不同的结论。这时应该先对齐参数,而不是争论公式。参数来自观测,公式只负责把观测翻译成决策。

继续阅读

探索更多技术文章

浏览归档,发现更多关于系统设计、工具链和工程实践的内容。

全部文章 返回首页

「books」更多文章

  1. 《互联网产品的 AI 架构·平台化与治理》附录 C 平台化评审清单
  2. 《互联网产品的 AI 架构·平台化与治理》附录 B 能力目录与配额字段速查
  3. 《互联网产品的 AI 架构·平台化与治理》附录 A 治理角色与职责速查