Před odesláním řetězce pro embedding můžete odhadnout, kolik tokenů použije, pomocí knihovny tokenizeru tiktoken od OpenAI.
To je obzvlášť užitečné, protože embeddingové modely (například text-embedding-3-small) mají maximální limity tokenů, do kterých se musíte vejít.
---
Jak počítat tokeny pomocí Tiktoken
K výpočtu počtu tokenů, které řetězec vygeneruje, můžete použít balíček Pythonu tiktoken.
Zde je ukázkový úryvek kódu:
import tiktoken
def num_tokens_from_string(string: str, encoding_name: str) -> int:
"""Vrací počet tokenů v textovém řetězci."""
encoding = tiktoken.get_encoding(encoding_name)
num_tokens = len(encoding.encode(string))
return num_tokens
# Příklad použití
num_tokens = num_tokens_from_string("tiktoken is great!", "cl100k_base")
print(num_tokens)Důležité:
Pro embeddingové modely třetí generace (např.
text-embedding-3-smallnebotext-embedding-3-large) byste měli použít kódování"cl100k_base".Různé modely mohou vyžadovat různá kódování — pokud si nejste jistí, vždy nahlédněte do dokumentace modelu.
---
Proč na počítání tokenů záleží
Pokud váš řetězec překročí maximální velikost vstupu modelu, váš požadavek API selže.
Přesné počítání tokenů předem zajišťuje plynulejší pracovní postupy s embeddingy a předchází chybám při zpracování.
---
