Vienetas 2 / 11

Žetonas ir kainodaros logika

Pelnas:

  • Paaiškinkite žetono sąvoką, įvesties/išvesties žetonų atskyrimą ir prieigos raktą.
  • Gali apskaičiuoti užklausos kainą ir mėnesio darbo krūvį iš žetonų skaičiaus ir vieneto kainos
  • Gali palyginti modelio pasirinkimo ir greito ilgio įtaką sąnaudoms

Negalite sukurti didelio masto sprendimo nesuvokdami LLM API ekonomikos. Demonstracinė versija paleidžiama vieną kartą; Svarbiausia, kad būtų galima numatyti, kokia bus sąskaita, kai per mėnesį skambinama tūkstančiai. Šiame skyriuje mes nustatome pinigų pusę: kas yra tokenas, kodėl įvesties ir išvesties kaina skiriasi, kaip apskaičiuoti užklausos kainą ir kaip numatyti mėnesio darbo krūvį. Ši informacija leidžia išmatuoti optimizavimo metodų grąžą (talpykla, modelio pasirinkimas, paketas) vėlesniuose vienetuose.

Kas yra Tokenas?

Žetonas yra mažiausias vienetas, kuriuo modelis apdoroja tekstą. Žodis ne visada yra ženklas; žetonas paprastai yra žodžio dalis. Grubiai tariant, angliškai 1 prieigos raktas yra ≈ 4 simboliai ≈ 0,75 žodžio. Turkų ir kodų kalboje santykis skiriasi: dėl priesaginės struktūros ir abėcėlės turkų kalbos žodžiai dažnai skirstomi į daugiau žetonų nei anglų kalboje. Todėl būtina išmatuoti žetonų skaičių tiekėjo žetonų skaičiavimo įrankiu, o ne spėlioti akimis.

Tokenizavimas (teksto padalijimo į žetonus procesas) kiekvienam modeliui gali skirtis. Tai turi dvi praktines pasekmes: (1) tas pats tekstas skirtinguose modeliuose gali duoti skirtingą žetonų skaičių; (2) Numatymai, atlikti naudojant kitų tiekėjų žetonus (pvz., OpenAI tiktokenų biblioteką), Claude'ui bus netikslūs – naudokite žetonų skaičiavimo patarimą pagal naudojamą modelį.

Užuomina: "Kiek žetonų yra?" Neatsakyk į klausimą aklai. Perduokite tipinį tekstą per žetonų skaičiavimo API; Priimdami sprendimus dėl biudžeto pagrįsti matavimu.

Įvesties ir išvesties žetonai

Sąskaitą sudaro dvi dalys:

  • Įvesties prieigos raktai: viskas, ką siunčiate modeliui – sistemos raginimas, ankstesnės kelionės, vartotojo pranešimas, dokumentai, jei tokių yra. Visi jie apdorojami vienu metu.
  • Išvesties prieigos raktai: modelio sukurtas atsakas. Kiekvienam išvesties žetonui modelis žingsnis po žingsnio atlieka skaičiavimą.

Daugumos teikėjų produkcija yra kelis kartus brangesnė nei įvestis. Priežastis paprasta: nuskaityti visą įvestį iš karto yra pigiau nei gaminti išvesties prieigos raktą po vieno. Šios asimetrijos žinojimas paaiškina, kodėl tokie optimizavimai, kaip „reikia glaustų atsakymų“, yra tokie veiksmingi.

Pavyzdinės kainos (už 1 mln. žetonų, USD)

Žemiau pateikta lentelė yra nuoroda; Kainos laikui bėgant gali keistis, patvirtinkite dabartinį savo paslaugų teikėjo sąrašą.

modelio klasė

pavyzdinis modelis

Įvestis ($/1M)

Išvestis ($/1M)

Tipiškas naudojimas

greitas/pigus

Haiku 4.5

1.00 val

5.00 val

Klasifikavimas, ženklinimas, paprasta santrauka

subalansuotas

5 sonetas

3.00 val

15.00 val

Bendrosios paskirties, kodavimo, agento darbas

stiprus

Opus 4.8

5.00 val

25.00 val

Sudėtingi samprotavimai, ilgalaikės užduotys

Kiekvienoje klasėje išvestis yra 5 kartus didesnė už įvestį; Be to, net galingo modelio įvestis yra 5 kartus didesnė nei pigaus modelio. Šios dvi ašys (įvestis↔išvestis ir modelio klasė) sudaro jūsų sąnaudų sprendimų pagrindą.

Kaip apskaičiuoti išlaidas?

Formulė paprasta:

