トークンとは|意味・文字数や単語との違い・コンテキストウィンドウとの関係
トークン(Token)とは、AIが文章を処理する際の最小単位のことです。
英語表記:Token(テキストをトークンに分ける処理はトークナイズ/Tokenize)
LLM(大規模言語モデル)は、テキストをそのまま処理するのではなく、まずトークンと呼ばれる断片に分けてから処理します。人が文章を単語や文節で区切って読むのとは違い、トークンの区切りは単語と一致するとは限りません。単語の一部や記号、スペースも1つのトークンになります。
この言葉の基本
トークンという言葉の表記・分野・使われる場面
| 項目 | 内容 |
|---|---|
| 英語表記 | Token |
| 分野 | LLM・自然言語処理 |
| トークンになるもの | 単語、単語の一部、記号、スペースなど |
| 分ける処理 | トークナイズ |
| 分け方 | 言語・モデル・文脈によって異なる |
| よく出てくる場面 | コンテキストウィンドウの上限、チャンクの大きさ |
トークンという言葉が使われる場面
LLMが1回の推論で処理できるテキストの上限は、文字数ではなくトークン数で決められています。この上限をコンテキストウィンドウと呼びます。コンテキストウィンドウに収まらない情報は参照されません。
RAGで、コンテンツをチャンク(断片)に分けて取得するときにも出てきます。チャンクの大きさはトークン数で管理されることが多く、「1チャンク=512トークン」「1チャンク=1,024トークン」のように設定されます。
トークンと文字数・単語数の違い
「1,000トークン」と「1,000単語」は同じ量ではありません。OpenAIの公式の解説では、英語のテキストでは、およそ1トークン≒4文字(0.75単語)が目安だとしています。英語以外の言語では、同じ文字数あたりのトークン数が多くなりやすいとも書かれています。数え方はモデルによっても違います。
文字・単語・トークンの区切り方の違い
| 単位 | どこで区切るか |
|---|---|
| 文字 | 1字ずつ |
| 単語 | 語の切れ目 |
| トークン | モデルごとの分け方による。1単語が複数のトークンに分かれることもあり、句読点・記号・スペースも数える |
何文字で1トークンになるかは、言語とモデルによって変わります。日本語は、ひらがな・カタカナ・漢字の種類によっても数え方が変わります。
GEO対策における位置づけ
AIがページを読むとき、読める量は文字数ではなくトークン数で数えられます。RAGを使う回答では、取得したチャンクがコンテキストウィンドウに収まってはじめて参照されます。
GEO対策でトークンが話題になるのは、「コンテンツがどこまで読まれるか」を考えるときの物差しになるためです。
トークンやコンテキストウィンドウが、AI検索の仕組みの中でどこに関わるかは、AI検索の仕組みとはで解説しています。
よくある誤解
同じ文章なら、どのAIでもトークン数は同じ
分け方はモデルによって違います。同じ文章でも、モデルが変われば数えられるトークン数も変わります。英語と日本語でも、1トークンあたりの文字数の目安は違います。
コンテキストウィンドウに入れば、中身はすべて同じように参照される
均等に参照されるわけではありません。先頭と末尾に比べて、中間にある情報は参照されにくい傾向が研究で示されています。この現象は「Lost in the Middle」と呼ばれます。
トークンに関連する用語
トークンに関連する用語と、その意味
| 用語 | 意味 |
|---|---|
| LLM | テキストをトークンに分けて処理する大規模言語モデル |
| コンテキストウィンドウ | LLMが1回の推論で処理できるトークンの最大数 |
| チャンク | RAGでコンテンツを分けて取得する単位。大きさはトークン数で決めることが多い |
| 推論(Inference) | LLMが入力を受け取り、回答を生成する処理 |
| Retrieval | 回答の前に、関連する情報を検索・取得する処理 |
| Lost in the Middle | 長い入力の中間にある情報が参照されにくくなる現象 |
よくある質問
何文字くらいで1トークンですか?
言語とモデルによって変わります。OpenAIの解説では、英語では、およそ1トークン≒4文字(0.75単語)が目安です。実際のトークン数は、OpenAIのTokenizerのような公式ツールで確かめられます。
トークンとトークナイズは何が違いますか?
トークンは分けたあとの1つ1つの単位で、トークナイズはテキストをトークンに分ける処理のことです。
トークンとコンテキストウィンドウはどう関係していますか?
コンテキストウィンドウは、LLMが1回の推論で処理できるトークンの最大数です。その上限を数える単位がトークンです。