OpenAI
Kjo faqe u përkthye automatikisht. Shih artikullin origjinal në anglisht.

Çfarë janë tokenët dhe si t’i numëroni?

Përditësuar: 6 days ago

Çfarë janë tokenët?

Tokenët janë blloqet ndërtuese të tekstit që përpunojnë modelet e OpenAI. Ata mund të jenë aq të shkurtër sa një karakter i vetëm ose aq të gjatë sa një fjalë e plotë, në varësi të gjuhës dhe kontekstit. Hapësirat, shenjat e pikësimit dhe fjalët e pjesshme kontribuojnë të gjitha në numërimin e tokenëve. Kështu e segmenton API-ja tekstin tuaj brenda sistemit përpara se të gjenerojë një përgjigje.

Rregulla të dobishme orientuese për anglishten:

  • 1 token ≈ 4 karaktere

  • 1 token ≈ ¾ e një fjale

  • 100 tokenë ≈ 75 fjalë

  • 1–2 fjali ≈ 30 tokenë

  • 1 paragraf ≈ 100 tokenë

  • ~1 500 fjalë ≈ 2 048 tokenë

Tokenizimi ndryshon sipas modelit dhe kodimit. Përdorni mjetin Tokenizer ose tiktoken.encoding_for_model(model) për të marrë numërimin e saktë për modelin tuaj të synuar.

Shembuj

Ja disa mostra tekstesh nga bota reale me numërimet e tyre të përafërta të tokenëve:

  • Citati i Wayne Gretzky-t “Humb 100% të gjuajtjeve që nuk i bën” = 11 tokenë

  • Karta e OpenAI = 476 tokenë

  • Deklarata e Pavarësisë e SHBA-së = 1 695 tokenë

Si llogariten numërimet e tokenëve

Kur i dërgoni tekst API-së:

  1. Teksti ndahet në tokenë.

  2. Modeli i përpunon këta tokenë.

  3. Përgjigjja gjenerohet si një sekuencë tokenësh dhe më pas kthehet sërish në tekst.

Përdorimi i tokenëve gjurmohet në disa kategori:

  • Tokenët hyrës – tokenë në kërkesën tuaj.

  • Tokenët dalës – tokenë të gjeneruar në përgjigje.

  • Tokenët e ruajtur në cache – tokenë të ripërdorur në historikun e bisedës (shpesh faturohen me tarifë të reduktuar).

  • Tokenët e arsyetimit – në disa modele të avancuara, përfshihen brenda sistemit “hapa mendimi” shtesë përpara prodhimit të rezultatit përfundimtar.

Këto numërime shfaqen në metadatat e përgjigjes suaj të API-së dhe përdoren për faturim dhe gjurmim të përdorimit.

Për të eksploruar më tej tokenizimin, mund të përdorni mjetin Tokenizer interaktiv, i cili ju lejon të llogaritni numrin e tokenëve dhe të shihni si ndahet teksti në tokenë.

Përndryshe, nëse dëshironi ta tokenizoni tekstin në mënyrë programatike, përdorni Tiktoken si një tokenizues të shpejtë BPE të përdorur posaçërisht për modelet e OpenAI.

Kufijtë e tokenëve

Çdo model ka një kufi maksimal të kombinuar tokenësh (hyrje + dalje). Modelet aktuale me kapacitet të lartë mbështesin deri në qindra mijëra tokenë në kontekst, megjithëse kufijtë praktikë mund të ndryshojnë në varësi të versionit të modelit dhe nivelit tuaj të përdorimit.

Nëse e tejkaloni kufirin, mund të:

  • Shkurtoni ose riformuloni kërkesat.

  • Ndani tekstin e madh në pjesë më të vogla.

  • Përmblidhni ose parapërpunoni hyrjet përpara se t’i dërgoni.

Çmimi i tokenëve

Përdorimi i API-së tarifohet për token, duke ndryshuar sipas modelit dhe sipas faktit nëse tokenët janë hyrës, dalës apo të ruajtur në cache. Shikoni faqen e çmimeve të OpenAI për tarifat aktuale. Disa modele arsyetimi mund të përdorin më shumë tokenë brenda sistemit, por synojnë të përmirësojnë efikasitetin duke ulur numrin e tokenëve të nevojshëm për çdo detyrë të përfunduar.

Eksplorimi i tokenëve

API-ja i trajton fjalët sipas kontekstit të tyre në të dhënat e korpusit. Modelet marrin kërkesën, e shndërrojnë hyrjen në një listë tokenësh, përpunojnë kërkesën dhe i kthejnë tokenët e parashikuar në fjalët që shohim në përgjigje.

Ajo që për ne mund të duket si dy fjalë identike, mund të gjenerohet në tokenë të ndryshëm në varësi të mënyrës si janë strukturuar brenda tekstit. Merrni parasysh si gjeneron API-ja vlera tokenësh për fjalën ‘red’ bazuar në kontekstin e saj brenda tekstit:

Sentence split into color-coded tokens with Text selected over Token IDs
Token ID output as a list of integers with the Token IDs tab selected

Në shembullin e parë më sipër, tokeni “2266” për ‘ red’ përfshin një hapësirë pasuese (Shënim: këto janë ID tokenësh shembull për qëllime demonstrimi).

Sentence split into color-coded token blocks: My favorite color is Red.
Tokenizer output with Token IDs selected and a list of numeric token IDs

Tokeni “2296” për ‘ Red’ (me një hapësirë paraprirëse dhe që fillon me shkronjë të madhe) është i ndryshëm nga tokeni “2266” për ‘ red’ me shkronjë të vogël.

Tokenizer example splitting “Red is my favorite color.” into color-coded tokens
Tokenizer output with Token IDs selected and a list of token ID numbers

Kur ‘Red’ përdoret në fillim të një fjalie, tokeni i gjeneruar nuk përfshin hapësirë paraprirëse. Tokeni “7738” është i ndryshëm nga dy shembujt e mëparshëm të fjalës.

Vëzhgime:

Sa më i mundshëm/i shpeshtë të jetë një token, aq më i ulët është numri i tokenit që i caktohet:

  • Tokeni i gjeneruar për pikën është i njëjtë (“13”) në të 3 fjalitë. Kjo ndodh sepse, nga ana kontekstuale, pika përdoret pothuajse në mënyrë të ngjashme në të dhënat e korpusit.

  • Tokeni i gjeneruar për ‘red’ ndryshon në varësi të vendosjes së tij brenda fjalisë:

    • Me shkronjë të vogël në mes të një fjalie: ‘ red’ - (token: “2266”)

    • Me shkronjë të madhe në mes të një fjalie: ‘ Red’ - (token: “2297”)

    • Me shkronjë të madhe në fillim të një fjalie: ‘Red’ - (token: “7738”)

A ishte i dobishëm ky artikull?