Neidio i'r cynnwys
Caching prompt

Caching prompt

CNEU

Mae modelau open-weight hosted yn cacheu prefixau prompt ail-dro'n awtomatig. Pan fydd cais yn ownhau gyda'r un prompt system, toolau a negeseion cyn ownhau â cais recent ar yr un model, mae'r prefix shared hwn yn cael ei darllen o'r cache ac yn cael tollu ar 25% o bris mewnfa'r model. Nid oes angen dim i'w gallu ownnu, ac mae ysgrifennu i'r cache'n am ddim.

Sut mae'n gweithio

  • Prefix, yn ddyfyn — Mae'r prompt yn cael ei darllen yn ddyfyn: prompt system, diffiniadau tool,na yna'r negeseion. Mae'r cache yn cyfateb o ddechrau'r ddyfyn hwn hyd’r token cyntaf sy'n wahanol.
  • Beth sy'n g counts as a hit — Cais y mae'n dechrau prompt ei wegesydd gyda'r un cynnwys â cais recent — fel arfer tro blaen o'r un conversations gyda negeseion newydd wedi'u dechrau. Mae'r prefix sy'n cyfateb yn mewnfa cached; mae popeth wedy hyn yn mewnfa regylair.
  • Granularia — Mae'r cache yn dal prompt mewn blociau o 1,568 token, felly ni chaiff prompt sy'n fyrrach na thua 1,500 token ei gacheu. Cyfrif mewnbwn yw'r cyfrif cache mewn ateb wedi'i luosi â chyfran gacheu y prompt, wedi'i dalgrynnu i lawr. Nid yw o reidrwydd yn lluosrif o faint y bloc.
  • Heb hit — Bilir cais nad yw ei ddechrau yn y cache ar y gyfradd fewnbwn arferol. Ni chyhoeddir oes ar gyfer promptau wedi'u cacheu ac nid yw hit wedi'i warantu: darllenwch usage i weld beth gymerodd cais o'r cache.
  • Dim switsh — Nid yw cais yn optio i mewn, ac nid oes maes sy'n diffodd caching.
  • Pa modelau — Pob id open-weight hosted. Mae GET /v1/models yn adrodd capabilities.prompt_caching: true a pricing.cached_input_per_million_usd ar gyfer nhw. Mae modelau Shannon yn codi toll unigol ar gyfradd fflat.

Gweld cache hit mewn ateb

Anfonwch ddau gais sy'n dechrau gyda'r un prompt system hir ac argraffwch ddefnydd pob un. Y rhif cyntaf yw mewnbwn y cais, yr ail yw'r rhan ohono a ddarllenwyd o'r cache.

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

Prisiau

Mae tokenau mewnfa cached yn cael tollu ar 25% o gyfradd mewnfa'r model, wedi'u cae i $0.001 per 1M. Nid oes cost gwasanaeth gennym am ysgrifennu i'r cache, a mae'r allbwn yn cael tollu fel arlyniad. Mae cyfradd cached pob id yn y jad Models & pricing. Modelau a phrisiau