kaina = (įvesties_žetonas / 1 000 000) × įvesties_kaina + (išvesties_tokenas / 1 000 000) × išvesties_kaina

Pavyzdinė sąskaita. Prašymas su Sonnet 5: 1500 įvesties žetonų, 400 išvesties žetonų.

įvestis = 1 500 / 1 000 000 × 3,00 = 0,0045 USD išvestis = 400 / 1 000 000 × 15,00 = 0,0060 USD iš viso = 0,0105 USD (apie 1 centas)

Vienas skambutis atrodo pigus. Tačiau padauginkite iš apimties: 20 000 skambučių per dieną → 210 USD per dieną, ~ 6 300 USD per mėnesį. Čia atsiranda mastas.

Mėnesio biudžeto šablonas

Norėdami išgauti mėnesines darbo krūvio išlaidas, naudokite šį šabloną:

1) Vidutinis užklausos įvesties prieigos raktas: ......2) Vidutinis išvesties prieigos raktas vienai užklausai: ......3) Užklausų skaičius per dieną: ......4) Darbo dienų skaičius per mėnesį: ......5) Užklausos kaina = (1)/1M × įvesties_kaina + (2)/1M × išvesties_kaina6) Mėnesio kaina = (5) × (3) × (

Sudėjus šį šabloną į skaičiuoklę ir matant, kaip suma pasikeičia pakeitus modelį, įkūnija modelio pasirinkimo (5 vienetas) ir talpyklos (6 skyrius) sprendimus.

Raginimo sutrumpinimas naudojant kopijuojamus šablonus

Didžiąją dalį išlaidų sudaro bereikalingai ilgi raginimai ir iššvaistoma produkcija. Žemiau pateikti šablonai leidžia sutaupyti tiesiogiai.

# Apribokite išvesties ilgį. Atsakykite ne daugiau kaip 3 elementus. Pridėkite pagrindimą arba įvadinį sakinį.

# Grąžinti tik prašomą lauką Pateikti tik šį JSON, nepridėkite jokio kito teksto:{"category": "...", "urgency": "low|medium|high"}

# Pašalinkite nereikalingą kontekstą Pašalinkite tik datą ir sumą iš šio teksto. Nekartokite viso teksto. Tekstas: """{{text}}"""

# Apibendrinkite ilgą kalbą (įvesties išsaugojimas) Apibendrinkite šią kalbą į 5 elementus. Vėlesniuose etapuose naudosiu šią santrauką, o ne visą praeitį. Kalba: """{{past}}"""

Silpnas raginimas / stiprus raginimas (pagal kainą)

# SILPNAS (išleidžia produkciją, brangu)Išanalizuokite šį palaikymo užklausą ir parašykite man išsamią apžvalgą.

# STIPRUS (riboja produkciją, pigus ir nuspėjamas) Klasifikuokite šią paramos užklausą. Tiesiog grąžinkite šį JSON:{"category":"sąskaita|techninis|grąžinimas|kitas","skubos":"žemas|vidutinis|aukštas"}Nerašykite aprašo.

Silpna versija gamina gal 500 išvesties žetonų; stipri versija ~15. Kadangi išvestis yra brangi, tai yra didelis skirtumas vienam skambučiui ir dauginamas iš garsumo.

Trys mini dėklai

1 atvejis – paslėpta ilgojo raginimo kaina. Apskaitos automatika surūšiavo kiekvieną sąskaitą faktūrą, todėl kiekvienai užklausai buvo pridėta 40 puslapių „taisyklių knyga“: ~12 000 įvesties žetonų vienai užklausai. Su Sonnet 5 12 000/1M×3 = 0,036 USD ką tik įvestas. 5000 sąskaitų per dieną → 180 USD per dieną. Talpinant taisyklių sąsiuvinį (6 vienetas), įvesties kaina sumažėjo ~90%.

2 atvejis – modelio sumažinimo pelnas. Viena komanda darė paprastą „teigiamų / neigiamų“ nuotaikų žymėjimą su „Opus 4.8“: 300 įvesties + 10 išvesties žetonų. Opus kaina 300/1M×5 + 10/1M×25 = 0,00175 USD. Perėjus prie Haiku, 300/1M×1 + 10/1M×5 = 0,00035 USD – 5x pigiau, tikslumo skirtumas buvo nepamatuojamas. 3 mln. skambučių per mėnesį skirtumas yra 5 250 USD → 1 050 USD.

3 atvejis – išvesties atleidimas. Kai rinkodaros komanda parengė produkto aprašymą, ji nenustato jokių produkcijos apribojimų; modelis kartais sakydavo 1500 žetonų. Kai pridėjau instrukciją „60 žodžių daugiausia“, vidutinė išvestis sumažėjo nuo 900 iki 90 žetonų. Kadangi spausdinimas buvo brangus, mėnesinė sąskaita sumažėjo trečdaliu, o tekstai tapo naudingesni.

Dažnos klaidos

  • Ženklo atspėjimas iš akies: galite klysti, ypač turkų ir kodų kalbomis. Išmatuoti.
  • Darant prielaidą, kad įvestis ir išvestis yra vienodi: išvestis paprastai yra daug brangesnė; Didžioji dalis optimizavimo gaunama sutrumpinant išvestį.
  • Neapsigaukite dėl vieno skambučio pigumo: sprendimą priima pagal garsumą. 0,01 USD × milijonas = 10 000 USD.
  • Numatymas naudojant kito teikėjo tokenizatorių: pateikia neteisingus rezultatus; Naudokite modelio žetonų skaičiavimo įrankį.
  • Neribotas pokalbių istorijos padidinimas: kiekvienas turas pridedamas prie įrašo; apibendrinti ilguose pokalbiuose.
  • Nereikalingai aukštų „max_tokens“ palaikymas: paslepia biudžeto planą ir riziką būti sumažintam; Suteikite realią vertę.

Giliau: kontekstinis langas ir ilgos įvesties išlaidos

Labai svarbu pamatyti, kaip kaina kyla „visame pokalbyje“, o ne tik „užklausoje“. Bendras teksto kiekis, kurį modelis gali apdoroti, vadinamas konteksto langu; Įvesties ir išvesties suma turi tilpti į šį langą. Šiuolaikiniai modeliai siūlo labai didelius langus (šimtus tūkstančių, net milijonus žetonų), tačiau tai nereiškia, kad galite juos „užpildyti be galo“ – viskas, ką įdėsite į langą, apmokestinama kaip įvestis.

Ilgų pokalbių spąstai yra tokie: su kiekvienu nauju raundu vėl siunčiate visą istoriją (nepilietybė 1 skyriuje). 20 raundų pokalbio metu 20-oji užklausa perduoda visus pirmuosius 19 raundų kaip įvestis. Taigi, ilgėjant pokalbiui, kaina už užklausą auga kumuliaciškai, o ne tiesiškai. 50 raundų pokalbis su agento padėjėju gali sukelti įvesties išlaidas dešimtis kartų per pirmąjį raundą.

Yra du būdai tai valdyti. Pirmasis yra kartojimas: senesnių raundų suspaudimas į vieną kartojimo bloką, paliekant neapdorotus tik paskutinius kelis raundus. Antrasis yra greitas talpyklos kaupimas (6 vienetas): fiksuoto konteksto skaitymas už dešimtadalį kainos, o ne pakartotinai jį apdoroti už visą kainą. Kartu jie žymiai sumažina sąskaitą už ilgą, daug konteksto reikalaujantį darbo krūvį. Taigi žetonų ekonomika yra visos sesijos dizainas, o ne vienas prašymas.

Apibendrinant

Žetonas yra mažiausias vienetas, kuriuo apdorojamas tekstas; sąnaudos ir produkcija įkainotos atskirai, o produkcija dažnai yra daug brangesnė. Kaina yra žetonų skaičius, padaugintas iš vieneto kainos, o tikrasis sprendimas priimamas pagal apimtį. Raginimo sutrumpinimas, našumo ribojimas ir lengviausio modelio, kuris atlieka užduotį, pasirinkimas yra tiesioginiai svertai, kurie daug kartų sumažina išlaidas.

Taikymo užduotis

Pasirinkite savo užduotį. (1) Nustatykite reprezentatyvaus raginimo įvesties ir numatomų išvesties žetonų skaičių (jei įmanoma, išmatuokite žetonų skaičiavimo įrankiu). (2) Apskaičiuokite trijų modelių klasių užklausos kainą. (3) Įvertinkite savo dienos užklausų skaičių ir apskaičiuokite trijų modelių mėnesio biudžetą. (4) Pridėkite nurodymą sutrumpinti išvestį ir atkreipkite dėmesį į numatomą sutaupymą.

kontrolinis sąrašas

  • [ ] Galiu paaiškinti žetonų sąvoką ir tas žetonų nustatymas skiriasi priklausomai nuo modelio.
  • [ ] Žinau, kodėl įvesties ir išvesties žetonų kaina skiriasi.
  • [ ] Užklausos kainą galiu apskaičiuoti pagal formulę.
  • [ ] Galiu sukurti mėnesio biudžetą darbo krūviui naudodamas šabloną.
  • [ ] Pavyzdžiu galiu parodyti išėjimo sutrumpinimo ir modelio mažinimo naudą.