开工前先算账:怎么在上线之前估算一个AI功能的Token成本
大多数AI项目超预算,不是因为模型贵,而是因为没人提前算过。本文给出一套可在需求评审阶段使用的Token成本估算方法:从单次调用拆解到日均调用量,附完整算式和三个真实场景。
很多团队踩的是同一个坑:功能做完了,上线一个月才发现AI调用费比整个团队的人力成本还高。这时候改架构已经很贵了,只能硬扛或者砍功能。
问题不在模型定价,在于没人算过账。 而这件事其实可以在需求评审阶段就算清楚——不需要写一行代码。
一、先拆清楚:一次调用到底花在哪
一个AI功能的成本,永远是下面这个式子:
单次调用成本 = 输入Token × 输入单价 + 输出Token × 输出单价
看起来简单,但”输入Token”这四个字里藏着大部分被低估的东西。一次调用的输入通常包含:
- 系统提示词:角色设定、规则、输出格式要求,稳定在 500~3000 Token
- 工具定义(Schema):接5个工具,光JSON描述可能就2000 Token
- 检索到的上下文:RAG场景下每次塞3
5段,30008000 Token - 对话历史:多轮对话里每轮都要重新带一遍
- 用户本次输入:往往是最小的那部分
经验值:新手估算时通常只算第5项,实际成本是估算的5到20倍。
二、四种典型功能的估算模板
场景A:单轮问答(有RAG)
假设:
- 系统提示词 800 Token
- 检索上下文 4000 Token(4段×1000)
- 用户问题 100 Token
- 输出 600 Token
输入合计 4900 Token,输出 600 Token。
按主流中档模型计价(输入约 ¥0.002/千Token,输出约 ¥0.008/千Token):
- 输入:4900 ÷ 1000 × 0.002 ≈ ¥0.0098
- 输出:600 ÷ 1000 × 0.008 ≈ ¥0.0048
- 单次合计约 ¥0.015
看着很便宜?乘以日调用量再看。日均5000次 → 每天¥75,每月¥2250。
场景B:Agent任务(多轮+工具调用)
这才是真正的成本放大器。一次”帮我把这份合同里的关键条款整理成表”的任务:
- 第1轮:系统提示 + 工具定义 + 文档全文 = 输入 12000 Token,输出 300
- 第2~6轮:每轮带历史 + 工具结果,输入从15000滚到35000
- 总计:输入 约120000 Token,输出 约3000 Token
按中等模型算:
- 输入:120000 ÷ 1000 × 0.002 = ¥0.24
- 输出:3000 ÷ 1000 × 0.008 = ¥0.024
- 单任务约 ¥0.26
每天处理800份合同 → 每天¥208,每月¥6240。如果用了推理模型,单价翻5~20倍,这个数字会变成几万。
场景C:实时语音Agent
语音是最容易被低估的。成本来自三块:
- 语音识别:按音频分钟计费
- 对话模型:按Token计费,且因为要做低延迟,往往不能批处理
- 语音合成:按输出字符或分钟计费
一通3分钟电话,总成本通常在 ¥0.1~¥0.5 区间。日均2000通电话 → 每天¥200~¥1000。同时还要算上并发带来的容量成本。
场景D:批处理(分类、打标、摘要)
单条成本低(经常不到 ¥0.001),但量大。关键在于能否用小模型 + 批处理接口 + 提示词缓存:
- 换小模型:单价降 70%~90%
- 批处理接口:通常再降 50%
- 提示词缓存:固定前缀部分降 80%~90%
这三招叠加,同样的任务成本能降一个数量级。
三、把单次成本变成月度预算
公式:
月度成本 = 单次成本 × 日均调用量 × 30 × (1 + 增长冗余系数)
增长冗余系数建议取 0.5~1。理由很简单:功能一旦好用,用量会涨得比你预期快。
再补三个修正项:
- 重试成本:失败重试率通常 3%~10%,按 1.1 倍算保守
- 调试与测试成本:开发期跑eval、调prompt的消耗,常占总量的 5%~15%
- 峰值成本:如果按用量分档计价或有并发限制,峰值月要单独算
四、算出成本之后,怎么判断能不能做
光有数字没用,要跟价值对照。三个可用的判据:
- 单用户成本 vs 单用户收入:如果AI成本超过用户毛利的30%,商业模式就很脆弱
- 单任务成本 vs 人工成本:客服场景下,AI辅助一次回答的成本应低于人工处理成本的十分之一
- 成本弹性:用量翻10倍,成本会不会不成比例地涨?如果会,说明架构有瓶颈
最重要的判据是第三个。 一个好架构的AI功能,成本应该随用量接近线性增长,而不是指数增长。
五、需求评审时必问的五个问题
把这五句话放进评审清单,能挡掉大多数坑:
- 这个功能每次调用大概多少Token?谁量过?
- 用了几个工具?工具定义占多少Token?
- 多轮的话,历史怎么压缩?会不会无限累积?
- 日均真实调用量是多少?峰值呢?
- 如果成本是估算的3倍,降级方案是什么?
第五个问题最关键。能在评审阶段回答”可以换小模型”或”可以只处理前20%的高价值请求”的团队,才真正想清楚了这件事。
六、一个可以马上用的估算表
| 项目 | 数值 | 说明 |
|---|---|---|
| 系统提示词 | __ Token | 稳定部分 |
| 工具/上下文 | __ Token | 波动最大 |
| 用户输入 | __ Token | 通常最小 |
| 输出 | __ Token | 按实测 |
| 输入单价 | __ ¥/千Token | 查官方价 |
| 输出单价 | __ ¥/千Token | 查官方价 |
| 单次成本 | ¥__ | 输入+输出合计 |
| 日均调用 | __ 次 | 要真数据 |
| 冗余系数 | __ | 建议0.5~1 |
| 月度预算 | ¥__ | 单次×日均×30×(1+冗余) |
填完这张表,你对这个功能值不值得做,就有一半答案了。
七、几条反直觉的经验
- 输出比输入贵:多数模型输出单价是输入的4~5倍。控制输出长度(要求JSON、限制字数)常比优化输入更有效。
- 小模型不一定真的省钱:如果小模型失败率高一倍,重试和人工补救的成本可能吃掉省下的钱。
- 最贵的不是Token,是改架构:上线后再发现成本不可接受,改动成本是设计阶段的几十倍。
- 成本会自己涨:不是单价涨,是用量涨、上下文涨、工具涨。设定预算告警比设定预算更重要。
结语
AI功能的成本,本质上是一个设计决策,不是一个运营问题。在写第一行代码之前花两个小时把这笔账算清楚,比上线后花两个月做成本优化划算得多。
能提前算账的团队,才有资格用好AI。