Codir am fewnbwn galwad fel (mewnbwn − wedi'i gacheu) × cyfradd mewnbwn + wedi'i gacheu × cyfradd cache. Nid yw'r cyfrif cache byth yn fwy na'r cyfrif mewnbwn.

Model Mewnbwn / 1M Mewnbwn wedi'i gacheu / 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

Mae'r log defnydd yn rhestru mewnbwn wedi'i gacheu pob galwad. Mae'r tokenau a filiwyd a'r gost eisoes yn cynnwys y gyfradd cache. Allweddi a defnydd

Meysydd defnydd

Pwyntter Mewnfa cached Rhesoniad
/v1/chat/completions usage.prompt_tokens_details.cached_tokens — rhan o prompt_tokens usage.completion_tokens_details.reasoning_tokens — rhan o completion_tokens
/v1/responses usage.input_tokens_details.cached_tokens — rhan o input_tokens usage.output_tokens_details.reasoning_tokens — rhan o output_tokens
/v1/messages usage.cache_read_input_tokens — adroddedig ar wahanbol: input_tokens yw'r rhan heb cache; cache_creation_input_tokens yw bob amser 0 cael meddwl yn cael ei nifoethu mewn output_tokens
{
  "usage": {
    "prompt_tokens": 20000,
    "completion_tokens": 812,
    "total_tokens": 20812,
    "prompt_tokens_details": {
      "cached_tokens": 18000
    },
    "completion_tokens_details": {
      "reasoning_tokens": 604
    }
  }
}

Mae ateb wedi'i ffrydio yn cario'r un meysydd yn ei ddefnydd terfynol. Does dim rhaid i chi ofyn amdano:

Pwyntter Lle mae'r defnydd yn cyrraedd
/v1/chat/completions usage ar y talp olaf cyn data: [DONE]. Fe'i hanfonir ar bob ffrwd.
/v1/responses response.usage y digwyddiad response.completed.
/v1/messages usage y digwyddiad message_delta. Mae usage message_start yn cynnwys sero.

Cael mwy o cache hits

  • Cadwch i'r prompt system a diffiniadau tool fod yn sefydlog byte-am-byte rhwng galwadau. Rhowch gwerthoedd per-galwad fel timestampiau neu id-iau cais ar ddiwedd y neges ddiweddar, nid yn y prompt system.
  • Ymunwch yn unig â'r hanygof. Mae golygu, trimio neu crynodeb troeddau cyn ownhau yn newid y prefix, ac mae popeth wedy'r newid cyntaf yn cael tollu fel mewnfa regylair.
  • Peidiwch a ail-drefnu toolau, negeseion neu blociau cynnwys rhwng galwadau, a serialise JSON (sceamas tool, argudion tool a canlyniadau) yn yr un ffordd bob tro.
  • Arhoswch ar un id model drwy sgwrs, ac anfonwch yr alwad nesaf yn fuan ar ôl yr un o'i blaen.

Mae'r API yn cadw dechrau sgwrs yn sefydlog yn yr achosion hyn:

  • Mae neges system neu developer a anfonir yn hwyrach mewn sgwrs yn aros yn ei lle. Nid yw'n newid dechrau'r prompt, felly mae'r tro cyn hynny yn aros yn y cache.
  • Cymharir dadleuon galwadau offer mewn troeon asiant cynharach yn ôl gwerth. Nid yw trefn allweddi a bylchu'r JSON hwnnw o bwys.
  • Mae'r tri phwynt terfyn yn darllen sgwrs yn yr un ffordd. Mae sgwrs a barheir ar bwynt terfyn arall yn cadw ei rhagddodiad a rennir pan fo'r cynnwys yr un fath.

Meysydd goestyn

Mae prompt_cache_key (Chat Completions a Responses) a cache_control ar flociau cynnwys Messages yn cael eu derbyn, felly mae cod clechsiennau presennol yn rhedeg heb nowysgau. Nid yw unrhyw un ohonyn nhw'n gofyn: mae caching yn awtomatig ac yn gweithio'r un fath heb nhw.

Maes Anfonir i Beth ydyw
prompt_cache_key /v1/chat/completions, /v1/responses Allwedd llwybro cache o'r API OpenAI.
cache_control /v1/messages Toriad cache ar floc cynnwys, bloc system neu neges o'r API Anthropic.
stream_options /v1/chat/completions Mae include_usage yn gofyn i'r API OpenAI am y defnydd ar ffrwd. Yma mae pob ffrwd yn gorffen gyda'r defnydd.

Cyfrif tokens

Mae dau bwynt terfyn rhad ac am ddim, POST /v1/tokenize a POST /v1/messages/count_tokens, yn cyfrif tokenau testun neu gais cyfan ar gyfer y modelau pwysau agored a gynhelir cyn i chi ei anfon. Mae ganddynt eu tudalen eu hunain: Cyfrif tokenau