ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
本稿は トークン(Token)とコンテキストウィンドウ(Context Window) に関する記事です。
| この記事の要点 |
|---|
|
トークンとは?
トークン (Token) は、LLM がテキストを処理する際の最小単位です。LLM は文字列をそのままではなく、トークナイザで分割した整数 ID 列として扱います。
「単語ごとに分割」と思われがちですが、現代の LLM はサブワード(部分文字列)でトークン化します。これにより未知の単語も扱え、辞書サイズを抑えられます。
トークン化の例
| 文字列 | トークン分割例 (GPT 系) | トークン数 |
|---|---|---|
Hello, world! | ["Hello", ",", " world", "!"] | 4 |
tokenization | ["token", "ization"] | 2 |
こんにちは | ["こん", "にち", "は"] 等 | 3〜5 |
機械学習 | ["機", "械", "学", "習"] 等 | 4〜8 |
🎉 | 絵文字 1 個 | 3〜4 |
| 補足: 日本語のトークン消費は英語の 1.5〜2 倍 |
|---|
| 英語は単語+スペース単位で効率良く圧縮されますが、日本語はバイト単位や漢字 1 文字 = 数トークンに分割されることがあり、同じ意味の文章で英語の 1.5〜2 倍のトークンを消費します。GPT-4o 以降は日本語向けに改善されつつありますが、API コストの見積もり時に意識すべき点です。 |
主要トークナイザ
| 方式 | 採用モデル | 特徴 |
|---|---|---|
| BPE (Byte-Pair Encoding) | GPT 系、Llama、Mistral | 頻出ペアを統合して語彙構築 |
| WordPiece | BERT 系 | BPE 派生 |
| SentencePiece | 多言語モデル、T5、mT5 | 言語非依存、空白も含む |
| Tiktoken | OpenAI 公式 BPE 実装 | 高速・GPT 互換 |
コンテキストウィンドウとは?
コンテキストウィンドウ は、LLM が1 回のリクエストで処理できるトークンの最大数です。「入力 + 出力 + システムプロンプト」のすべてが上限内に収まる必要があります。
主要モデルのコンテキストウィンドウ(2026 年時点の目安)
| モデル | 入力上限 | 出力上限 |
|---|---|---|
| GPT-4o | 128K | 16K |
| GPT-5 / o3 | 200K〜 | 32K〜 |
| Claude 3.5 Sonnet | 200K | 8K |
| Claude 4 Opus / Sonnet | 200K〜 | 32K〜 |
| Gemini 2.5 Pro | 1M〜2M | 8K〜 |
| Llama 3.x 系 | 128K (バリアント次第) | 8K〜 |
| Mistral Large 2 | 128K | 8K |
| DeepSeek V3 | 128K | 8K |
数値はバージョンによって変動します。1M = 100 万トークン ≒ 70〜80 万英単語 ≒ 文庫本 5〜10 冊分に相当します。
トークン数の見積もり方
| 言語 | 概算ルール |
|---|---|
| 英語 | 1 トークン ≒ 0.75 単語 ≒ 4 文字 |
| 日本語 | 1 文字 ≒ 1〜2 トークン(モデル依存) |
| コード | 言語による。Python は比較的効率良し |
| JSON | 記号類が多くトークン消費大 |
| 画像 (マルチモーダル) | 1 枚で 200〜10000 トークン相当(解像度依存) |
事前にトークン数を測る方法
|
# OpenAI モデルの場合 |
料金との関係
| 料金体系の基本 | 内容 |
|---|---|
| 入力単価 | 1M トークンあたり数十セント〜数ドル |
| 出力単価 | 入力の3〜5 倍が一般的(生成は重い) |
| キャッシュ割引 | 同じプロンプトを使い回す場合、入力単価が大幅割引(OpenAI / Anthropic / Gemini で対応) |
| バッチ割引 | 非リアルタイムなら 50% 引き等(OpenAI Batch API) |
| 画像入力 | 解像度に応じてトークン換算 |
長コンテキストの「Lost in the Middle」問題
| 注意: 長文を入れれば良いわけではない |
|---|
| LLM は長い入力でも先頭と末尾を優先的に参照し、中央の情報を見落とす傾向があります("Lost in the Middle" 現象)。 対策:
|
運用上のヒント
| Tips |
|---|
|
注意点
| よくある落とし穴 |
|---|
|
関連
- 親カテゴリ: AIの基礎概念
- 関連: LLM / Transformer / Embedding / Prompt Engineering / RAG
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
子ページはありません
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript で base URL を取得する方法|window.location.origin
- 4 YouTube Data API v3 エラー一覧|403・400・404 の原因と対処
- 5 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 6 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 7 Spring Frameworkのアノテーション一覧
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- 【django】ログイン 認証機能 2026-09-08 03:22:09
- MySQL ERROR 1063 Incorrect column specifier for column|原因と直し方 2026-09-08 03:11:09
- 【PHPエラー】Object of class stdClass could not be converted to string 2026-09-07 07:46:04
- Julia Genie ローカル開発サーバ起動完全ガイド 2026-09-07 07:46:04
- Wi-Fi とは|規格と世代(Wi-Fi 4〜7)・周波数帯・CSMA/CA・WPA3 NEW 2026-09-07 07:45:13
- set コマンドでシェルオプションと位置パラメータを操作 | bash 2026-09-07 07:45:13
- JPEG(.jpg/.jpeg)画像形式の完全ガイド — 仕様・マジックナンバー・他形式との比較・EXIF 2026-09-07 07:45:13
- UE5 Get Overlapping Actorsで特定クラスだけ処理|Class Filter・Cast To 2026-09-07 07:45:13
- Linuxで特定拡張子のファイルを再帰削除|find -deleteの安全手順 2026-09-07 07:45:13
- Django CBVでテンプレートに値を渡す|get_context_data・extra_context 2026-09-07 07:45:13
- Linuxで複数ファイルの文字列を一括置換|find・sed・xargsの安全手順 2026-09-07 07:45:13
- Laravelルートグループ|prefix・middleware・nameで一括管理 2026-09-07 07:45:13
- Linux whichコマンドの使い方|絶対パス取得とtype・command -vの違い 2026-09-07 07:45:13
- Linux catコマンドの使い方|行番号表示・複数ファイル連結 2026-09-07 07:45:13
- unable to execute 'gcc': No such file or directory 2026-09-07 07:45:13
コメントを削除してもよろしいでしょうか?