【とーくん】

トークン(AI) とは?

最終更新:
💡 言語モデルが文章を処理する単位。文字や単語と同じとは限らない

言語モデルがテキストを処理するために使う単位。単語、単語の一部、文字などに分かれ、分割方法と数はtokenizer(分割処理)によって異なる。文字数や単語数と常に一致するものではない。

📌 このページのポイント
同じ単語でも、分割は語彙表で変わるannoyingly分割例A:2トークンannoying仮ID:101ly仮ID:102分割例B:3トークンannoy仮ID:201ing仮ID:202ly仮ID:203IDは説明用の仮値。実際は語彙表による
Hugging Faceの分割例をもとにした模式図。二つの分割は語彙表が異なる場合の例で、特定モデルの結果ではありません。整数IDは説明用の仮値です。
ひよこ ひよこ
AIのトークンは、文字と同じ?
ペンギン先生 ペンギン先生
同じとは限らないよ。単語全体、単語の一部、文字などに分けて処理する単位なんだ。英語でも一つの単語が複数に分かれることがある。日本語でも、常に1文字が1トークンという決まりではないよ
ひよこ ひよこ
どうやって分けて使うの?
ペンギン先生 ペンギン先生
tokenizer(分割処理)が文章を分割し、語彙表に対応するIDの列へ変換するよ。分け方は方式や語彙表で変わる。例えばannoyinglyは、annoyingとly、あるいはannoy・ing・lyに分かれる例がある。これは分割例で、どのモデルでも同じになるという意味ではないんだ
ひよこ ひよこ
多いと、必ず料金も時間も増える?
ペンギン先生 ペンギン先生
トークン従量課金のAPIでは、料金や利用上限を管理する基準になるよ。ただし単価や計算方法はサービスによって違い、キャッシュなどの扱いもある。処理時間もトークン数だけで決まらないので、利用するサービスの条件と実際の使用量を確認しよう
ひよこ ひよこ
日本語は英語の何倍になるの?
ペンギン先生 ペンギン先生
文章とtokenizer(分割処理)によるので、固定の倍率は言えないよ。利用するモデルに対応したツールやAPIで、実際の入力を数えよう。チャットでは本文のほか、システム指示やツールの定義なども含まれ得る。事前の見積りと実際の使用量が少し違うこともあるんだ
ひよこ ひよこ
コンテキストの上限はどう考える?
ペンギン先生 ペンギン先生
一度に扱える範囲を、トークン数で示すものだよ。モデルやサービスの規則に従い、会話履歴、指示、ツール結果、これから生成する回答などを考慮する。文字数や本の冊数への換算は一定ではないし、枠に収まることと回答が正確であることも別だよ
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「トークン(AI)」って出てきたら「言語モデルが文章を分割して処理する単位」と思えばだいたいOK!
📖 おまけ:英語の意味
「Token」 = ここでは、言語モデルが処理するテキストの単位
💬 分割には単語単位、文字単位、単語の一部を使う方式などがあるよ。多くの言語モデルではサブワードという、単語より小さな部分を使う方式が採用されているんだ

参考資料

← 用語集にもどる