AIを使ったコーディングでは、コードベース(またはその一部)をコンテキストウィンドウ内に収める必要があるため、このウィンドウは可能な限り大きく設定することを推奨します。つまり、64,000トークン以上のコンテキストウィンドウを目標とします。これらのトークンはすべてRAMにも保存されます。
コンテキストウィンドウについて理解しておくべき重要な点は、モデルにおけるトークンごとのメモリ要件はモデルのサイズに依存するということです。パラメータ数が多いモデルは、アーキテクチャが大きくなる傾向があります(隠れ層の数が増え、それらの層の次元も大きくなります)。アーキテクチャが大きくなると、モデルは各トークンの情報をキーバリューキャッシュ(コンテキストウィンドウ)に格納する必要があり、これは各トークンの情報を各層に格納する必要があるためです。
つまり、30Bパラメータモデルではなく80Bパラメータモデルを選択すると、モデル自体に必要なメモリ量が増えるだけでなく、同じサイズのコンテキストウィンドウに必要なメモリ量も増えます。例えば、30Bパラメータモデルは64層で5120の隠れ次元を持つのに対し、80Bモデルは80層で8192の隠れ次元を持つ場合があります。ざっと計算してみると、30Bパラメータモデルと同じコンテキストウィンドウを維持するために、より大きなモデルでは約2倍のRAMが必要になることがわかります。