コンテキストウィンドウ

Context Window

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

コンテキストウィンドウ(Context Window)とは、大規模言語モデル(LLM)が一度の推論で処理できるトークンの最大数を指します。入力プロンプトと出力テキストの合計トークン数がこの範囲内に収まる必要があり、モデルの「記憶容量」や「作業領域」に例えられます。

表:コンテキストウィンドウの要点まとめ
ひとことで言うとAIが一度に読み書きできる文章量の上限。AIの「作業机の広さ」。
どこで使う長い資料の要約、長時間のチャット、コード全体の読み込み。
注意点上限を超えると古い内容から忘れる。長すぎると中間の情報が薄れる。

コンテキストウィンドウのサイズと進化

初期のGPT-3では約4,000トークンでしたが、技術の進歩により急速に拡大しています。GPT-4 Turboでは128,000トークン、Claude 3では200,000トークン、Gemini 1.5 Proでは最大100万トークンのコンテキストウィンドウを持つモデルも登場しています。これにより、長い文書の要約や大規模なコードベースの分析、複雑な会話の維持が可能になりました。

図:コンテキストウィンドウに入るもの
1入力をまとめる指示+会話履歴+資料
▶
2トークン計算合計の長さを数える
▶
3上限と比較収まるか判定
▶
4はみ出しを削除古い会話から外す
▶
5回答を生成回答分も上限に含む

※ 「入力+出力」の合計が上限です。出力の分も見込んで入力量を決めます。

コンテキストウィンドウの活用と制約

コンテキストウィンドウが大きいほど多くの情報を同時に処理できますが、トークン数に応じてAPI利用コストも増加します。また、コンテキストが長くなると処理速度が低下したり、中間部分の情報への注意が薄れる「Lost in the Middle」問題が生じたりすることがあります。RAGやチャンキングなどの技術を組み合わせることで、限られたコンテキストウィンドウを効率的に活用する工夫が重要です。