トークンとは、自然言語処理や生成AIがテキストを扱う際の基本的な単位です。文章を小さな要素に分割する仕組み、単語・文字・サブワードという3種類の違い、トークン数が処理上限や利用料金に関わる点などをわかりやすく解説します。生成AIを理解するうえで欠かせない基本的な概念です。
トークン(Token)とは、自然言語処理(NLP)やプログラミングの分野で、テキストデータを扱う際の基本的な単位となる要素のことです。特に、大規模言語モデル(LLM)などの生成AIにおいては、テキストを処理する過程で、文章を意味のある小さな単位に分割するために用いられます。この分割された各単位がトークンと呼ばれ、AIが言語を理解し、生成するための基礎となります。
トークンとは、文章を分割した最小単位のことです。たとえば、「私はラーメンが好きです。」という文をトークンに分割すると、「私」「は」「ラーメン」「が」「好き」「です」「。」といった要素にわけられます。この分割方法は、言語や使用するツールによって異なり、単語、文字、サブワード(単語の一部)などがトークンとして扱われます。
テキストをトークンに分ける処理はトークン化と呼ばれ、AIがテキストデータを効率的に処理し、学習するための前処理として非常に重要なステップです。トークン化によって、AIは単語やフレーズの意味を理解し、文法的な構造を解析することが可能になります。
| 種類 | 分割の単位 | 特徴 |
|---|---|---|
| 単語トークン | 単語 | スペースなどで区切る。語彙数が多く未知語に弱い |
| 文字トークン | 文字 | 日本語のように区切りが明確でない言語に適する |
| サブワードトークン | 単語の一部 | 未知語への対応や語彙数の削減に有効 |
単語トークンは、スペースや句読点などの区切り文字で区切られた単語をトークンとする方法です。文字トークンは、文字単位でテキストを分割する方法で、日本語のように単語の区切りが明確でない言語に適しています。サブワードトークンは、単語をさらに細かい単位に分割する方法で、未知語への対応や語彙数の削減に有効です。これらのトークン化手法は、AIモデルの性能や処理効率に大きく影響を与えるため、適切な手法を選択することが重要です。
生成AIにおいて、トークンは言語モデルがテキストを生成・理解するための基本的な構成要素として機能します。大規模言語モデル(LLM)は、大量のテキストデータを学習し、トークンの出現パターンや文脈を把握することで、自然な文章を生成する能力を獲得します。たとえば、入力されたテキストをトークンに分割し、その文脈に基づいて次につづくトークンを予測することで文章を生成します。
また、トークンは生成AIの性能を評価する指標としても用いられます。たとえば、perplexity(パープレキシティ)という指標は、モデルがテキストを予測する際の不確実性を示すもので、トークン単位での予測精度を測るために使用されます。各トークンを数値の並びに変換して扱う仕組みはエンベディングと関係します。
処理できるトークンの上限は、モデルが一度に扱える文脈の大きさを決める要因でもあります。あわせてコンテキストウィンドウの項目も参照すると理解が深まります。
実際は:言語やツールによって分割の単位は異なり、文字単位やサブワード単位になることもあります。
実際は:文字数とトークン数は必ずしも一致しません。同じ文章でも分割方法によってトークン数は変わります。
実際は:言語を問わず、テキストを扱う処理全般で用いられる基本的な単位です。
A. 処理の上限に収まりやすくなり、サービスによっては利用料金の抑制にもつながります。ただし、表現が失われる場合もあります。
A. トークンは分割された要素そのもの、トークン化はテキストをトークンに分ける処理を指します。
用語の一覧はAI用語辞典トップからたどれます。実際のツール比較はAIツール一覧をご覧ください。
本記事にはアフィリエイトリンクを含む場合があります。経由での申し込み時に当サイトが報酬を受け取ることがありますが、掲載内容・評価は報酬の有無に左右されません。記載情報は公開時点のものであり、最新情報は各公式サイトをご確認ください。
編集部の評価方法論を見る →