rikiishere
V2EX  ›  OpenAI

openai 的 cache 是咋计算的呀? input_tokens=cache_write_tokens+3?

  •  
  •   rikiishere · 13h 33m ago · 519 views

    这个相差的 3 是啥呀? 第一次写缓存:

    { "input_tokens": 8412, "input_tokens_details": { "cache_write_tokens": 8409, "cached_tokens": 0 } }

    第二、三次命中缓存:

    { "input_tokens": 8412, "input_tokens_details": { "cache_write_tokens": 0, "cached_tokens": 8409 } }

    6 replies    2026-08-03 14:26:49 +08:00
    neteroster
        1
    neteroster  
       13h 21m ago via Android
    你命中缓存那个请求的内容是什么?和第一次完全一样吗?
    blakezhaothinks
        2
    blakezhaothinks  
       13h 21m ago
    3 是未命中缓存的 token 数量。
    rikiishere
        3
    rikiishere  
    OP
       13h 17m ago
    @neteroster 3 次请求完全一致
    rikiishere
        4
    rikiishere  
    OP
       13h 16m ago
    @blakezhaothinks 那我第一次请求为啥就差了 3 ? 第一次请求的 token 不应该是全部作为 cache 吗?
    neteroster
        5
    neteroster  
       13h 13m ago via Android   ❤️ 1
    @rikiishere 除了你的内容还会有一些 chat template 中的特殊 token ,比如<|start|>,这些很可能不会缓存所以会有轻微差异
    rikiishere
        6
    rikiishere  
    OP
       13h 0m ago
    @neteroster 明白了,感谢解惑
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   984 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 19:27 · PVG 03:27 · LAX 12:27 · JFK 15:27
    ♥ Do have faith in what you're doing.