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

コンテキストウィンドウは、LLMが一度に参照できる文章量の上限です。トークン数で表されます。プロンプト、会話の履歴、添付した資料、そしてAIの出力まで、すべてがこの枠の中に収まる必要があります。

LLMは、会話のたびに枠の中の文章をまとめて読み直して応答を作ります。枠に入らない情報は、モデルにとって存在しないのと同じです。長い会話では、古いやり取りが切り捨てられたり、要約に置き換えられたりします。

近年は数十万〜100万トークン級の大きな枠を持つモデルも増え、長い契約書や報告書を丸ごと渡せるようになりました。ただし、枠が大きくても、中ほどに置いた情報が見落とされやすいという報告があります。また、渡す量が増えるほど費用と応答時間も増えます。

実務では「入るかどうか」より「何を入れるか」が大切です。必要な情報を選び、重要な指示は冒頭か末尾に置く。この工夫で精度が上がります。会話が長くなったら、要点をまとめて新しい会話に移すのも有効です。

具体例

長い会話で前提が抜けるとき

長いやり取りを続けていると、最初に伝えた条件(文字数や表記のルールなど)が守られなくなることがあります。古い発言が枠から外れたり、埋もれたりしているためです。対処としては、決まった条件を新しい会話の冒頭にまとめて書き直します。または、システムプロンプトに入れて毎回読まれるようにします。話題が変わったら新しい会話を始めるのも有効です。

大量の資料を扱うとき

数百ページの資料は、枠に入っても全体を均等に読めるとは限りません。章ごとに要約してから質問する、関係する部分だけを検索して渡す(RAG)、といった分け方が確実です。章立てが分かる目次を先に渡すと、AIが資料の全体像をつかみやすくなります。どの章を見て答えたかを示させれば、確認も楽になります。