先定预算,再谈优化
没有预算的"优化"没有终点:改到什么时候算够?先给每个 AI 功能定一条预算线(单位成本 + P95 延迟),
优化就有了判据 —— 达标即停,超了就查。
预算怎么定
- 单位成本:单次调用均价(按功能分组),乘以预期调用量得到月度上限;
- 延迟:用户能接受的 P95(交互式通常 3~5 秒内首字、10 秒内出结论);
- 配额:单租户/单用户的量级上限(防"一个用户拖垮所有人",见限流那篇)。
定预算的顺序是从业务倒推:这个功能值多少钱(客单价 × 转化提升)→ 能花多少 → 反推单位成本上限。
反过来"先看花了多少再想办法省"通常会被动。
延迟预算要分两段
- 首字延迟(TTFT)预算:决定"有没有在动"的体感 —— 超了优先并行化前置步骤 / 加流式;
- 总时长预算:决定"读完要多久" —— 超了优先缩短输出(要求"先给结论、限长")。
两段超了,修法完全不同,所以必须分开设。
超标了怎么办(排查顺序)
- 看是不是重试放大:失败重试会把成本与延迟同时抬高,且只在错误率里露出;
- 看上下文是否过长:把整份文档重复塞进每轮是常见浪费;
- 看有没有缓存机会:重复问题、模板化分类都能缓存;
- 看能不能换小模型:简单任务路由到小模型(见降本那篇);
- 最后才考虑牺牲能力:降级要显式、可感知、可回滚。
三条纪律
- 预算与质量一起看:只盯预算必然把质量赔进去,每次优化都要记质量指标;
- 预算要版本化:模型/提示词一换,预算要重算,别用旧数字判定;
- 告警而非事后:按租户与全局各设一条成本告警,超 80% 就提醒,不要等月底。
一张最小看板
- 每功能:单次成本、调用量、P95 首字与总时长、超预算次数;
- 全局:当日花费、Top 花费租户/功能、缓存命中率、重试率;
- 质量:成功率、负反馈率、失败类型分布(用来确认"省下来的没赔质量")。