首页 / 长上下文与缓存成本

长上下文与缓存成本

苏姆卡皮 · OpenAI 兼容 AI API 网关 · Base URL https://sub.sumcapi.top/v1

长上下文本身不贵,贵的是每次把同样的内容再发一遍。把可复用的前缀固定下来让它命中缓存,是多数业务见效最快的省钱动作。

长上下文与缓存成本

成本从哪来

输入 token ≈ 系统提示词 + 工具定义 + 少样本示例 + 检索片段 + 历史轮次

同一个会话或同一批任务里,前几项几乎不变,却因为每次重新发送而被反复计价。缓存的作用就是让重复前缀按更低的缓存价计费

让缓存命中的四条写法约定

  1. 前缀严格稳定:系统提示词、工具定义、少样本示例放在最前面,顺序与文本完全一致;日期、trace_id、用户名一律挪到末尾的用户消息里。
  2. 不要在长前缀中间插入变化:中间任何一个字符不同,都会让它之后的部分全部失效。
  3. 历史轮次只追加不重写:做上下文压缩时把摘要追加到尾部,不要回头改早期消息。
  4. 检索片段先去重再拼:Top-K 中重叠内容合并,既省 token 又减少模型自相矛盾。

长文档的三种处理方式

方式适合代价建议
整篇塞进上下文单次分析、需要全局推理输入 token 高,多问题复用不划算一次提问覆盖多个结论,避免反复投喂
RAG 召回片段高频问答、语料规模大需要建索引与维护切片召回后附来源段落编号,便于校验
分段摘要再汇总超长文档、批量归档多轮调用,链路变长摘要结果落库复用,不要每次重算

实践中常见的是混合:先用稳定前缀做整篇分析拿全局结论,再用 嵌入与检索 支撑高频细节问答。

估算方法(可直接照抄)

  1. 在控制台「用量统计」取一次真实请求的输入与输出 token;
  2. 拆成"固定前缀 A"与"每次变化 B"两部分;
  3. 前缀占比 = A / (A + B),占比高且调用频繁时缓存收益基本线性;
  4. 月成本 ≈ 折算缓存价后的单位成本 × 月调用次数,与切换前账单对比即可验证。
倍率、缓存单价与限速以模型广场和控制台的实时展示为准;公式与争议处理见 计费与退款政策

别忘了延迟与稳定性

下一步

常见问题

上下文越长就越贵吗?

输入按 token 计费,所以长度直接决定成本;但重复前缀若能命中缓存,缓存读取价通常远低于常规输入价,长会话反而更划算。

命中缓存需要改代码吗?

大部分情况下只需要调整写法:把稳定内容放在最前面,动态内容追加在后面,不要每轮重新排序系统提示与示例。

多少 token 才算「长上下文」?

经验值:单次请求输入超过 8k token 就值得做前缀规划,超过 32k 必须先确认上游的上下文上限与限速,否则容易 400/429。

长文档一定全量塞进去吗?

不一定。全量塞实现简单、召回完整,但慢且贵;先摘要或抽取候选段落再送入,成本更低;对时效敏感的场景走检索。三者按「命中率 × 成本」实测选择。