Eining 6 / 11

Hagræðing kostnaðar: Hvetjandi skyndiminni

Hagnaður:

  • Útskýrðu forskeyti samsvarandi rökfræði skyndiminni skyndiminnis
  • Eykur skyndiminni með því að setja fast samhengi fyrst og breytilegt samhengi á eftir
  • Getur reiknað skyndiminni skrifa/lesið hagfræði og jöfnunarpunkt

LLM vara lítur ódýr út í frumgerð; Þegar þú stígur upp á skalann kemur reikningurinn á óvart. Í flestum vinnuálagi kemur megnið af reikningnum úr sama fasta samhenginu sem er sendur aftur og aftur með hverri beiðni: löng kerfishvöt, reglubók, tilvísunarskjöl. Snögg skyndiminni útilokar nákvæmlega þessa sóun. Í þessari einingu muntu læra hvernig skyndiminni virkar, hvernig á að raða boðinu til að smella og hvernig á að reikna út jöfnunarpunkt skyndiminnihagkerfisins. Þegar það er sett upp á réttan hátt getur það eitt og sér lækkað reikninginn þinn um helming eða jafnvel lægri.

Hvernig virkar skyndiminni? Hin eina óbreytanlega regla

Hvetjandi skyndiminni er samsvörun með forskeyti. Þjónustuveitan geymir tímabundið táknin sem hún hefur unnið úr frá upphafi pöntunar þinnar. Ef kvaðningin byrjar með sama forskeytinu í næstu beiðni er þessi sameiginlegi hluti ekki endurreiknaður; Það er miklu ódýrara að lesa en skyndiminni.

Ein óbreytanleg regla leiðir af þessu: Ef eitt bæti breytist einhvers staðar í forskeytinu verður allt skyndiminni ógilt frá þeim tímapunkti og áfram. Það er, fast efni ætti að vera í upphafi og breytilegt efni ætti að vera í lokin. Ef þú setur línu í byrjun kerfistilkynningarinnar sem breytist við hverja beiðni, eins og „Dagsetning í dag: 18.07.2026“, mun allt á bak við hana ekki geta farið inn í skyndiminni.

Vinnslupöntunin er venjulega: verkfæri → kerfisboð → skilaboð. Þú setur skyndiminni (brotpunkt) í lok fasta hlutans.

Skyndiminni hagkerfi

Skyndiminni hefur þrjú verðlag:

  • Skyndiminni skrifa: Geymir í fyrsta skipti. ~1,25x venjulegt inntaksverð (fyrir 5 mínútna geymslu).
  • Lest skyndiminni: Lestur á síðari beiðnum. ~0,1 sinnum venjulegt inntaksverð — það er einn tíundi.
  • Venjulegt inntak: Sá hluti sem fer ekki inn í skyndiminni og er afgreiddur á fullum kostnaði hverju sinni.

Jafnjafnvægi: Fyrsta beiðni greiðir iðgjald (1,25×). Frá seinni beiðni kemur lesturinn (0,1×) til sögunnar. Í grófum dráttum, þú munt vera háls og háls á tveimur beiðnum; Eftir það er það hreinn sparnaður. Því stærra sem fasta samhengið er og því fleiri beiðnir sem það er endurnýtt, því meiri verður ávinningurinn.

Atburðarás

Virkar skyndiminni?

Stór föstu kerfishvöt, þúsundir beiðna

Já — hæstu tekjur

Margar spurningar um sömu tilvísunarskjöl

Allt öðruvísi stuttur texti fyrir hverja beiðni

Nei - skrifa bónus er sóun

Einu sinni beiðni

Nei — alls enginn lestur

Dagsetning/auðkenni breytist við hverja beiðni við kerfishvetningu

Nei — forskeyti er bilað, högg er núll

Skref fyrir skref: Hvernig á að setja upp höggkvaðningu?

  1. Aðskilja fasta og breytilega. Hvaða efni breytist aldrei (kerfistilkynning, reglubók, skjöl)? Hvað breytist við hverja beiðni (notandaspurning, dagsetning, auðkenni)?
  2. Settu fastann í byrjun. Við vinnslu verður sá hluti sem kemur fyrst (verkfæri, kerfi) að vera stöðugur.
  3. Settu breytuna í lokin. Núverandi spurning notanda, sl.
  4. Settu skiltið við enda landamæranna. Settu skyndiminni punktinn í síðasta blokk fasta hlutans.
  5. Staðfestu högg. Athugaðu hvort cache_read_input_tokens sé stærra en núll í notkunarreitnum í svarinu. Ef núll er falinn truflun í forskeytinu.

