ジャストインタイムのコンテキスト取得(just-in-time context retrieval)とは、関連しうるすべてのデータを事前に前処理しておくのではなく、エージェントが軽量な識別子 — ファイルパス、保存されたクエリ、Web リンクなど — だけを保持し、それらの参照を使ってツール経由で実行時に動的にデータをコンテキストへ読み込むアプローチである。Anthropic はこれを、アプリケーションがよりエージェント的になるにつれてエンジニアが向かっている方向として説明しており、各チームは AI ネイティブなアプリケーションで一般的な、埋め込みベースで推論前に行う検索システムを、こうした実行時の戦略で補強しているという。
用法
Anthropic はこのアプローチを人間の認知になぞらえている。人は一般に情報の総体を丸ごと記憶するのではなく、ファイルシステム、受信トレイ、ブックマークといった外部の整理・索引の仕組みを導入し、必要に応じて関連するものを取り出す。ストレージ効率に加えて、参照そのもののメタデータもシグナルを持つ。ファイルシステム上で動作するエージェントにとって、tests フォルダ内の test_utils.py という名前のファイルは、src/core_logic/ 配下にある同名のファイルとは異なる目的を示唆する。フォルダの階層、命名規則、タイムスタンプはいずれも、情報をどのように、いつ使うべきかを示している。
エージェントが自律的にデータを探索・取得できるようにすることで、段階的開示も可能になる。これは探索を通じて関連するコンテキストを段階的に発見していくことであり、ファイルサイズは複雑さを示唆し、命名規則は目的を示し、タイムスタンプは関連性の代理指標として機能する。各インタラクションが次の判断に役立つコンテキストをもたらすので、エージェントは理解を一層ずつ積み上げていき、作業記憶には必要なものだけを保持し、それ以上に持続させる必要があるものについてはノートテイキングの戦略を用いる。
適用される場面
- データが大きいか変化しており、そこに到達するためのツールをエージェントに与えられる場合に適用される。Anthropic 自身のエージェント型コーディングツールである Claude Code は、このアプローチを用いて大規模なデータベースに対する複雑なデータ分析を行う。モデルは的を絞ったクエリを書き、結果を保存し、
headやtailなどの Bash コマンドを活用して、完全なデータオブジェクトを一度もコンテキストに読み込むことなく大量のデータを分析する。 - エージェントが自らの情報環境を探索するために使うツールとヒューリスティクスが、明確な方針のもとで入念に設計されていることを前提とする。Anthropic は、適切なガイダンスがなければ、エージェントはツールの誤用、行き止まりの追跡、重要な情報の見落としによってコンテキストを浪費しうると明言している。
- その代償は速度である。実行時の探索は、事前に計算されたデータを取得するよりも遅い。Anthropic は、最も効果的なエージェントはハイブリッド戦略 — 速度のために一部のデータを事前に取得し、それ以上の自律的な探索は自らの裁量で進める — を採用するかもしれないこと、そしてこのハイブリッドは、法務や金融の業務のように内容の変化が少ない文脈により適しているかもしれないことを示唆している。例として Claude Code が挙げられており、CLAUDE.md ファイルは最初からコンテキストに投入される一方、glob や grep のようなプリミティブがファイルをジャストインタイムで取得することで、インデックスの陳腐化や複雑な構文木の問題を回避している。
- これは、実測による比較ではなく、Anthropic 自身のプロダクト経験と顧客との協働から導かれた、この分野がどこに収束しつつあるかについての Anthropic の見立てとして提示されている。Anthropic は、モデルの能力が向上するにつれて、エージェントの設計は人間によるキュレーションを次第に減らす方向に向かうと予想している。