OpenAI
Šo lapu tulkoja mašīntulks. Skatīt oriģinālo rakstu angļu valodā.

Kā noteikt, cik daudz tekstvienību būs virknē, pirms mēģinu to iegult?

Tekstvienību aprēķināšana/aptuvena noteikšana iegulšanai

Atjaunināts: 8 days ago

Pirms virknes nosūtīšanas iegulšanai varat aprēķināt, cik tekstvienību tā izmantos, lietojot OpenAI tiktoken tekstvienību dalīšanas bibliotēku.

Tas ir īpaši noderīgi, jo iegulumu modeļiem (piemēram, text-embedding-3-small) ir maksimālie tekstvienību ierobežojumi, kuros jums jāiekļaujas.

---

Kā skaitīt tekstvienības ar Tiktoken

Varat izmantot Python pakotni tiktoken, lai aprēķinātu, cik tekstvienību ģenerēs virkne.

Tālāk ir koda fragmenta piemērs:

import tiktoken

def num_tokens_from_string(string: str, encoding_name: str) -> int:
"""Atgriež tekstā esošo tekstvienību skaitu."""
encoding = tiktoken.get_encoding(encoding_name)
num_tokens = len(encoding.encode(string))
return num_tokens

# Piemēra lietojums
num_tokens = num_tokens_from_string("tiktoken is great!", "cl100k_base")
print(num_tokens)

Svarīgi:

  • Trešās paaudzes iegulumu modeļiem (piem., text-embedding-3-small vai text-embedding-3-large) jāizmanto "cl100k_base" kodējums.

  • Dažādiem modeļiem var būt nepieciešami dažādi kodējumi — ja neesat pārliecināts, vienmēr skatiet modeļa dokumentāciju.

---

Kāpēc tekstvienību skaitīšana ir svarīga

  • Ja jūsu virkne pārsniedz modeļa maksimālo ievades lielumu, API pieprasījums neizdosies.

  • Precīza tekstvienību saskaitīšana iepriekš nodrošina vienmērīgākas iegulumu darbplūsmas un novērš kļūdas apstrādes laikā.

---

Vai šis raksts bija noderīgs?