AIHero

    模型

    缓存 Token

    模型提供商通过前缀缓存从先前请求中保留下来的输入 Token,通常以低得多的费率计费。

    Matt Pocock
    Matt Pocock

    缓存 Token 是模型提供商从之前一次模型提供商请求中缓存的输入 Token,因此无需再次处理。当连续请求拥有相同前缀时,提供商会通过前缀缓存复用已有计算,并以低得多的费率计算缓存部分。这是长会话能够负担得起的关键机制——没有它,每个轮次都要重新为全部历史付费。

    它之所以重要,是因为会话按这种方式计费。模型无状态的,所以每次请求都会把完整对话——系统提示词、每条消息和每个工具结果——作为输入 Token 重新发送。到第 50 个轮次时,每次请求都携带 50 个轮次的历史;如果没有缓存,每次都要按原价为全部内容付费。缓存改变了这笔账:提供商已经在相同前缀中处理过的 Token 会按缓存 Token 计费,价格通常只有普通输入费率的十分之一甚至更低。在长会话中,发送内容的大部分都会成为缓存 Token,从而让费用维持在合理范围。

    下面的例子说明 Token 何时命中缓存、何时不会。每个字母代表一块对话内容;每次请求都会发送截至当前的完整对话:

    请求发送内容缓存部分按完整费率计费原因
    ABnothingAB第一次请求——没有可匹配的历史
    ABCABCAB 是上一次请求的完全相同前缀
    ABCDABCD前缀仍然完整
    AXCDAXCD一次编辑改变了 B to X;匹配从这里开始失效

    缓存有一种特定的脆弱性:它要求前缀精确匹配。如果对话较早位置的任何内容发生变化——运行框架调整内容顺序、时间戳更新,或文件呈现形式改变——从变化点开始就会缓存未命中,之后的所有内容都按完整输入费率计费。缓存也会在闲置几分钟后过期,因此长时间暂停后恢复会话时,需要重新为历史付费一次。如果会话成本无明显原因突然上升,应在用量报告中比较缓存 Token 与输入 Token;缓存失效通常会最先在那里显现。

    用法:

    “长会话的成本太高了——一次重构花了 8 美元。”

    “检查缓存 Token。如果运行框架在轮次之间重新排列系统提示词或文件,前缀就会失效,每次请求都得重新按完整输入费率付费。”

    不只想学术语?

    加入 AI Hero,获取实用技能、AI 工程思考,以及帮助你始终走在前沿的资源。

    没有垃圾邮件,随时可以退订。

    分享