← PC・IT用語集へ戻る

コンテキストウィンドウ

Context Window
ai development beginner
生成AIが1回の応答で参照できる、入力とこれまでの出力を合わせた情報量の上限。
コンテキストウィンドウ (Context Window)

概要(サマリー)

コンテキストウィンドウとは、生成AIが1回の応答で参照できる情報量の上限である。入力した文章だけでなく、これまでの会話や、これから生成する出力もこの枠に入る。

机の広さに似ている。学習で読んだ本の量ではなく、今この問題を解くために机へ広げられる紙の枚数である。LLMの知識全体とは別物で、Claudeのドキュメントでは「作業記憶」と説明されている。

枠を超えると、古い話が落ちたり、リクエスト自体が拒否されたりする。広い机ほど長い資料を扱えるが、紙を敷き詰めれば重要な1枚が埋もれる。

詳細解説

何が枠に入るのか

コンテキストは「判断に必要な背景」のことである。コンテキストウィンドウは、その背景を1回の依頼でどれだけ載せられるかという上限である。単位は文字数ではなくトークンである。

APIへ送るもののうち、次はだいたいこの枠に数える。

  • システムプロンプト
  • これまでの利用者の発言と、AIの返答
  • ツールの定義と、ツールから返った結果
  • 画像やPDFなど、テキスト以外の入力
  • 今回AIが生成する文章。回答の前に内部で考えるモデルでは、その考えに使ったトークンも入る

会話が1往復進むたびに、直前までの履歴が次の入力へ残る。チャット画面では過去ログが残って見えても、モデルが同時に参照できるのはこの窓の中だけである。

大きさはモデルで違う。Claudeのドキュメントでは、Claude Opus 4.6以降などの多くのモデルが100万トークン、Claude Sonnet 4.5などそれ以外のモデルが20万トークンとされている。同じ会社のモデルでも窓の大きさは揃っていないので、使うモデルの一覧表で確認する。

学習データとの違い

モデルは学習時に膨大な文章を読んでいる。それはコンテキストウィンドウではない。窓は、その場の依頼に添付された作業用のメモである。

だから、学習に入っていない社内規程は、窓へ入れない限りモデルは知らない。逆に、窓へ入れた文章は、学習させていなくても今回の回答の材料になる。長い知識を毎回の依頼へ載せられないときは、RAGで必要な断片だけを探す。

広いほど正確、ではない

窓が大きいと、長い仕様書や複数ファイルを同時に渡せる。ただし、Claudeのドキュメントは、トークンが増えると正確さや拾い忘れ(recall)が落ちることがあると説明し、これを context rot と呼んでいる。

関係ないログ、古いエラー、全部のファイルを貼ると、守ってほしい条件が埋もれる。必要なものを選び、優先順位が分かる形で渡すほうが、ただ広く使うより安定しやすい。

上限に達するとどうなるか

収まり方はAPIによって違う。Claudeでは、入力だけで窓を超えると、リクエストが拒否される。入力は収まっても、指定した出力上限との合計が窓を超える場合は、生成の途中で止まるモデルがある。

チャット製品は、古い発言から順に窓の外へ出すこともある。画面に履歴が残っていても、モデルは先頭の指示を見ていない、というずれが起きる。

出力も枠を使うので、「入力は収まったのに、返答が途中で切れる」ことがある。長い回答を求めるときは、入力側を短くする余地を残す。

枠を守るときの考え方

全部を残す必要はない。次の依頼に要る情報だけを残す。

  • 古い試行錯誤は、結論だけを短くまとめて置き換える
  • ログは、エラー箇所の前後だけを貼る
  • ツールの結果は、次の判断に使う部分だけを戻す
  • 資料全体が窓に収まるなら、細かく切らずに渡すほうが単純なこともある
  • 収まらない資料は、検索して必要な箇所だけを渡す

同じ前文をキャッシュしても、その前文が窓を占有しなくなるわけではない。支払うトークンの計算が変わるだけで、窓の使用量からは消えない。

AIコーディングとの関係

AIコーディングのチャットが長くなると、最初に伝えたファイル構成や禁止事項が窓の外へ出る。モデルが急に別の書き方を始めるときは、能力が落ちたのではなく、見えているメモが入れ替わった可能性を先に疑う。

新しい話題は、新しいチャットに分ける。同じスレッドへ仕様変更、バグ修正、無関係な質問を積み上げない。

プロジェクトのルールファイルは、毎回の依頼の前に窓へ入る。長いルールは、今回直したいコードの分を圧迫する。毎回守ってほしいことだけを短く書き、その場の条件は依頼文へ書く。

「リポジトリ全体を読んで」と頼んでも、窓に入る範囲しか読まれない。対象ファイル、関数名、再現手順を指定したほうが、広い窓に頼るより確実である。

よくある勘違い

コンテキストと同じ意味?

近いが、指すものが違う。コンテキストは背景情報そのものである。コンテキストウィンドウは、その背景を1回で載せられる量の上限である。

学習した知識の量?

学習データの量ではない。今の依頼で参照できる作業記憶の大きさである。学習していないことは、窓へ入れない限り今回の材料にはならない。

チャットに残っている履歴は全部見えている?

画面上の履歴と、モデルが見ている範囲は一致しないことがある。古い発言は要約されたり、窓の外へ出たりする。

大きければ正確になる?

長い入力を扱えるようになるだけで、正確さが自動で上がるわけではない。無関係な文章が増えると、必要な条件を見落とすことがある。

まとめ

  • コンテキストウィンドウは、1回の応答で参照できるトークン数の上限である
  • システム指示、会話、ツールの結果、画像、今回の出力が同じ枠に入る
  • 学習データの量とは別で、その場の作業記憶にあたる
  • 広いほど正確とは限らず、必要な情報を選んで渡す必要がある
  • チャットが長いと、最初の指示が窓の外へ出ることがある

情報ソース

より詳しくAIに聞いてみよう

  • コンテキストウィンドウを、机の広さ以外のたとえでも説明してください。
  • コンテキストとコンテキストウィンドウの違いを、会話の例で整理してください。
  • 長いチャットで最初の指示が無視される理由を、トークンの増え方から説明してください。
  • エラーログをAIに渡すとき、窓を無駄にしない貼り方を教えてください。
  • AIコーディングで、ルールファイルを長くしすぎないための分け方を提案してください。