トークン化
トークン化とは、自然言語のテキストを、LLMが実際に処理する最小単位、つまり「トークン」へと分割するプロセスです。LLMのあらゆる入力、出力、課金額、そしてコンテキストウィンドウの制限は、単語ではなくトークンで測られます。
トークン化とは、自然言語のテキストを、LLMが実際に処理する最小単位、つまり「トークン」へと分割するプロセスです。LLMのあらゆる入力、出力、課金額、そしてコンテキストウィンドウの制限は、単語ではなくトークンで測られます。
なぜ重要なのか
トークンは、LLMの基本通貨です。OpenAI、Anthropic、Googleはいずれもトークン単位でAPI利用を課金し、コンテキストウィンドウもトークン数で定義されます。同じコンテンツでも、言語やテキスト構造によって2~3倍多くのトークンがかかることがあるため、トークン化を理解することは、GEO、コンテンツ戦略、AIアプリ開発にとって、コストとパフォーマンスに直結する意味を持ちます。
トークン化の仕組み
最近のほとんどのLLMは、**Byte Pair Encoding(BPE)**や、SentencePiece、tiktokenのようなその派生を使います。
- トークナイザーは、学習データに見られる頻出する文字の組み合わせを結合することで、語彙を構築します。
- 入力テキストは、最長一致を用いてこの語彙に対して分割されます。
- よく使われる英単語は1つのトークンになりますが、まれな単語や非英語のテキストは複数のトークンに分割されます。
英語の例: "tokenization" → ["token", "ization"](2トークン)
韓国語の例: "토큰화" → ["토", "큰", "화"]、あるいはより細かいUTF-8バイト単位の分割で、通常6~9トークン
非英語トークン化のクセ
英語は1単語あたり平均約1.3トークンですが、韓国語、日本語、タイ語のような言語は1文字あたり1.5~2トークンを使うことがあります。理由は2つあります。
学習データの構成: 主要なLLMの学習コーパスに占める韓国語は1~3%であり、専用の韓国語トークンが語彙にほとんど入らないことを意味します。
Unicodeフォールバック: 語彙にない文字はUTF-8のバイトレベルの分割にフォールバックするため、1文字が2~3トークンになることがあります。
その結果、韓国語のブログ記事は、同等の英語版よりおよそ50%多くのトークンを消費し、同じコンテキストウィンドウに収まるコンテンツが少なくなります。
GEOへの示唆
情報密度: 非英語のコンテンツはトークンあたりのコストが高いため、引き締まった文章、明確な見出し、簡潔な言い回しが引用の効率を高めます。
冗長性をなくす: 同じ意味を繰り返すことは、LLMの処理中に貴重なトークン予算を浪費します。
重要な情報を前に出す: トークン予算が限られているとき、LLMはより前にあるコンテンツを優先します。逆ピラミッド型の書き方が勝ちます。
二言語表記のエンティティ名: 現地語の固有名詞に英語の用語を併記すること(「토큰화(Tokenization)」)は、英語のクエリに対するマッチングを向上させます。
Sources: