模型没换,AI 成本为什么还在涨?问题往往出在调用链

0 阅读4分钟

做 AI 应用一段时间后,很多团队都会遇到同一个问题:模型没怎么换,业务量也没有明显增长,但账单还是越来越高。

这时候大家第一反应往往是模型太贵了,于是开始横向比较价格。可真把线上链路拆开看,很多钱并不是花在单次调用上,而是花在调用怎么被组织出来。

一条普通请求,前面可能有任务分类和上下文拼装,中间有模型调用、超时控制,后面还有重试、fallback、结果修复。

单看模型单价,很容易误判;把整条调用链展开,问题才会出现。

很多团队先盯价格表,最后发现真正该看的,是调用链。


真正贵的,往往是结构性放大

拿一个内容生成请求举例,系统大概率会这样跑:

  1. 默认直接走高能力模型
  2. 把系统提示、历史记录、工具说明一次性全塞进去
  3. 输出过长,再做一轮压缩或后处理
  4. 超时后自动重试
  5. 主模型失败,再切备用模型

这种链路一旦跑得多,成本就不是一点点往上蹭,而是被一层层放大。

所以很多 AI 成本问题,说到底不是采购问题,而是工程问题。

常见的浪费,基本就藏在这几处:

  • 没有任务分层,轻任务和重任务都走同一套模型
  • 上下文长期冗余,稳定背景被反复发送
  • 重试和 fallback 没有边界
  • 本该异步执行的任务,被塞进实时链路

成本治理不能只看模型账单

如果监控里只有“某模型花了多少钱”,这类数据其实只够看总账,不够拿来治理。

真正有用的,是把指标挂到调用链上,至少看这几项:

  • 输入 token
  • 输出 token
  • 缓存命中率
  • 重试率
  • fallback 触发率
  • 单位业务动作成本

最后这一项很关键。

业务买的不是 token,而是一次“完成问答”“生成摘要”“输出审核结果”的能力。只有看到单位业务动作成本,团队才能知道究竟是哪一段流程在持续漏钱。


更有效的治理顺序

如果真要动手优化,我更建议按这个顺序来。

第一,先做任务分层。

简单改写、轻量总结、分类判断,不该和复杂推理、长文生成走同一条链路。

第二,再清理上下文。

系统提示、角色描述、工具说明里很多内容是稳定的,能缓存就缓存,能裁剪就裁剪,不要让重复背景一直消耗输入 token

第三,重新划分实时和异步任务。

批量生成、离线分析、夜间处理,只要业务允许稍后返回,就不要持续占用实时链路。

第四,最后再收紧重试和 fallback

稳定性当然重要,但也要有预算意识,不能默认一路重试到底、兜底到底。


多模型场景为什么更难控成本

当团队同时接入多个模型时,麻烦往往不在“怎么接”,而在“怎么管”。

接口格式、日志口径、错误码、计费方式一旦不统一,后面就很难把一条链路的成本完整拼出来。

所以从治理角度看,先把入口收拢,往往比继续增加模型数量更重要。

147API 这类统一接入层,放在这里就比较合适。它的意义不只是多接几个模型,而是把入口先收起来,后面的日志归集、路由切换、预算控制和成本分析才有机会放到同一层处理。


写在最后

AI 成本治理当然要看单价,但不要只盯单价。

真正决定成本走势的,往往不是你买了哪个模型,而是系统让模型怎么工作。

把调用链拆开后,问题通常会一下子具体起来:任务有没有分层、上下文是不是太重、重试是不是过多、fallback 有没有失控、哪些任务其实根本不需要实时执行。

先把这些结构问题处理好,通常比单纯换一个便宜模型更有用。