Quanta RAM você precisa para rodar um LLM?

A memória que um modelo de linguagem precisa se resume a três números: quantos parâmetros ele tem, em quantos bits cada um é guardado e quanto contexto você dá a ele. Aqui está a conta, feita para os tamanhos de modelo mais comuns e para cada Mac, para você responder a pergunta para qualquer modelo.

Atualizado

Em resumo

  • Pesos: parâmetros × bits por peso ÷ 8. No formato de 4 bits do MLX, isso dá cerca de 0,56 GB por bilhão de parâmetros; em 8 bits, cerca de 1,06 GB; em 16 bits, 2 GB.
  • Então um modelo de 8B precisa de cerca de 4,5 GB em 4 bits, um de 32B de cerca de 18 GB e um de 70B de cerca de 39 GB, antes do contexto.
  • O contexto (KV cache) vem por cima e cresce a cada token: no Qwen3 8B, um contexto de 32.000 tokens ocupa cerca de 4,8 GB, mais do que os pesos dele em 4 bits.
  • No Mac, a GPU pode usar cerca de 75% da memória unificada por padrão, então um Mac de 16 GB tem cerca de 12 GB para um modelo. No PC, o modelo precisa caber na VRAM da própria placa de vídeo para rodar na velocidade máxima.

1A regra: parâmetros × bits

Um modelo é, na maior parte, os seus pesos: um número por parâmetro. Guardado em 16 bits, cada um ocupa 2 bytes, então um modelo precisa de 2 GB por bilhão de parâmetros. A quantização guarda cada peso em menos bits, o que encolhe o modelo quase na mesma proporção; em 4 bits, a maioria dos modelos fica perto da qualidade original.

Os formatos quantizados também guardam um pouco a mais para reconstruir os pesos. O MLX da Apple guarda, por padrão, uma escala e um bias para cada grupo de 64 pesos, no próprio tipo de 16 bits do modelo (MLX), o que soma meio bit por peso. Isso dá estes tamanhos:

PrecisãoBits por pesoGB por bilhão de parâmetros
16 bits (original)162,0
8 bits8,5cerca de 1,06
6 bits6,5cerca de 0,81
4 bits4,5cerca de 0,56
3 bits3,5cerca de 0,44
2 bits2,5cerca de 0,31
Quantização afim do MLX com o tamanho de grupo padrão de 64. Arquivos GGUF na mesma precisão saem com mais ou menos o mesmo tamanho.

Abaixo de 4 bits, a qualidade cai mais rápido. Um bom padrão é a maior precisão que cabe com folga.

2Memória para os tamanhos de modelo mais comuns

Tamanho do modelo16 bits8 bits4 bits3 bits
1B2 GB1,1 GB0,6 GB0,4 GB
3B6 GB3,2 GB1,7 GB1,3 GB
8B16 GB8,5 GB4,5 GB3,5 GB
14B28 GB14,9 GB7,9 GB6,1 GB
32B64 GB34 GB18 GB14 GB
70B140 GB74,4 GB39,4 GB30,6 GB
120B240 GB127,5 GB67,5 GB52,5 GB
235B470 GB249,7 GB132,2 GB102,8 GB
405B810 GB430,3 GB227,8 GB177,2 GB
671B1.342 GB712,9 GB377,4 GB293,6 GB
Só os pesos, pela regra acima. Some o contexto e uma margem para o runtime.

Alguns modelos já vêm numa precisão baixa própria. O gpt-oss-120b da OpenAI tem 117 bilhões de parâmetros e guarda os pesos de mistura de especialistas num formato de 4 bits, o MXFP4, então cabe numa única GPU de 80 GB (OpenAI). Para um modelo específico, abra a página dele: todos os modelos abertos e o Mac de que precisam, por exemplo gpt-oss-120b ou Llama 3.3 70B.

3O contexto também ocupa memória

Enquanto lê e escreve, o modelo guarda uma chave e um valor para cada token da conversa em cada camada: o KV cache. O tamanho dele é 2 × camadas × cabeças KV × tamanho da cabeça × bytes por valor × tokens.

O Qwen3 8B, por exemplo, tem 36 camadas, 8 cabeças KV e tamanho de cabeça 128, guardados em 16 bits (config). Isso dá 147.456 bytes por token:

ContextoKV cache do Qwen3 8B (16 bits)
8.192 tokenscerca de 1,2 GB
32.768 tokenscerca de 4,8 GB
40.960 tokens (o contexto completo)cerca de 6,0 GB
Os pesos dele em 4 bits ocupam cerca de 4,6 GB (8,2 bilhões de parâmetros), então um contexto longo pode precisar de mais memória do que o modelo.

Modelos com atenção de consulta agrupada (grouped-query attention), como este, guardam menos cabeças KV do que cabeças de atenção (8 contra 32), o que já corta o cache por quatro. Dá para economizar mais quantizando o cache: o servidor do mlx-lm aceita --kv-bits 4 (mlx-lm). Para chat, alguns milhares de tokens de contexto bastam; para agentes, documentos longos ou código, reserve vários gigabytes.

