把成本表建起来
我自己的表会按「一次请求」和「一个付费用户」两层记。一次请求看技术细节,一个付费用户看生意是否成立。只看总 token 很容易被骗:一个重度用户可能吃掉 20 个轻度用户的毛利。
| 字段 | 为什么要记 |
|---|---|
| user_id / plan | 看不同套餐是否亏钱 |
| model | 找出高价模型滥用 |
| input / output token | 输出通常更贵 |
| cache read / write | 判断缓存是否真省钱 |
| retry count | 失败重试会偷成本 |
| latency | 降本不能把体验打烂 |
表不用一开始就完美,把日志落到 Postgres 或 ClickHouse,每晚汇总到 spreadsheet。独立开发者最怕的是账单来了才知道某个功能一直在烧钱。
prompt cache 怎么用?
prompt cache 适合固定长上下文:system prompt、工具说明、品牌语气、长文档摘要前缀。把这些内容放在请求前半段,保持顺序稳定,后面再拼用户输入。频繁变化的字段不要塞进缓存块,否则命中率会很难看。
我会给缓存设三条规则:一是缓存块超过一定长度才启用;二是缓存命中率低于 30% 就回滚;三是缓存写入成本单独记。缓存不是免费魔法,它只是把重复输入变便宜。
batch、路由、模型分层怎么排?
| 任务 | 推荐策略 | 原因 |
|---|---|---|
| 用户即时对话 | streaming + 中档模型 | 体验优先 |
| 夜间报表 | Batch API | 便宜,不急 |
| 分类和标签 | 小模型 | 容错高 |
| 复杂代码或推理 | 高档模型 | 错一次更贵 |
| 失败重试 | 换模型或降温度 | 别原样烧第二遍 |
模型分层不要写死在前端。放到服务端路由层,用任务类型、用户套餐、预算和失败次数决定。这样你以后换供应商,只改一层。
毛利 spreadsheet 怎么算?
每个套餐至少算这几列:月收入、支付手续费、平均 API 成本、服务器成本、退款率、客服时间。比如 $19/月套餐,如果 API 成本已经到 $8,再扣 Stripe 手续费和服务器,剩下的钱不够你买流量。
我会给每个功能设成本上限:一次长文生成最多花多少,一次代码分析最多花多少,一个用户每天最多跑几次高档模型。超过就提示排队、降级或让用户升级套餐。
接入层怎么留后路?
早期可以先接一家多模型统一计费的 API 中转,快速拿到 Claude、OpenAI 和其他模型的统一账单。等月用量上来,再把官方 key、备用网关和自建统计接进去。重点是业务代码只调用你自己的 llmRouter(),不要到处散落供应商 SDK。
关联文章
- Indie 开发者 LLM API 成本结构与中转选型,月消费过 $200 时比价中转方
- prompt caching 90% 与 batch API 组合降本,缓存叠加批处理的极限省钱公式
- 多模型路由 Claude GPT DeepSeek,按任务类型选模型的落地代码