將字串送出作嵌入處理前,可使用 OpenAI 的 tiktoken Token 化程式庫,估算所需的 Token 數量。
這尤其實用,因為嵌入模型(例如 text-embedding-3-small)設有不得超出的 Token 數量上限。
---
如何使用 Tiktoken 計算 token
你可以使用 tiktoken Python 套件,計算字串會產生的 token 數量。
以下是一段範例程式碼片段:
import tiktoken
def num_tokens_from_string(string: str, encoding_name: str) -> int:
"""返回文字字串中的 token 數。"""
encoding = tiktoken.get_encoding(encoding_name)
num_tokens = len(encoding.encode(string))
return num_tokens
# 使用範例
num_tokens = num_tokens_from_string("tiktoken is great!", "cl100k_base")
print(num_tokens)重要事項:
對於第三代嵌入模型(例如 text-embedding-3-small 或 text-embedding-3-large),應使用 「cl100k_base」編碼。
不同模型可能需要不同的編碼方式——如有疑問,請務必查閱模型文件。
---
為何 token 計數很重要
如果你的字串超出模型的輸入大小上限,你的 API 要求將會失敗。
預先準確計算 token,可確保嵌入工作流程更順暢,並防止處理期間出錯。
---