4Que tamanho de modelo cabe no Mac

A memória do Mac é dividida entre a CPU e a GPU, e o macOS deixa a GPU usar só parte dela por padrão. A nossa página Compare conta cerca de 75%; o README do mlx-lm mostra como aumentar o limite no macOS 15 ou posterior com sudo sysctl iogpu.wired_limit_mb=N (mlx-lm), mas o macOS e os seus outros apps ainda precisam de espaço.

Memória do MacPara a GPU (cerca de 75%)Maior modelo em 4 bitsMaior em 8 bits
8 GB6 GBcerca de 10Bcerca de 5B
16 GB12 GBcerca de 21Bcerca de 11B
24 GB18 GBcerca de 32Bcerca de 16B
32 GB24 GBcerca de 42Bcerca de 22B
36 GB27 GBcerca de 48Bcerca de 25B
48 GB36 GBcerca de 64Bcerca de 33B
64 GB48 GBcerca de 85Bcerca de 45B
96 GB72 GBcerca de 128Bcerca de 67B
128 GB96 GBcerca de 170Bcerca de 90B
256 GB192 GBcerca de 341Bcerca de 180B
512 GB384 GBcerca de 682Bcerca de 361B
Só os pesos: deixe alguns gigabytes disso para o contexto. Cada tamanho leva aos modelos que rodam bem nele.

A memória decide o que cabe; a largura de banda da memória decide a velocidade com que ele escreve. O melhor Mac para LLM local explica a segunda metade, e todos os Macs, em ranking junta as duas.

5RAM, VRAM e memória unificada

Num PC com placa de vídeo, um modelo só roda na velocidade máxima se couber na memória da própria placa, a VRAM: 32 GB numa RTX 5090 (NVIDIA). As camadas que não cabem podem rodar a partir da RAM do sistema do PC, mas essa memória é bem mais lenta de ler, então o modelo fica muito mais lento.

O Mac não tem VRAM separada: a GPU lê a mesma memória unificada que a CPU, e é por isso que um Mac com 64 GB ou 128 GB comporta modelos que nenhuma placa de vídeo de consumo sozinha comporta. Alguns PCs agora funcionam do mesmo jeito, como o DGX Spark da NVIDIA e as máquinas com Ryzen AI Max da AMD, com 128 GB divididos entre CPU e GPU: veja M5 Max vs DGX Spark e M5 Max vs RTX 5090.

6Modelos de mistura de especialistas (MoE)

Um modelo de mistura de especialistas guarda todos os parâmetros na memória, mas usa só alguns deles para cada token. A memória segue o total; a velocidade segue a parte ativa. O gpt-oss-20b tem 21 bilhões de parâmetros, com 3,6 bilhões ativos (OpenAI): precisa de memória como um modelo de 21B e escreve mais ou menos tão rápido quanto um de 4B.

Isso faz dos modelos de mistura de especialistas uma boa escolha para o Mac, que tem mais memória do que largura de banda em comparação com as placas de vídeo. O Compare mostra os dois números para cada modelo popular.

7Perguntas

Quanta RAM preciso para rodar um modelo de 70B?
Cerca de 39 GB para os pesos em 4 bits, mais o contexto: na prática, um Mac com 64 GB ou mais, ou várias placas de vídeo. Em 8 bits ele precisa de cerca de 74 GB, ou seja, 128 GB.
16 GB de RAM bastam para rodar um LLM?
Sim, para modelos de até cerca de 14B parâmetros em 4 bits: um Mac de 16 GB dá cerca de 12 GB à GPU por padrão. Modelos de 8B rodam com folga, sobrando espaço para o contexto. Veja os melhores LLMs para um Mac de 16 GB.
Quanta VRAM um modelo de 8B precisa?
Cerca de 4,5 GB em 4 bits, 8,5 GB em 8 bits e 16 GB em 16 bits, mais cerca de 1,2 GB para um contexto de 8.000 tokens, no caso do Qwen3 8B.
O tamanho do contexto usa memória?
Sim. O KV cache cresce a cada token da conversa. No Qwen3 8B, são cerca de 147 KB por token em 16 bits: cerca de 4,8 GB com 32.000 tokens.
Dá para rodar um modelo maior do que a minha RAM?
Não de forma útil. Se os pesos não cabem, o sistema usa swap ou lê de uma memória mais lenta, e a resposta sai a passo de tartaruga. Use uma precisão menor, um modelo menor ou um modelo de mistura de especialistas, ou divida-o entre várias máquinas: veja clusters de IA com Mac.

Fontes

  1. MLXml-explore.github.io
  2. OpenAIhuggingface.co
  3. confighuggingface.co
  4. mlx-lmgithub.com
  5. mlx-lmgithub.com
  6. NVIDIAnvidia.com
  7. OpenAIhuggingface.co

Leia também