ChatGPTのトークン数とは?計算(カウント)方法、日本語と英語の違いを解説
ChatGPTのTips第三弾です。今回は以下の疑問や悩みを解決したいと思います。
「ChatGPTのトークンって何?」
「どうやってカウントするの?」
「日本語と英語では計算方法が違うって本当?」
ぜひ参考にしてください。
目次
ChatGPTのトークンとは
ChatGPTのトークンとは処理テキストの基本単位です。「文字列を意味のあるかたまりに分類したもの」という理解で構いません。たとえば、「This is a cat.」の場合は以下のとおりです。
- This:1トークン
- is:1トークン
- a:1トークン
- cat:1トークン
- .(ピリオド):1トークン
5つの意味のあるかたまりに分けられるので、「This is a cat.」は5トークンです。
しかし、日本語の場合はトークンのカウント方法が異なるのでご注意ください。詳細は後述します。
ChatGPTのトークンの重要性
ChatGPTを利用するにあたり、トークンはとても重要な役割を担っています。その理由は以下のとおりです。
- ChatGPTの文字数制限はトークン数に左右される
- OpenAIのAPI料金はトークン数で決まる
それぞれ詳細を解説します。
ChatGPTの文字数制限はトークン数に左右される
前提として、ChatGPTの入出力機能には文字数制限がありますが、それは入力したトークン数に左右されます。
ここで注意したいのが、「トークン数≠文字数」という点です。たとえば「私は、学校の廊下を駆け抜けました。」は17文字ですが、トークン数は20と算出されます。
トークンの概念を理解しておけば、文字数制限に引っかかっても慌てずにすみます。
ChatGPTの文字数制限に関してはこちらの記事を参考にしてください。
>>>ChatGPTの文字数制限とは?有料版と無料版の違い、回避する方法を解説
OpenAIのAPI料金はトークン数で決まる
OpenAIのAPを利用する場合、料金はトークン数で決まります。具体的な計算式は以下のとおりです。
API料金=入力トークン数×利用単価+出力トークン数×利用単価
つまり、トークンの数が増えるほどAPI料金も高くなる仕組みです。
ChatGPTのトークン数の上限は?
結論、ChatGPTのトークン数の上限は、4,096~128,000です。上限に振れ幅があるのは、ChatGPTのモデルごとに処理できるトークン数が異なるため。詳細は以下のとおりです。
- GPT-3.5:4,096トークン
- GPT-4:32,768トークン
- GPT-4 Turbo:128,000トークン
快適に使うためには、有料版のGPT-4をおすすめします。
ChatGPTのトークンの計算(カウント)方法
ここでは、ChatGPTのトークンを計算する方法を解説します。英語と日本語ではカウントの仕方が異なるので、「Tokenizer(トークナイザー)」と呼ばれるツールを使ってその差をチェックしていきましょう。
ちなみに、「Tokenizer(トークナイザー)」はOpenAI社が提供する公式ツールです。
英語の場合
英語の場合、トークンのカウント方法は以下のとおりです。
- 1単語≒1トークン
- ピリオドなどの句読点も1トークン
実際に「We are having a party at my place this coming weekend. All members are in their 20’s including me. Please let me know what kind of food I should prepare.(今度の週末、私の家でパーティーをすることになりました。メンバーは私を含め全員20代です。どのような料理を用意すればいいか教えてください。)」という文章のケースをみてみましょう。
結果は以下のとおりです。
Charactersは文字数を指します。つまり、トークン数35、文字数153という文章ということになります。
トークンに分割した結果は以下のとおりです。
- We
- are
- having
- a
- party
- at
- my
- place
- this
- coming
- weekend
- .(ピリオド)
- All
- members
- are
- in
- their
- (空白)←スペースが1トークンとしてカウントされている?
- 20
- ‘s
- including
- me
- .(ピリオド)
- Please
- let
- me
- know
- what
- kind
- of
- food
- I
- should
- prepare
- .(ピリオド)
注目すべきは「 (空白)」と「’s」の2つです。これらも1トークンとしてカウントされています(※)。このような可能性もあることを念頭においてください。
※ もしくは、前後の単語と合わせて2トークンとしてカウントされている
日本語の場合
日本語の場合は、「ひらがな」と「漢字」でトークン数が異なり、1文字=1トークンではないので、英語よりも計算方法が複雑です。あくまでも目安になりますが、ひらがな=1~2トークン、漢字=1~3トークンをイメージするといいでしょう。
実際に「私は、学校の廊下を駆け抜けました。」という文章の場合は以下のとおりです。
文字数が17なのに対し、トークン数は20と上回っています。実際の分割結果は以下のとおりです。
- 私
- は
- 、
- 学
- 校:2トークン
- の
- 廊:2トークン
- 下
- を
- 駆:3トークン
- け
- 抜:2トークン
- け
- ました
- 。
トークン数にばらつきがあることがわかるかと思います。
もう少しわかりやすくするために、「君」「空」「です」という3パターンで検証してみましょう。
まずは「君」からです。
トークン数は2と表示されます。
次に「空」です。
「君」と「空」はどちらも漢字で、ひらがなにした場合の文字数も同じですが、トークン数は「空」のほうが少なくすみます。
最後に「です」を試してみます。
「です」のようなパターンは、2文字にも関わらず1トークンとしてカウントされます。
日本語プロンプトでChatGPTを利用する際はトークン数にご注意ください。
ChatGPTのトークンのまとめ
今回は、ChatGPTのトークンについて解説しました。押さえておきたいポイントは以下のとおりです。
- トークンとは「文字列を意味のある単位に分割したもの」
- トークン数≠文字数
- トークン数で文字数制限やAPI料金が左右される
- 英語と日本語ではトークン数の計算方法が異なる
当メディアでは他にもChatGPTのTipsをご紹介しています。ぜひ参考にしてください。
RANKING ランキング
- WEEKLY
- MONTHLY
UPDATE 更新情報
- ALL
- ARTICLE
- MOVIE
- FEATURE
- DOCUMENT