Než odešlete řetězec k vytvoření embeddingu, můžete pomocí knihovny tokenizátoru tiktoken od OpenAI odhadnout, kolik tokenů bude potřeba.
To je zvlášť užitečné, protože embeddingové modely (například text-embedding-3-small) mají maximální limity tokenů, které nesmíte překročit.
---
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-small nebo text-embedding-3-large) použijte 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 k danému 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í.
---
