ToolActToolAct

Token カウンター

AIモデルでのToken数を推定、主要LLMの料金計算に対応

テキストを入力

統計

Token数0
文字数0
中国語文字数0
単語数(推定)0
文字/Token比0

推定コスト

入力Token0
出力Token1,000
合計コスト$0.0100

1M入力トークンあたり$2.50
1M出力トークンあたり$10.00

Tokenとは?

トークンカウンターは、AI モデルがテキストをどのような処理単位に分割するかを見積もるツールです。トークンは必ずしも単語や文字と同じではなく、単語全体、単語の一部、句読点、空白の扱い、言語によっては 1 文字になることもあります。トークン数は、コンテキスト上限、料金見積もり、プロンプト設計、RAG の分割、チャット履歴管理、入力がモデルに収まるかの判断に関わります。モデルごとに tokenizer が異なるため、数値は絶対ではなくモデル依存です。送信前に文章を短縮、分割、構造化するための目安として使うのが適切です。

使い方

基本的な使い方

  1. 入力欄にテキストを入力または貼り付けてください
  2. ターゲットAIモデルを選択(GPT-4、Claude、Geminiなど)
  3. 右側のパネルでトークン数の推定値を確認する
  4. 推定出力長を設定してAPIコストを試算

トークン化のルール

  • GPTシリーズ:約4英字 = 1トークン、約1.5中国語の文字 = 1トークン
  • Claudeシリーズ:GPTと類似しており、若干の違いがあります
  • DeepSeekシリーズ:中国語に最適化されており、約2文字 = 1トークン
  • 特殊文字、句読点、改行もトークンを消費します
  • コードやJSONなどの構造化テキストはトークン密度が高くなる傾向があります

利用シーン

モデルファミリー横断でプロンプトサイズを見積もるテキストを貼り付けてOpenAI、Claude、Gemini、Llama、Mistral、DeepSeekのモデルプリセットから選択します。推定ツールは選択したファミリーに応じて、中国語文字、英単語、句読点、空白に異なる推定係数を使用します。プリセットを切り替えることで、あるベンダー向けに設計したプロンプトが別のベンダーでいくら請求されるかを素早く把握でき、プロバイダーとの契約交渉に役立ちます。
入力・出力コストの大まかな予測推定入力トークン数とユーザーが入力した予想出力トークン数、モデル別のトークン単価を組み合わせて、入力トークン数、出力トークン数、推定総コストを表示します。迅速な予算確認が可能です。長時間実行のバッチジョブでは、1回のリクエストの見積もりに予定リクエスト数を掛けて、モデル導入前の月間支出を予測できます。
多言語テキストの構成を把握トークン推定値に加えて、総文字数、中国語文字数、単語数、文字/トークン比を表示します。プロンプトの短縮、中国語と英語のドラフト比較、モデルのコンテキスト上限に合わせたコンテンツ準備に役立ちます。文字/トークン比が高いほど、トークナイザーが1トークンに多くのテキストを詰め込んでおり、通常は1ページあたりのコストが低くなります。
トークナイザーの推定値を並べて比較同じテキストでGPT、Claude、Geminiのモデルプリセットを切り替えると、中国語と英語のコスト差がどのように変化するかを確認できます。プロンプトをプロバイダー間で移植する場合やRAGパイプラインのチャンクサイズを見積もる場合に便利です。BPEとSentencePieceトークナイザーの違いが明らかになります。BPEは希少な単語をより多くのサブワードトークンに分割する傾向があり、SentencePiece(LlamaやMistralが使用)は空白の分割方法が異なり、中国語文字をより大きな単位として扱います。
埋め込みや検索前のチャンクサイズ調整各段落を選択したモデルのコンテキストスライス(例:512や1024トークン)に近づけ、境界文をスプリッターに入力して、トークン数をタグ付けしたチャンクをダウンストリームの検索インデックスに渡します。GPT-4oが使用するcl100k_base語彙、新しいOpenAIモデルのo200k_base、Claudeのおよそ100kシンボルのSentencePiece語彙は、同じドキュメント上で異なるチャンク境界を生成します。

