tiktokenの使い方
概要
- openaiなどのLLMのトークンを扱うためのツール
- 特定のモデルのencoding方式を指定してトークン化できる
- トークン化したデータをカウントすることでトークン数を知ることができる
- なお、
cl100k_base
がGPT-4
,GPT-3.5-turbo
のモデルで使用されているエンコーディングである
インストール
$ pip install --upgrade tiktoken
具体例
import tiktoken
# エンコーディングの種類を指定してencodingを得る
encoding = tiktoken.get_encoding("cl100k_base")
# もしくはモデルを指定してencodingを得る
encoding = tiktoken.encoding_for_model("gpt-3.5-turbo")
# エンコードした情報を得る
print(encoding.encode("tiktoken is great!")) # [83, 1609, 5963, 374, 2294, 0]
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
print(num_tokens_from_string("tiktoken is great!", "cl100k_base")) # 6
print(num_tokens_from_string("お誕生日おめでとうございます", "cl100k_base")) # 11