花钱看不见,就管不住
AI 成本失控通常不是因为单价贵 ✗,而是因为**看不见** ✗:
某个功能悄悄重试、某类输入特别长、某个租户批量刷、某个版本比以前啰嗦 ✔ ——
这些都要到月底看账单才发现 ✗,而那时已经花出去了 ✔。
**成本可视化要做到三件事** ✔:看得见、分得清、能追责(到功能/租户)✔。
一、看得见:三条曲线
1. **当日成本曲线**(按小时 ✔)—— 看异常抬升 ✔;
2. **单位成本曲线**(每千次调用 / 每活跃用户 ✔)—— 看效率是否退化 ✔;
3. **成本构成堆叠**(输入 token / 输出 token / 重试 / 缓存未命中 ✔)—— 看钱花在哪 ✔。
**要点**:一定要把**重试成本单独拆出来** ✗ —— 它常常占 10%~30% ✔,且是纯浪费 ✔。
二、分得清:四个维度
```
功能(哪个入口)|租户(谁在用)|任务类型(交互/批量)|模型版本(换代前后)
```
四维交叉后,典型结论会变得非常具体 ✔:
"某租户的批量接口占 40% 成本,且 60% 是重试" ✔ —— 这就是可执行的优化目标 ✔。
三、能追责:告警与预算
四、三个"看不见"的常见来源
1. **重试** ✗(失败重试让成本翻倍,却只出现在错误率里 ✔);
2. **缓存未命中率上升** ✗(提示词或键变了,命中率骤降 ✔);
3. **上下文膨胀** ✗(长会话每轮都带全历史 —— 见长会话成本那篇 ✔)。
五、落地顺序
1. 先给每次调用打标签(功能/租户/模型版本 ✔)—— 这一步不改业务逻辑,收益最大 ✔;
2. 再做"当日成本 + 单位成本"两条曲线 ✔;
3. 然后拆出重试与缓存两项 ✔;
4. 最后上预算与告警 ✔。
一条判据
> 老板问"这个月为什么比上月多花 30%" ✔,你能否在 **10 分钟内**说出主要是**哪个功能、哪类请求** ✔?
> 不能,说明成本还没有被可视化 ✗。