仕組み

最新のLLMトークナイザーは空白による分割ではなく、サブワードアルゴリズム — 主にByte Pair Encoding(BPE)とSentencePiece — を使用します。BPEは個々のバイトから開始し、最も頻度の高い隣接ペアを繰り返しマージして、通常32k〜200kの固定語彙を生成します。一般的な単語は単一トークンになり、稀な単語は複数のサブワードに分解され、任意のバイト(絵文字、制御文字)はアルファベットが256バイトすべてをカバーするため安全に符号化されます。SentencePiece(Llama、Mistral、Geminiの派生で使用)は空白を`▁`マーカーを通じて通常の文字として扱うため、先頭のスペースは次のトークンの一部になります。これが` hello`と`hello`が通常異なるトークンIDになる理由です。 OpenAIは`tiktoken`ライブラリを通じて3つの主要なBPE語彙を公開しています:`p50k_base`(50,281トークン、GPT-3/Codex)、`cl100k_base`(100,277トークン、GPT-3.5 TurboとGPT-4)、そして`o200k_base`(約200kトークン、GPT-4oとo1)です。o200k_baseは非英語圏のカバレッジを拡充し、中国語・日本語のトークン数を約1.4〜1.7倍に削減します。Claudeは類似したスケールの独自トークナイザーを使用しています。大まかな目安として、英語テキストは平均約4文字/トークン、中国語はcl100k_baseで約1.5〜2文字/トークン、o200k_baseで約2文字/トークン、絵文字は複数のUTF-8バイトに符号化されるため1つで2〜5トークンを消費します。 トークン数はコンテキストウィンドウの使用量とコストの両方を左右します。現在のウィンドウはGPT-4oが128k、Claude 3.5 Sonnetが200k、Gemini 1.5 Proが2Mです。コストは`トークン数 × 100万トークンあたりの単価`で課金され、入力と出力は別々に価格設定されます(例:GPT-4oは$2.50/$10.00/100万トークン、Claude 3.5 Sonnetは$3.00/$15.00/100万トークン)。本カウンターはすべてのトークナイザーの語彙ファイルをバンドルするとペイロードが数MBになるため、ファミリー別のヒューリスティック係数を使用しており、結果は作業用の推定値です。正確な数値はモデルのAPIレスポンスの`usage`フィールドが権威ある情報源です。

  • BPEは頻度の高いバイトペアを固定語彙にマージ。OpenAI語彙は`cl100k_base`(GPT-4/3.5)、`o200k_base`(GPT-4o/o1)、`p50k_base`(Codex)。
  • SentencePieceは先頭の空白を`▁`として符号化するため、` world`と`world`はLlama/Mistral/Geminiで異なるトークンIDにマッピングされる。
  • 英語の目安 ≈ 4文字/トークン。CJK ≈ cl100k_baseで1.5〜2文字/トークン、o200k_baseで約2文字/トークン。絵文字は通常1つで2〜5トークン。
  • コスト計算式:`(入力トークン数 / 1,000,000) × 入力単価 + (出力トークン数 / 1,000,000) × 出力単価`。入力と出力は別々に価格設定される。
  • 2025年のコンテキストウィンドウ:GPT-4o 128k、GPT-4 Turbo 128k、Claude 3.5 Sonnet 200k、Gemini 1.5 Pro 2M、DeepSeek V3 128k。
  • 同じテキストでもベンダーごとにトークン数が異なる。トークナイザーの語彙、バイトフォールバックルール、空白処理がすべて異なるため。
  • 正確なカウントはAPIレスポンスの`usage.prompt_tokens` / `usage.completion_tokens`(OpenAI)または`usage.input_tokens` / `usage.output_tokens`(Anthropic)が情報源。

使用例

GPT-4 における短い英語フレーズ

