Fara í efni
Prompt-geymsla

Prompt-geymsla

SJÁLVIRKNING

Hosted open-weight líkön cache-a endurteknar fyrirspurnarforskriftir sjálCvirkt. Þegar fyrirspurn byrjar á sömu kerfisboðum, tólum og fyrri skilaboðum og nýleg fyrirspurn á sama líkani, er sú sameiginlega forskrift laðin úr cache og reiknuð á 25% af inntaksverði líkansins. Það er ekkert að virkja, og cache-skráning er ókeypis.

Hvernig það virkar

  • Forskrift, í röð — Fyrirspurn er laðin í röð: kerfisboð, tólskilgreiningar, og svo skilaboð. Cache-ið passar frá upphafi þessrar röðar framt til fyrsta tóna sem flýtur frá.
  • Hvað telst sem 'hit' — Fyrirspurn þar sem prompt byrjar á sama efni og nýleg fyrirspurn — venjulega fyrri hluti sömu samtals þar sem ný skilaboð eru bætt við. Sameiginlega forskriftin er cache-inntak; allt eftir það er venjulegt inntak.
  • Kornastig — Skyndiminnið geymir prompt í blokkum af 1,568 táknum, svo prompt sem er styttri en um 1,500 tákn er ekki geymdur. Talan úr skyndiminni í svari er inntakstalan þín margfölduð með hlutfalli prompts sem er í skyndiminni, rúnnuð niður. Hún er ekki endilega margfeldi af blokkastærðinni.
  • Án treffs — Beiðni þar sem upphafið er ekki í skyndiminni er gjaldfærð á venjulegu inntaksverði. Enginn líftími er gefinn upp fyrir geymda prompta og treff er ekki tryggt: lestu usage til að sjá hvað beiðni tók úr skyndiminni.
  • Enginn rofi — Beiðni þarf ekki að velja skyndiminni, og enginn reitur slekkur á því.
  • Hver líkön — Öll hosted open-weight auðkenning. GET /v1/models greinir capabilities.prompt_caching: true og pricing.cached_input_per_million_usd fyrir þau. Shannon líkön reikna eitt flátt gjald.

Sjá skyndiminnistreff í svari

Sendu tvær beiðnir sem byrja á sama langa system prompt og prentaðu notkun hvorrar. Fyrri talan er inntak beiðninnar, sú seinni er sá hluti þess sem var lesinn úr skyndiminni.

from openai import OpenAI

client = OpenAI(api_key="YOUR_API_KEY", base_url="https://api.shannon-ai.com/v1")

handbook = open("handbook.txt").read()  # a long text that stays the same


def ask(question):
    response = client.chat.completions.create(
        model="Kimi-K3-3BIT-REAP",
        messages=[
            {"role": "system", "content": handbook},
            {"role": "user", "content": question},
        ],
    )
    usage = response.usage
    print(usage.prompt_tokens, usage.prompt_tokens_details.cached_tokens)


ask("What is the refund policy?")
ask("Who approves travel?")  # same start: read the second number

Verðsetning

Cache-inntakstónar eru reiknaðir á 25% af inntaksverði líkansins, rökðu að $0.001 per 1M. Skráning í cache kostar ekki extra, og útgangur er reiknaður eins og venjulega. Cache-gjald hvers ids er í Models & pricing töflunni. Líkön og verð

Inntak kalls er gjaldfært sem (inntak − úr skyndiminni) × inntaksverð + úr skyndiminni × verð skyndiminnis. Talan úr skyndiminni er aldrei stærri en inntakstalan.

Líkan Inntak / 1M Inntak úr skyndiminni / 1M
DeepSeek-V4-Pro-0813-3BIT-REAP $1.95 $0.488
GLM-5.2-3BIT-REAP $0.73 $0.183
Kimi-K3-3BIT-REAP $3.83 $0.958
Nemotron3Ultra-3BIT-REAP $0.75 $0.188
MiniMax-M3-3BIT-REAP $0.50 $0.125
DeepSeek-V4-Flash-0731-W4A16-AUTOROUND-REAP $0.50 $0.125
Kimi-K2.6-W4A16-AUTOROUND-REAP $0.78 $0.195
Laguna-S-2.1-W4A16-AUTOROUND-REAP $0.50 $0.125
inkling-W4A16-AUTOROUND-REAP $1.42 $0.355
MiMo-V2.5-Pro-W8A16 $0.50 $0.125
MiMo-V2.5-W8A16 $0.50 $0.125
Hy3-W8A16 $0.50 $0.125

