トークンとは?AIの基本単位を理解してコストと性能を最大化する方法

AI・テクノロジー

「このモデルは128kトークンまで対応」「APIの料金は1,000トークンあたり○円」——AIを使っていると必ず出てくる「トークン」という概念。これを正しく理解すると、AIのコストを節約しながら性能を最大限引き出せます。

トークンとは?

トークン(Token)とは、AIが文章を処理する際の最小単位です。人間が文章を「単語」に分けて理解するように、AIは文章を「トークン」という単位に分割して処理します。ただしトークンは単語と完全には一致せず、言語・文字種・単語の長さによって異なります。

英語では概ね「1トークン ≈ 4文字 ≈ 0.75単語」です。「Hello, world!」は3〜4トークンになります。日本語は1文字が1〜2トークンになることが多く、英語より多くのトークンを消費します。そのため日本語のAPIコストは英語より高くなりがちです。

トークンの仕組み(BPEトークナイザー)

文章がトークンに分割される仕組み
入力テキスト
“ChatGPT is amazing!”
↓ トークナイザーが分割
トークンに分割(例)
“Chat” “G” “PT” ” is” ” am” “azing” “!”
→ 合計7トークン(実際の分割は使用するモデルによって異なります)

コンテキストウィンドウとは

「128kトークン対応」「200kトークンのコンテキスト」といった表現は、AIが一度に処理できるトークン数の上限を意味します。これを「コンテキストウィンドウ」と呼びます。会話の履歴・システムプロンプト・ユーザーの入力・AIの出力——これらすべてがコンテキストウィンドウに収まらなければなりません。コンテキストが長いほど長い文書を一度に処理でき、より長い会話の文脈を維持できます。

モデルコンテキストウィンドウ日本語換算の目安
GPT-4o128,000トークン約6〜8万文字分
Claude 3.5 Sonnet200,000トークン約10〜12万文字分
Gemini 1.5 Pro1,000,000トークン約50〜60万文字分(本数冊分)
GPT-4o mini128,000トークン約6〜8万文字分

トークンとAPIコストの関係

OpenAIなどのAI APIは「入力トークン数+出力トークン数」に応じた従量課金制です。つまり長いプロンプトを送るほど、長い回答が返るほどコストがかかります。GPT-4oは1Mトークンあたり約5ドル(入力)・約15ドル(出力)です。GPT-4o miniはその約1/30の低コストで使えます。

トークン数を節約するプロンプトのコツ

余分な説明を省く
「〜についてわかりやすく丁寧に解説してください」より「〜を200字で説明」のように具体的に指定する方がトークンを節約できる。
不要なコンテキストを省く
長い会話履歴はトークンを大量に消費する。新しいトピックを始める際は新しい会話を開始するか、要約してから渡す。
出力長を制限する
「3行で答えて」「箇条書き5点」のように出力量を指定することで、余分な説明を省いてコストを削減できる。
安いモデルを適切に使い分ける
簡単なタスクはGPT-4o miniやClaude Haiku(低コスト)、複雑なタスクだけGPT-4oやClaude Sonnetを使うと全体コストを大幅に削減できる。

よくある質問

自分のプロンプトが何トークンか調べる方法は?

OpenAIが提供する「Tokenizer」ツール(platform.openai.com/tokenizer)を使うと、テキストを入力してトークン数をリアルタイムで確認できます。またPythonのtiktokenライブラリを使えばコードでトークン数を計算できます。AnthropicのClaudeも同様のトークナイザーがAPIで提供されています。

日本語は英語よりコストが高い?

はい、一般的に日本語の方がトークン消費量が多くAPIコストが高くなります。日本語の1文字は1〜3トークン程度になることが多く、同じ意味の文章でも英語より2〜3倍のトークンを消費することがあります。ただし、これはモデルや文章内容によって大きく異なります。

トークンとLLMの仕組みの深い関係

LLMがどのように動くかを理解するうえで、トークンの概念は欠かせません。LLMは文章を左から右へとトークン単位で処理し「次のトークンの確率分布」を計算します。たとえば「東京は日本の」という文章の後に「首都」というトークンが来る確率が高ければ、AIはそれを選択します。この「トークンを1つずつ予測する」処理を繰り返すことで、最終的な文章が生成されます。つまりトークン数が多いほど処理ステップが増え、時間もコストもかかります。

また「トークン数=入力できる情報量の上限」でもあります。GPT-4oの128kトークンのコンテキストウィンドウに入りきらない長さのドキュメントは、分割して処理するか要約してから渡す必要があります。長い技術書や法令文書を扱う場合は200kトークンのClaudeや、100万トークンのGemini 1.5 Proが有利です。

プロンプトのトークン消費量を実測してみる

OpenAIが公開している「Tokenizer」ツール(platform.openai.com/tokenizer)を使うと、任意のテキストが何トークンになるかをリアルタイムで確認できます。試しに「こんにちは、世界!」と入力すると7トークン、”Hello, World!” と英語で入力すると4トークンになります。同じ意味でも日本語の方がトークンを多く消費することがわかります。日本語でAIを使う際はこの差を意識してプロンプトを短く・明確にする工夫が節約につながります。

トークン制限に引っかかったときの対処法

「コンテキストが長すぎる」エラーが出た場合の対処法がいくつかあります。まず新しい会話を開始する方法が最も手軽です。長い会話を続けているとシステムプロンプト・会話履歴・ユーザー入力の合計がコンテキストウィンドウを超えてしまいます。また入力するドキュメントが長い場合は「要約して渡す」「必要な部分だけ抜き出す」「チャンク分割してRAGで処理する」といった方法が有効です。APIを使う場合はmax_tokensパラメーターで出力トークン数を制限することで、予期しないコスト増加を防げます。

入力トークンと出力トークンのコスト差

AIのAPIコストは「入力トークン」と「出力トークン」で別々に課金されます。一般的に出力トークンの方が2〜5倍高く設定されています。たとえばGPT-4oは入力が1Mトークンあたり約5ドル、出力が15ドルです。これはAIが回答を生成する処理(自己回帰的なトークン予測)の方が、入力を処理するより計算コストが高いためです。コスト削減の観点では「長い回答を求めない」「必要な情報だけを出力させる」ことが効果的で、長い出力より短い出力の方が安くなります。o1・o3のような推論モデルは内部思考プロセスが長いため特にコストが高く、使用シーンを選ぶことが重要です。

まとめ

トークンはAIの「処理の基本単位」であり、コンテキストウィンドウとAPIコストに直結します。トークンの概念を理解することで、AIの能力の限界を把握し、コストを意識した賢いAI活用ができるようになります。プロンプトを設計する際は常に「何トークン消費しているか」を意識する習慣をつけましょう。

次の記事を読む
AIの「物忘れ」問題を解決する「ベクトルデータベース」を学ぼう
ベクトルデータベースとは?完全解説を読む

コメント