OpenAI
Tato stránka byla přeložena strojově. Zobrazit původní článek v angličtině.

Jak zjistím, kolik tokenů bude mít řetězec, než se ho pokusím vložit jako embedding?

Výpočet/odhad tokenů pro embedding

Aktualizováno: 18 hours ago

Než odešlete řetězec pro embedding, můžete odhadnout, kolik tokenů spotřebuje, pomocí knihovny tokenizéru OpenAI tiktoken.

To je obzvlášť užitečné, protože embedding 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

Pomocí balíčku Pythonu tiktoken můžete vypočítat počet tokenů, které řetězec vygeneruje.

Zde je ukázka 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 embedding modely třetí generace (např. text-embedding-3-small nebo text-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 se podívejte do dokumentace modelu.


Proč je počítání tokenů důležité

  • Pokud váš řetězec překročí maximální velikost vstupu modelu, váš požadavek API selže.

  • Přesné spočítání tokenů předem zajišťuje plynulejší práci s embeddingy a předchází chybám při zpracování.


Užitečné odkazy

Byl tento článek užitečný?