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-smallvaitext-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ā.
---
