埋め込み用の文字列を送信する前に、OpenAI の tiktoken トークナイザーライブラリを使って、使用されるトークン数を見積もることができます。
埋め込みモデル(text-embedding-3-small など)には、超えないようにする必要がある最大トークン数が設定されているため、特に便利です。
---
tiktoken でトークンをカウントする方法
tiktoken Python パッケージを使用して、文字列が生成するトークン数を計算できます。
サンプルコードスニペットを示します:
import tiktoken
def num_tokens_from_string(string: str, encoding_name: str) -> int:
"""Returns the number of tokens in a text string."""
encoding = tiktoken.get_encoding(encoding_name)
num_tokens = len(encoding.encode(string))
return num_tokens
# Example usage
num_tokens = num_tokens_from_string("tiktoken is great!", "cl100k_base")
print(num_tokens)重要:
第 3 世代の埋め込みモデル(text-embedding-3-small や text-embedding-3-large など)では、「cl100k_base」 エンコーディングを使用してください。
モデルによって必要なエンコーディングが異なる場合があります。不明な場合は、必ずモデルのドキュメントを参照してください。
---
トークン数のカウントが重要な理由
文字列がモデルの最大入力サイズを超えると、API リクエストは失敗します。
事前にトークン数を正確にカウントすることで、埋め込みワークフローがよりスムーズになり、処理中のエラーを防げます。
---