入力:    Hello, world!
モデル:    GPT-4 (cl100k_base)
トークン:   4   ->  ["Hello", ",", " world", "!"]
文字数:    13
比率:    3.25 chars/token

中国語は1文字あたりのトークン数が多い

入力:    你好,世界!  (中国語の「Hello, world!」)
GPT-4:        約8トークン (1.5 chars/token)
DeepSeek V3:  約4トークン (2 chars/token、CJK 最適化)
Claude 3.5:   約7トークン

1,000語の記事のコスト見積もり

入力:        1,000 英単語(約1,330トークン)
想定出力: 500トークン
モデル:        GPT-4o ($2.50 input / $10.00 output per 1M tokens)

入力コスト:   1,330 / 1,000,000 * $2.50 = $0.00333
出力コスト:  500   / 1,000,000 * $10.00 = $0.00500
合計:        リクエストあたり約$0.0083

目安: 約75語 ≈ 約100トークン(英語)

段落(75語):
"The quick brown fox jumps over the lazy dog. Pack my box with five
dozen liquor jugs. How vexingly quick daft zebras jump! The five
boxing wizards jump quickly. Sphinx of black quartz, judge my vow."

GPT-4 トークン: 約100
Claude トークン: 約95

ベクトル DB に埋め込む前のチャンクサイズ

目標チャンク: 512トークン (text-embedding-3-small の上限: 8191)
英語テキスト:  チャンクあたり約384語
中国語テキスト:  チャンクあたり約768文字(GPT トークナイザー)

オーバーラップ:       チャンク間で50トークン(コンテキスト保持)

よくある質問

カウンターはどのトークナイザーを使用していますか?

通常はOpenAIのtiktoken(GPT-4、GPT-3.5用のcl100k_base、GPT-4o用のo200k_base)を使用し、場合によってはAnthropicのClaudeトークナイザーやオープンモデル用のHugging Faceトークナイザーも使います。モデルによってテキストの分割方法が異なるため、モデル間でカウントは変わります。

なぜカウントが単語数と一致しないのですか?

トークンはサブワード単位です。「Hello world」は2トークン、「antidisestablishmentarianism」は5〜6トークンです。英語では平均してトークンあたり約0.75単語(つまり1000トークン ≈ 750単語)です。他の言語はより密で、中国語の漢字は1文字でも1〜2トークンになることがよくあります。

プロンプトはアップロードされますか?

いいえ。トークナイザーはブラウザ内で実行されます。tiktokenにはエンコードをローカルで行うJavaScriptポートがあります。プロンプトがネットワークを越えることはありません。

コスト見積もりはどれくらい正確ですか?

トークン数は正確です。コストの数値は、選択したモデルの1Kトークンあたりの価格(公開価格表から読み取り)によって決まります。プロバイダーの価格変更はページ更新時に反映されます。予算が重要な決定では最新価格と照合してください。

OpenAIのプレイグラウンドとカウントが少し異なるのはなぜですか?

tiktokenのバージョン違いで小さな差が生じることがあります。特殊トークン(チャットメッセージにはrole/systemフレーミングトークンがある)はメッセージごとに数トークンを追加しますが、構造化されていないカウンターはこれを含めない場合があります。正確なAPI課金には、コードが実際に送信する内容をカウントしてください。

コード、JSON、構造化データはどのように扱われますか?

トークナイザーは句読点、括弧、空白を多くの小さなトークンに分割します。JSONは密で、小さなJSONオブジェクトでも50トークン以上を使うことがあります。コードは同等の散文より多くのトークンを使用します。コンテキスト制限が厳しいモデルにJSONやコードを送る際は、これを考慮して計画してください。

リストにないモデルのトークンをカウントできますか?

そのトークナイザーがブラウザ内で利用可能な場合のみ可能です。一般的なもの(GPT、Claude、Llama)はJS実装があります。マイナーまたは独自モデルの場合は、モデルプロバイダーの公式カウンターを使うか、見積もり(英語では4文字 ≈ 1トークン)を使用してください。