Notkunarskráin telur upp inntak úr skyndiminni fyrir hvert kall. Gjaldfærð tákn og kostnaður innihalda nú þegar verð skyndiminnis. Lyklar og notkun

Notkunarreiðir

Endapunktur Cache-inntak Rökstuðningur
/v1/chat/completions usage.prompt_tokens_details.cached_tokens — hluti af prompt_tokens usage.completion_tokens_details.reasoning_tokens — hluti af completion_tokens
/v1/responses usage.input_tokens_details.cached_tokens — hluti af input_tokens usage.output_tokens_details.reasoning_tokens — hluti af output_tokens
/v1/messages usage.cache_read_input_tokens — greint apart: input_tokens er ó-cache-aðr hluti; cache_creation_input_tokens er alltaf 0 hugsun er talð í output_tokens
{
  "usage": {
    "prompt_tokens": 20000,
    "completion_tokens": 812,
    "total_tokens": 20812,
    "prompt_tokens_details": {
      "cached_tokens": 18000
    },
    "completion_tokens_details": {
      "reasoning_tokens": 604
    }
  }
}

Streymt svar ber sömu reiti í lokanotkun sinni. Þú þarft ekki að biðja um það:

Endapunktur Hvar notkunin berst
/v1/chat/completions usage í síðasta bútnum á undan data: [DONE]. Það er sent á hverjum streymi.
/v1/responses response.usage í response.completed atburðinum.
/v1/messages usage í message_delta atburðinum. usage í message_start geymir núll.

Aukning á cache hits

  • Haltu kerfisboðum og tólskilgreiningum nákvæmlega óbreyttum milli kalla. Setjið breytur sem breytast við hvert kall, eins og tímastempel eða request ids, í lok síðasta skilaboðsins, ekki í kerfisboðin.
  • Bætið aðeins við sögunni. Efni sem er breytt, stytt eða samantekt eftir fyrri samtöl breytir forskriftinni, og allt eftir fyrstu breytingu er reiknað sem venjulegt inntak.
  • Ekki breytið röð tóla, skilaboða eða efnisblokkana á milli kalla, og sýnið JSON (tool schemas, tool arguments og niðurstöður) á sama hátt í hvert skipti.
  • Haltu þig við eitt líkanauðkenni í samtali og sendu næsta kall fljótlega eftir það fyrra.

API heldur upphafi samtals stöðugu í þessum tilvikum:

  • system eða developer skilaboð sem send eru síðar í samtali haldast á sínum stað. Þau breyta ekki upphafi prompts, svo lotur á undan haldast í skyndiminni.
  • Röksemdir tólakalla í fyrri assistant-lotum eru bornar saman eftir gildi. Röð lykla og bil í því JSON skipta ekki máli.
  • Endapunktarnir þrír lesa samtal á sama hátt. Samtal sem haldið er áfram á öðrum endapunkti heldur sameiginlegu upphafi sínu þegar efnið er hið sama.

Yðmiðar fyrir beiðni

prompt_cache_key (Chat Completions og Responses) og cache_control á efni blokkanna í Messages eru viðurkennd, svo núverandi forritskóði virkar óbreytt. Engu af þessu er nauðsynlegt: önnumat er sjálfvirkt og virkar eins án þeirra.

Reitur Sent til Hvað það er
prompt_cache_key /v1/chat/completions, /v1/responses Leiðarlykill skyndiminnis í OpenAI API.
cache_control /v1/messages Skyndiminnismörk á efnisblokk, system blokk eða skilaboðum í Anthropic API.
stream_options /v1/chat/completions include_usage biður OpenAI API um notkun á streymi. Hér endar hver straumur með notkun.

Tölgun tokens

Tveir ókeypis endapunktar, POST /v1/tokenize og POST /v1/messages/count_tokens, telja tákn texta eða heillar beiðni fyrir hýst líkön með opnum þyngdum áður en þú sendir hana. Þau hafa sína eigin síðu: Tókatalning