{ "system": [ { "type": "texti", "text": "{{large_constant_system_promptu_and_rules}}", "cache_control": { "type": " skammlífur" } } ], "skilaboð": [ { "role": "notandi", "content": "{{queser ]}} núverandi

Ábending: Ekki giska á skyndiminni, mæla þau. Ef usage.cache_read_input_tokens er enn núll við samfelldar beiðnir, er þögull brotsjór (datetime.now() við kerfishvetningu, óraðað JSON, listi yfir verkfæri sem breytast við hverja beiðni) í gangi. Berðu saman hráa vísbendingu tveggja beiðna bæti fyrir bæti og finndu muninn.

Silent Disruptors

Dæmigert mynstur sem skemmir skyndiminni óafvitandi:

# BREAKER: að fella inn upplýsingar í kerfistilkynninguna sem breytast með hverri beiðni "Dagsetning dagsins: {{nú}}. Þú ert aðstoðarmaður..." ← forskeytið breytist við hverja beiðni, högg er núll# TRUE: færðu breytuna í skilaboðakerfið: "Þú ert aðstoðarmaður..." ← fasti slær inn skyndiminnisskilaboðin: [{hlutverk: "daginn notandi:" ..."}] ← breyta í lokin

Aðrir brotsjór: JSON raðað öðruvísi á hverja beiðni (halda lyklum í fastri röð), listi yfir verkfæri sem er breytilegur eftir notendum (verkfæri eru unnin fyrst; ekkert fer inn í skyndiminni ef þau breytast), breytir líkaninu í miðju samtali (skyndiminni eru fyrirmyndarsértæk).

Veik kvaðning / Sterk kvaðning (skyndiminnisvæn uppbygging)

# WEAK (skyndiminnisuppbygging)kerfi: "Dagsetning: 18.07.2026 14:32. Notandi: Ahmet (kennitala 8842). Þú ert stuðningsbotni. Reglur: ...(2000 tákn)..."

# STERKT (skyndiminnisvænt uppbygging)kerfi: "Þú ert stuðningsvél. Reglur: ...(2000 tákn, breytast aldrei)..." [skyndiminnismerki]skilaboð: [ { hlutverk: notandi, innihald: "Dagsetning: 18.07.2026 14:32. Notandakenni: 8842. Spurning: hvernig byrja ég á endurgreiðslu?" }]

Í veiku útgáfunni er reglublokkin um 2000 tákn afgreidd á fullum kostnaði við hverja beiðni. Í sterkri útgáfunni er sami kubburinn skrifaður einu sinni og lesinn á allar síðari beiðnir fyrir tíunda af verðinu.

Þrjú Mini Cass

Tilfelli 1 — Skyndiminni reglubókarinnar. Sjálfvirkni bókhalds var að bæta 12.000 táknreglubókinni við hvern reikning; 5.000 beiðnir á dag. Skyndiminni kostar ~$180 á dag. Þeir héldu reglubókinni stöðugri og geymdu hana í skyndiminni: fyrstu beiðnir greiddu skrifþóknun, síðar lestur 0,1×. Inntakskostnaður lækkaði ~90% í ~$18 á dag.

Mál 2 — Kostnaður við falinn dagsetningarlínu. Eitt lið setti upp skyndiminni en var að fá engin högg; cache_read_input_tokens var alltaf núll. Ástæða: Það var datetime.now() í fyrstu línu kerfishvetjunnar, forskeytið var að breytast við hverja beiðni. Þegar við færðum dagsetninguna yfir í notendaskilaboðin jókst högghlutfallið skyndilega úr 0% í 94%.

Tilfelli 3 — Skyndiminni á röngum stað. Leitarforrit var að senda allt aðrar stuttar fyrirspurnir með hverri beiðni; Þeir bættu ákaft við skyndiminni merki. Án sameiginlegs forskeyti greiddi hver beiðni aðeins skrifþóknun, engin lestur - eykur kostnaðinn. Þeir fjarlægðu skiltið. Lexía: skyndiminni borgar aðeins ef það er stórt og stöðugt forskeyti sem er endurnýtt.

Algeng mistök

  • Blöndun fasta og breytu: Þegar innihald breytu er í forskeytinu er höggið endurstillt.
  • Innfelling dagsetning/auðkennis í kerfishvetningu: Algengasta þögli truflarinn.
  • Ekki mæla höggið: Ef ekki er hakað við cache_read_input_tokens verður ekki tekið eftir sóun.
  • Bætir skyndiminni þegar það er ekkert opinbert forskeyti: Þú borgar aðeins skrifþóknunina, kostnaðurinn eykst.
  • Skipt um ökutækjalista eða gerð: Forskeytið er brotið frá upphafi; allt er endurskrifað.
  • Að gleyma lágmarksstærð skyndiminni: Mjög stutt skyndiminni (undir ~1–4k tákn eftir gerð) munu ekki fara hljóðlaust inn í skyndiminni.

Dýpri: Hönnun skyndiminni eftir gerð vinnuálags

Raunveruleg útborgun skyndiminni er mismunandi eftir eðli vinnuálags þíns; svo kynntu þér umferðina þína fyrst. Þrjú dæmigerð mynstur og rétt uppsetning:

Algengar kerfishvetningar, mismunandi spurningar. Algengasta fyrirtækismynstrið: stór kerfishvöt (hlutverk, reglur, kannski tilvísunarskjal) með hundruðum mismunandi notendaspurninga. Hér er fasti hluti (kerfi) í skyndiminni upphaflega; hver ný spurning greiðir aðeins fullt verð fyrir sinn eigin litla skammt. Hagnaðurinn er mjög mikill vegna þess að stóri hlutinn er endurtekinn á tíunda hluta verðsins.

Marghringur einleikur. Þegar samtal dregst á langinn byggist hver ný umferð ofan á alla fyrri sögu. Ef þú setur skyndiminnisfánann í lok síðustu umferðar, endurnotar hver beiðni fyrra samtalsforskeytið; högg safnast upp eftir því sem samtalið vex. Þetta dregur verulega úr kostnaði við langa aðstoðartíma.

Samnýtt forskeytið er síðasta bitinn sem breytist. Margar beiðnir deila miklu setti af föstum forskriftum (sýnishorn, leiðbeiningar) en eru aðskildar með einni spurningu í lokin. Þú setur skyndiminnibendilinn í lok sameiginlega hlutans; Annars myndi hver beiðni skrifa sitt eigið skyndiminni og ekkert af því yrði lesið.

Einn fyrirvari: skyndiminni fer eftir gerð og ákveðinni lágmarksstærð. Mjög lítil forskeyti (undir nokkur þúsund tákn, fer eftir gerð) fara ekki hljóðlaust inn í skyndiminni jafnvel þótt þú flaggar þeim - cache_creation_input_tokens eru áfram núll. Að breyta líkaninu í miðju samtali ógildir líka allt skyndiminni; Ef annað verkefni krefst ódýrrar gerðar, hafðu aðalflæðið í einni gerð og settu aukaverkið í sérstakt símtal.

Í stuttu máli

Skyndiminni er samsvörun fyrir forskeyti: fast efni ætti að vera í upphafi, breytilegt efni ætti að vera í lokin. Fyrir stórt, endurnýtt samhengi er lestrarkostnaður tíundi hluti af fullu verði, nokkurn veginn jöfnuður í tveimur beiðnum. Algengustu mistökin eru að skemma forskeytið með því að fella inn breytileg gögn í kerfishvetjunni; Þú staðfestir höggið með því að mæla það í notkunarreitnum.

Umsóknarverkefni

Veldu vinnuálag. (1) Skiptu efninu í tvo dálka: „breytist aldrei“ og „breytist við hverja beiðni“. (2) Endurteiknaðu hvetjandi uppbyggingu, settu fasta hlutann í byrjun og breytilega hlutann í lokin. (3) Áætlaðu táknstærð fasta hlutans og berðu saman mánaðarkostnað með/án skyndiminni. (4) Athugaðu hvaða reit (cache_read_input_tokens) þú munt staðfesta höggið úr.

gátlisti

  • [ ] Ég get útskýrt að skyndiminni er forskeytissamsvörun og eina óbreytanlega reglan.
  • [ ] Ég get aukið nákvæmni með því að setja fasta innihaldið í byrjun og breytuna í lokin.
  • [ ] Ég kann að skrifa/lesa hagfræði og jöfnunarpunktinn með tveimur beiðnum.
  • [ ] Ég þekki þögla truflana (dagsetning, óraðað JSON, breyting á bílalista).
  • [ ] Ég get staðfest hittinginn með usage.cache_read_input_tokens.