要点
- 重み:パラメータ数 × 1 重みあたりのビット数 ÷ 8。MLX の 4 ビット形式なら 10 億パラメータあたり約 0.56GB、8 ビットで約 1.06GB、16 ビットで 2GB です。
- つまり 8B モデルは 4 ビットで約 4.5GB、32B モデルは約 18GB、70B モデルは約 39GB 必要です。ここにコンテキスト分が加わります。
- コンテキスト(KV キャッシュ)は上乗せされ、トークンごとに増えます。Qwen3 8B の場合、32,000 トークンのコンテキストで約 4.8GB と、4 ビットの重みより大きくなります。
- Mac では初期設定で GPU がユニファイドメモリの約 75% を使えるので、16GB の Mac ならモデルに使えるのは約 12GB です。PC でフルスピードで動かすには、モデルがグラフィックカード自身の VRAM に収まる必要があります。
1計算式:パラメータ数 × ビット数
モデルの大部分は重みで、パラメータ 1 つにつき 1 つの数値です。16 ビットで保存すると 1 つあたり 2 バイトなので、10 億パラメータあたり 2GB が必要です。量子化は各重みをより少ないビット数で保存し、モデルをほぼ比例して小さくします。4 ビットなら、たいていのモデルは元の品質に近いままです。
量子化形式は、重みを復元するための少しの追加データも保存します。Apple の MLX は初期設定で、64 個の重みのグループごとにスケールとバイアスをモデル本来の 16 ビット型で持つため(MLX)、1 重みあたり 0.5 ビット増えます。サイズは次のとおりです。
| 精度 | 1 重みあたりのビット数 | 10 億パラメータあたりの GB |
|---|---|---|
| 16 ビット(元のまま) | 16 | 2.0 |
| 8 ビット | 8.5 | 約 1.06 |
| 6 ビット | 6.5 | 約 0.81 |
| 4 ビット | 4.5 | 約 0.56 |
| 3 ビット | 3.5 | 約 0.44 |
| 2 ビット | 2.5 | 約 0.31 |
4 ビットを下回ると、品質は急に落ちていきます。余裕をもって収まる範囲で最も高い精度を選ぶのが、よい基本方針です。
2モデルサイズ別の必要メモリ
| モデルサイズ | 16 ビット | 8 ビット | 4 ビット | 3 ビット |
|---|---|---|---|---|
| 1B | 2GB | 1.1GB | 0.6GB | 0.4GB |
| 3B | 6GB | 3.2GB | 1.7GB | 1.3GB |
| 8B | 16GB | 8.5GB | 4.5GB | 3.5GB |
| 14B | 28GB | 14.9GB | 7.9GB | 6.1GB |
| 32B | 64GB | 34GB | 18GB | 14GB |
| 70B | 140GB | 74.4GB | 39.4GB | 30.6GB |
| 120B | 240GB | 127.5GB | 67.5GB | 52.5GB |
| 235B | 470GB | 249.7GB | 132.2GB | 102.8GB |
| 405B | 810GB | 430.3GB | 227.8GB | 177.2GB |
| 671B | 1,342GB | 712.9GB | 377.4GB | 293.6GB |
最初から低い精度で配布されるモデルもあります。OpenAI の gpt-oss-120b は 1,170 億パラメータを持ち、Mixture-of-Experts の重みを 4 ビット形式の MXFP4 で保存しているため、80GB の GPU 1 枚に収まります(OpenAI)。個別のモデルについては、そのページを開いてください:すべてのオープンモデルと必要な Mac、たとえば gpt-oss-120b や Llama 3.3 70B。
3コンテキストもメモリを使う
モデルは読み書きする間、会話のトークンごとにキーとバリューを各層に保持します。これが KV キャッシュです。サイズは 2 × 層数 × KV ヘッド数 × ヘッドサイズ × 値あたりのバイト数 × トークン数です。
たとえば Qwen3 8B は 36 層、KV ヘッド 8、ヘッドサイズ 128 で、16 ビットで保存されます(config)。1 トークンあたり 147,456 バイトです。
| コンテキスト | Qwen3 8B の KV キャッシュ(16 ビット) |
|---|---|
| 8,192 トークン | 約 1.2GB |
| 32,768 トークン | 約 4.8GB |
| 40,960 トークン(最大コンテキスト) | 約 6.0GB |
このモデルのように Grouped-Query Attention を使うモデルは、KV ヘッドをアテンションヘッドより少なく持つため(32 に対して 8)、それだけでキャッシュが 4 分の 1 になります。キャッシュを量子化すればさらに節約でき、mlx-lm のサーバーは --kv-bits 4 を受け付けます(mlx-lm)。チャットなら数千トークンのコンテキストで十分ですが、エージェント、長い文書、コードには数 GB を見込んでおきましょう。
4Mac に収まるモデルの大きさ
Mac のメモリは CPU と GPU で共有され、macOS は初期設定で GPU にその一部しか使わせません。当サイトの Compare ページでは約 75% として計算しています。mlx-lm の README には、macOS 15 以降で sudo sysctl iogpu.wired_limit_mb=N を使ってこの上限を引き上げる方法が載っていますが(mlx-lm)、macOS やほかのアプリにも空きが必要です。
| Mac のメモリ | GPU 用(約 75%) | 4 ビットで最大のモデル | 8 ビットで最大 |
|---|---|---|---|
| 8GB | 6GB | 約 10B | 約 5B |
| 16GB | 12GB | 約 21B | 約 11B |
| 24GB | 18GB | 約 32B | 約 16B |
| 32GB | 24GB | 約 42B | 約 22B |
| 36GB | 27GB | 約 48B | 約 25B |
| 48GB | 36GB | 約 64B | 約 33B |
| 64GB | 48GB | 約 85B | 約 45B |
| 96GB | 72GB | 約 128B | 約 67B |
| 128GB | 96GB | 約 170B | 約 90B |
| 256GB | 192GB | 約 341B | 約 180B |
| 512GB | 384GB | 約 682B | 約 361B |
どのモデルが収まるかはメモリで、どれだけ速く書けるかはメモリ帯域幅で決まります。後半は ローカル LLM に最適な Mac で説明しており、すべての Mac のランキング で両方をまとめて見られます。
5RAM、VRAM、ユニファイドメモリ
グラフィックカードを積んだ PC では、モデルがカード自身のメモリ、つまり VRAM に収まる場合にだけフルスピードで動きます。RTX 5090 なら 32GB です(NVIDIA)。収まらない層は PC のシステム RAM から動かすこともできますが、そのメモリは読み出しがずっと遅いため、モデルは大幅に遅くなります。
Mac には独立した VRAM がありません。GPU は CPU と同じユニファイドメモリを読むので、64GB や 128GB の Mac なら、一般向けのグラフィックカード 1 枚には収まらないモデルも載せられます。同じ仕組みの PC も少し出てきました。CPU と GPU で 128GB を共有する NVIDIA の DGX Spark や AMD の Ryzen AI Max 搭載機などです。M5 Max と DGX Spark、M5 Max と RTX 5090 の比較をご覧ください。
6Mixture-of-Experts モデル
Mixture-of-Experts モデルはすべてのパラメータをメモリに置きますが、トークンごとに使うのはそのごく一部です。必要なメモリは総パラメータ数で、速度はアクティブな部分で決まります。gpt-oss-20b は 210 億パラメータのうちアクティブなのは 36 億で(OpenAI)、メモリは 21B モデル並みに必要ですが、書く速さは 4B モデルとほぼ同じです。
グラフィックカードと比べて帯域幅よりメモリ容量に余裕がある Mac には、Mixture-of-Experts モデルがよく合います。Compare では人気モデルすべてについて両方の数字を表示しています。
7よくある質問
- 70B モデルを動かすにはどれくらいのメモリが必要?
- 4 ビットで重みに約 39GB、これにコンテキスト分が加わります。実際には 64GB 以上の Mac か、複数のグラフィックカードが必要です。8 ビットなら約 74GB 必要なので、128GB です。
- LLM を動かすのに 16GB のメモリで足りる?
- 4 ビットで約 14B パラメータまでのモデルなら足ります。16GB の Mac では、初期設定で GPU が約 12GB を使えます。8B モデルならコンテキストの余裕も残して快適に動きます。16GB の Mac におすすめの LLM をご覧ください。
- 8B モデルに必要な VRAM は?
- 4 ビットで約 4.5GB、8 ビットで 8.5GB、16 ビットで 16GB です。これに、Qwen3 8B の場合は 8,000 トークンのコンテキストで約 1.2GB が加わります。
- コンテキスト長でメモリは増える?
- 増えます。KV キャッシュは会話のトークンごとに大きくなります。Qwen3 8B では 16 ビットで 1 トークンあたり約 147KB、32,000 トークンで約 4.8GB です。
- メモリより大きいモデルを動かせる?
- 実用的には無理です。重みが収まらないと、システムはスワップしたり遅いメモリから読んだりするため、出力は極端に遅くなります。精度を下げる、小さいモデルや Mixture-of-Experts モデルを使う、または複数のマシンに分散させましょう。Mac で AI クラスタ をご覧ください。