トークンとは?LLMが扱う「言葉の部品」
LLMは人間のように文章をそのまま読んでいるわけではありません。入力された文章をまず「トークナイザー」というプログラムで細かい断片(トークン)に分割し、それぞれを数値IDに変換してから処理します。
トークンは「単語より小さく、文字より大きい」ことが多い単位です。英語では、頻出単語の「the」や「apple」は1トークンですが、珍しい単語の「tokenization」は「token」「ization」のように複数トークンに分割されます。
目安として、英語では1トークン≒4文字(0.75単語)程度、日本語では1文字が1〜3トークン程度になることが多いとされます。AIの仕組みで解説した「次に来る単語の確率予測」は、正確には「次に来るトークンの確率予測」なのです。
なぜ単語ごとではなくトークンなのか
「単語単位で処理すればいいのでは?」と思うかもしれません。しかし単語単位には、辞書が無限に膨らむという問題があります。新語・造語・タイプミス・活用形まで含めると、すべての単語を登録することは不可能です。
逆に文字単位だと辞書は小さく済みますが、1つ1つの単位が持つ意味が薄くなり、長い文脈の処理効率が大きく落ちます。トークンはこの中間を取る妥協案です。
現在主流の方式は「BPE(Byte Pair Encoding)」と呼ばれるもので、大量のテキストで頻出する文字の並びを優先的に1トークンにまとめていきます。よく使われる表現ほど少ないトークンで表せる、効率的な圧縮辞書が出来上がる仕組みです。
日本語は英語より「トークン効率が悪い」
実務で重要なのが、言語によるトークン効率の差です。トークナイザーの学習データは英語が中心のため、英語は効率よく圧縮される一方、日本語は同じ内容でも多くのトークンを消費する傾向があります。
| テキスト | 文字数 | トークン数の目安 |
|---|---|---|
| Hello, how are you? | 19文字 | 約6トークン |
| こんにちは、お元気ですか? | 13文字 | 約10〜15トークン |
つまり同じ意味の文章でも、日本語は英語の1.5〜2倍程度のトークンを消費することが珍しくありません。API料金はトークン数に比例するため、日本語ユーザーは構造的に割高になりやすいのです。
ただし近年のモデルでは多言語対応のトークナイザー改良が進み、日本語の効率は世代ごとに改善しています。正確な数はOpenAIの「Tokenizer」ページなど、各社の公式ツールで実測できます。
コンテキストウィンドウ:LLMの「一度に読める量」
トークンは料金だけでなく、LLMの能力の上限も決めます。LLMが一度に処理できるトークン数の上限を「コンテキストウィンドウ」と呼びます。
この上限には、入力(プロンプトや添付資料)と出力(回答)の両方が含まれます。上限を超えた分は処理できないか、古い部分から「忘れられて」いきます。長い会話の序盤の指示をAIが忘れてしまう現象は、これが原因です。
コンテキストウィンドウは急速に拡大してきました。初期のGPT-3.5は約4,000トークン(日本語で数ページ分)でしたが、現在の主要モデルは10万〜100万トークン級が標準になり、書籍1冊やコードベース全体を丸ごと読ませる使い方が可能になっています。
API料金の仕組み:入力と出力で単価が違う
LLMのAPI料金は「トークン数×単価」で決まります。押さえるべきポイントは3つあります。
第一に、入力トークンと出力トークンで単価が異なり、出力のほうが数倍高いのが一般的です。生成処理のほうが計算コストが大きいためです。
第二に、モデルのグレードで単価が桁違いに変わります。最上位モデルと軽量モデルでは10〜数十倍の差があり、タスクに応じたモデルの使い分けがコスト設計の基本になります。
第三に、会話型アプリでは履歴が毎回入力として再送信される点です。会話が長くなるほど1往復あたりの入力トークンが雪だるま式に増え、料金も増えます。チャットボット運用でコストが想定を超える典型的な原因です。
実務でのコスト最適化のポイント
- モデルの使い分け:分類や抽出など単純なタスクは軽量モデル、複雑な推論だけ上位モデルに回す
- プロンプトの圧縮:冗長な指示文を削る。毎回送る定型指示はプロンプトキャッシュ機能で割引を受ける
- 履歴の要約:長い会話は過去分を要約して渡し、生の履歴を無制限に積まない
- RAGの検索精度向上:資料を丸ごと渡すのではなく、RAGで関連部分だけを渡す
- 出力形式の指定:「箇条書きで簡潔に」など出力の長さを制御する。出力トークンは単価が高い
- 実測の習慣:公式トークナイザーで主要プロンプトのトークン数を測り、月間コストを試算してから本番投入する
よくある質問(FAQ)
Q1. 1トークンは何文字ですか?
固定の対応はありません。目安として英語は1トークン≒4文字程度、日本語は1文字≒1〜3トークン程度です。正確な数はモデルごとのトークナイザーで実測する必要があります。
Q2. トークン数はどうやって確認できますか?
OpenAIの「Tokenizer」ページや、各社が提供するトークンカウントAPI・ライブラリ(tiktokenなど)で確認できます。料金試算の前に主要な入力パターンを実測するのがおすすめです。
Q3. ChatGPTの無料版でもトークンは関係ありますか?
はい。料金は発生しませんが、一度に読める量(コンテキストウィンドウ)や1回の回答の長さはトークン数で制限されています。長い文書の途中までしか反映されない場合、この上限に達している可能性があります。
Q4. 画像や音声にもトークンはありますか?
あります。マルチモーダルAIでは、画像は小さな領域ごとに、音声は短い時間ごとに分割されてトークン化されます。画像1枚が数百〜数千トークンに相当するため、画像入力はテキストより料金が高くなりがちです。
まとめ:トークンを制する者はLLMコストを制する
トークンはLLMの読み書きの最小単位であり、料金・入力上限・日本語の割高さといった実務上の論点すべてに直結する概念です。「入力と出力で単価が違う」「会話履歴は毎回再送信される」「日本語は英語よりトークンを食う」の3点を押さえるだけで、LLM活用のコスト設計は大きく改善します。
仕組みの土台であるLLMの解説とTransformerの記事、コスト最適化の本命であるRAGの解説、AI全体の基礎はAIとは?総合ガイドをご覧ください。



