很多 AI SaaS 早期定价都是拍脑袋:每月 19 美元,送 100 次生成;高级版 49 美元,送更多。上线后一翻账单,重度用户把毛利吃掉,轻度用户又觉得次数太少。
prompt cache 能缓解,但不是魔法。它只对「重复的长输入」有用。先搞清楚哪些 token 会重复,哪些不会。
拆开一次 Claude 请求
一条典型 SaaS 请求大概这样:
| 部分 | 示例 | 是否适合缓存 |
|---|---|---|
| 系统提示词 | 产品角色、输出格式、安全规则 | 适合 |
| 工具说明 | function/tool schema | 适合 |
| 知识库前缀 | 某个项目文档、品牌规则 | 视重复度而定 |
| 用户问题 | 本次输入 | 通常不适合 |
| 检索片段 | 每次召回不同 | 命中率不稳定 |
| 模型输出 | 回答内容 | 不属于 prompt cache 收益 |
Anthropic 的 prompt caching 文档里,核心是通过 cache control 标记可缓存内容。成本上通常要区分 cache write、cache read、普通输入和输出。你做定价模型时,也要按这四类拆。
一个最小公式:
单次成本 = 缓存写入成本 + 缓存读取成本 + 普通输入成本 + 输出成本 + 重试成本
如果你只看总 token,很容易误判。两个请求 token 数一样,一个命中缓存,一个没命中,毛利完全不同。
估算缓存命中率
我会按「租户」算,不按全站平均算。因为 SaaS 里的缓存通常和 workspace、项目、知识库绑定。A 客户命中 90%,B 客户命中 10%,平均数对定价帮助不大。
建议记录这些字段:
| 字段 | 用途 |
|---|---|
| workspaceId | 判断同一客户内的重复 |
| featureName | 区分客服、写作、代码分析等功能 |
| model | 不同模型价格不同 |
| cacheWriteTokens | 看写入成本 |
| cacheReadTokens | 看读取收益 |
| inputTokens | 普通输入成本 |
| outputTokens | 输出成本 |
| retryCount | 失败请求成本 |
然后每周看三张表:
- 每个功能的缓存命中率。
- 每个客户的平均请求成本。
- 前 5% 重度用户占总成本比例。
我不会在第一周就优化缓存,让产品跑起来,拿到真实请求形态,再决定哪些 prompt 前缀值得稳定下来。
SaaS 套餐怎么调
用保守成本做底线。假设没有缓存,毛利还能接受;如果缓存命中,算额外收益。这样定价不会被早期乐观假设绑架。
一个简单套餐模型:
| 套餐 | 收费方式 | 成本控制 |
|---|---|---|
| Starter | 月费 + 小额度 | 限制长文档和并发 |
| Pro | 月费 + 积分包 | 允许项目级缓存 |
| Team | seat + 用量池 | workspace 级缓存和预算提醒 |
| Enterprise | 合同价 | 单独模型、日志和限额 |
如果你的产品是写作、客服、代码审查这类长上下文场景,prompt cache 对 Pro 和 Team 的毛利帮助更明显。如果只是短问答,缓存收益有限,别在价格页上过度承诺。
积分还是按 token 计费
面向普通 SaaS 用户,我更偏向积分。token 对开发者清楚,对非技术客户很抽象。你可以在内部把积分映射成成本预算,但对外说「每月 2,000 次标准分析」或「包含 500 个文档额度」。
面向开发者工具,可以更透明一点:
- 显示本月输入、输出、缓存读取的大概用量。
- 给 workspace 设置预算上限。
- 高成本操作前提示用户,比如长文档全量分析。
- 失败重试不向用户重复扣费,但要记入你的成本。
最危险的是无限量套餐。早期为了转化写「unlimited」,后面一定会痛。更好的写法是合理使用额度、超出后降速或购买用量包。
API 通道纳入成本模型
Claude API 产品还有一个现实问题:供应商可用性、账单币种、团队 key 管理、备用模型。你可以直接接 Anthropic,也可以用网关或中转层统一 OpenAI 兼容协议。选择前先看三件事:错误码透明度、用量明细、是否支持你需要的模型和流式返回。
如果你想把 Claude 和 OpenAI 都放进同一个 SaaS 后端,可以准备一个成本路由层。对国内团队协作场景,我会单独测试 多模型统一计费的 API 中转 的首字节、错误码和账单导出,再决定是否放进生产备用路径。
不要把所有用户请求都无脑打到最贵模型。更实际的分层是:
| 任务 | 模型策略 |
|---|---|
| 草稿、分类、标签 | 便宜的小模型或批处理 |
| 长文档总结 | 支持缓存的 Claude 模型 |
| 关键回答、付费用户 | 高质量模型 + 重试预算 |
| 后台离线任务 | 排队 + 限速 + 成本上限 |
上线前的毛利检查表
- 每个功能都有 token 记录。
- 缓存写入和缓存读取分开统计。
- 输出 token 单独统计,不被缓存收益掩盖。
- 重试、超时、失败请求计入成本。
- 每个 workspace 有月度预算。
- 价格页没有承诺真正无限量。
- 重度用户触发限速、升级或人工跟进。
- 每周看一次毛利,不等账单爆掉再补救。
prompt cache 最适合有固定工作流的 SaaS。比如同一个项目反复分析需求、代码、客服知识库。它不适合用来掩盖混乱的 prompt 设计,把请求结构稳定下来,缓存才有意义。