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