VRAM para Gemma 4 local: cómo elegir E2B, E4B, 12B, 26B o 31B

Guía práctica que separa la memoria aproximada de Google, el tamaño GGUF y la VRAM medida para elegir y probar Gemma 4 E2B, E4B, 12B, 26B y 31B.

Gemma 4 no se limita a E2B, E4B, 26B y 31B: la documentación oficial también incluye 12B. Las letras E y A describen escalas de embeddings o parámetros activos; no permiten deducir por sí solas el tamaño de los pesos.

Esta guía separa la memoria aproximada publicada por Google, el tamaño de un GGUF concreto y el pico de VRAM medido con un backend específico. Solo la última cifra responde cuánto consume tu equipo.

Posición de cada modelo

Modelo Uso recomendado Punto de partida local
E2B Dispositivos ligeros y edge El más fácil de probar
E4B Trabajo general ligero Adecuado para GPU de 8–12 GB
12B Cargas medianas Cuantizado para 12–24 GB
26B A4B Experimentos MoE Dimensionar por pesos totales, no solo A4B
31B Modelo denso mayor En 24 GB suele exigir cuantización y contexto limitado

Consulta la tarjeta oficial para arquitectura, modalidades y límite de contexto.

Por qué una tabla de VRAM solo orienta

Las cifras de Google no incluyen todos los costes de ejecución. Un GGUF también depende de:

  • tasa efectiva de Q4_K_M, Q5_K_M, Q6_K o Q8_0;
  • tipo y longitud de KV cache;
  • concurrencia y lote;
  • capas enviadas a GPU;
  • codificador visual o mmproj;
  • versión de llama.cpp u Ollama.

Un GGUF de 9 GB no demuestra que basten 9 GB de VRAM.

Punto de partida por GPU

VRAM Probar primero Observación
6–8 GB E2B/E4B con cuantización baja Reservar KV cache
12 GB E4B o 12B Q4 Depende del archivo y contexto
16 GB 12B Q4/Q5; 26B bajo con offload Vigilar RAM y velocidad
24 GB 12B alto; probar 26B/31B Q4 Un contexto largo aún puede fallar
32 GB+ 26B/31B con más precisión Medir con el backend real

No afirmes que un modelo es desplegable si aún no existe un archivo o backend compatible.

Evitar descargar el modelo equivocado

  1. Abre la tarjeta desde la página oficial de Gemma.
  2. Distingue base de it.
  3. Rastrea el GGUF hasta los pesos originales.
  4. Guarda nombre, cuantización, shards y SHA-256.
  5. Comprueba la licencia para tu uso y redistribución.
1
Get-FileHash .\gemma-model.gguf -Algorithm SHA256

Medición con llama.cpp

Empieza con 4K y una solicitud:

1
2
3
4
5
6
7
.\llama-server.exe `
  -m .\gemma-model.gguf `
  -ngl 999 `
  -c 4096 `
  -np 1 `
  --host 127.0.0.1 `
  --port 8080
1
nvidia-smi -l 1

Registra buffers, KV cache y capas en GPU. Repite a 8K sin cambiar modelo ni cuantización.

Cómo interpretar el resultado

  • OOM al iniciar: reduce contexto y concurrencia; después baja la cuantización.
  • Carga pero va lento: revisa el offload a CPU.
  • Formato incorrecto: valida tokenizer y chat template.
  • Falla la imagen: confirma modelo, proyección y backend.
  • Cambia el consumo: compara backend, KV y offload.

Inventario previo de cuatro recursos

1
2
3
4
5
6
7
8
Get-CimInstance Win32_VideoController |
  Select-Object Name, AdapterRAM, DriverVersion

Get-CimInstance Win32_ComputerSystem |
  Select-Object TotalPhysicalMemory

Get-PSDrive -PSProvider FileSystem |
  Select-Object Name, Free, Used

AdapterRAM puede ser inexacto; confírmalo con nvidia-smi. La RAM debe alojar pesos no descargados a GPU, buffers y sistema. El disco debe contener shards y todas las variantes comparadas.

Cómo encaja cada tamaño en la práctica

E2B: validar compatibilidad

Sirve para comprobar arquitectura, chat template y API local. Si E2B solo usa CPU, corrige el backend o el controlador antes de subir de tamaño.

E4B: inicio práctico para 8–12 GB

Adecuado para chat, resumen, clasificación y código ligero. Empieza con Q4/Q5 y 4K; compara si Q6/Q8 aporta calidad suficiente.

12B: reservar espacio para KV cache

En 12 GB puede acercarse al límite. Reserva 1–2 GB para escritorio y buffers, y empieza con 2K/4K. Si Q5 obliga a usar CPU, Q4 puede dar mejor experiencia.

26B A4B: parámetros activos no son tamaño cargado

A4B no significa memoria de un modelo 4B. Verifica soporte MoE y carga correcta de expertos en el log.

31B: definir un mínimo de velocidad

En 24 GB normalmente requiere cuantización y contexto corto. Define latencia al primer token y tokens/s mínimos; cargar no basta.

Leer el nombre de un GGUF

1
2
gemma-4-12b-it-q4_k_m.gguf
gemma-4-26b-a4b-it-q5_k_m-00001-of-00003.gguf

Comprueba base/it, escala, nombre completo de cuantización, shards, origen y tamaño total. Un archivo anormalmente pequeño puede ser una proyección, LoRA, índice o primer shard.

Confirmar la identidad mediante metadatos

Revisa arquitectura, tokenizer, plantilla, contexto y shards en el log. Detente ante unknown tensor o unsupported architecture; no intentes ocultar una plantilla rota cambiando el system prompt.

Probar el contexto por etapas

Ronda Contexto Concurrencia Observación
1 2048 1 Carga estable
2 4096 1 Velocidad y VRAM diaria
3 8192 1 Crecimiento de KV cache
4 8192 2 Coste de concurrencia
5 Más largo 1 Solo si la tarea lo exige

Reinicia entre rondas y anota el tipo de KV cache.

Ajustar el offload parcial

1
2
3
4
5
6
7
.\llama-server.exe `
  -m .\gemma-model.gguf `
  -ngl 40 `
  -c 4096 `
  -np 1 `
  --host 127.0.0.1 `
  --port 8080

Registra picos de GPU/RAM, procesamiento del prompt, generación, primer token y paginación. Si hay paginación intensa, usa un modelo o cuantización menor.

Varias GPU no suman memoria sin más

Influyen la división de tensores, GPU desiguales y PCIe:

1
nvidia-smi --query-gpu=index,name,memory.total,memory.used,utilization.gpu,power.draw --format=csv -l 1

Si la transferencia entre tarjetas reduce la velocidad, una GPU con offload moderado puede ser más simple.

Validar la API y no solo la interfaz web

1
curl.exe http://127.0.0.1:8080/v1/models
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
$body = @{
  model = 'local-gemma'
  messages = @(
    @{ role = 'user'; content = '把 17×23 的计算过程写成两步。' }
  )
  temperature = 0
} | ConvertTo-Json -Depth 5

Invoke-RestMethod `
  -Uri 'http://127.0.0.1:8080/v1/chat/completions' `
  -Method Post `
  -ContentType 'application/json' `
  -Body $body

Comprueba HTTP, modelo, respuesta y log del servidor.

Preguntas frecuentes de selección

¿E4B o 12B con 12 GB?

E4B para velocidad y contexto; 12B Q4 para comparar calidad con contexto corto.

¿Puede una GPU de 24 GB usar 31B?

Q4 con contexto corto es una prueba razonable, no una garantía. Verifica archivo, log y pico de VRAM.

¿Por qué dos Q4 ocupan distinto?

La precisión mixta, agrupación y metadatos cambian la tasa efectiva. Registra el nombre completo.

¿Por qué crece la VRAM después de cargar?

KV cache, concurrencia e imágenes añaden memoria. Mide reposo y pico tras la solicitud más larga.

Registro reproducible de Gemma

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
GPU / 显存:
驱动:
后端与版本:
Gemma 型号(base/it):
GGUF 文件与 SHA256:
量化:
上下文 / 并发:
GPU offload:
空载与峰值显存:
首 token 延迟 / tokens/s:

Referencias de Google y del backend

Interpretar nombres como Gemma-4-31B-it

Gemma-4 identifica la familia y generación. 31B significa unos 31.000 millones de parámetros totales; no implica 31GB exactos en ejecución ni que cada token active todos los parámetros. it suele significar instruction-tuned: el modelo fue ajustado para instrucciones, preguntas y conversación. Para chat, resúmenes, ayuda de código y agentes conviene -it; un checkpoint base se usa sobre todo para entrenamiento adicional o investigación.

El nombre de descarga también puede incluir Q4_K_M, Q8_0, BF16 o GGUF. Estos sufijos de cuantización, precisión y formato afectan directamente al tamaño, backend y memoria. Si el nombre no coincide con la tabla oficial, revisa la model card, el propietario y los metadatos antes de considerarlo un lanzamiento oficial.

Configuración y prueba en portátil

Un portátil está limitado por memoria compartida, refrigeración y potencia sostenida, además de VRAM. Con 16GB de RAM sin GPU dedicada, empieza por E2B/E4B de pocos bits y 4K de contexto. 8GB de VRAM sirven para validar E4B Q4; prueba 12B Q4 con cautela a partir de 12–16GB. Apple Silicon usa memoria unificada, por lo que debes reservar varios GB para macOS y las aplicaciones.

Cierra pestañas y programas multimedia que usen GPU, conecta la alimentación y vigila la temperatura. No empieces con 32K o 128K: KV cache crece con el contexto y un modelo que carga puede fallar con un prompt largo.

1
2
ollama ps
nvidia-smi

Registra etiqueta exacta, cuantización, contexto, backend, latencia del primer token, velocidad y memoria máxima. Responder solo con CPU demuestra compatibilidad, no rendimiento interactivo. Si hay throttling, swap o velocidad insuficiente, reduce modelo, coste de cuantización o contexto. Conserva el modelo o Modelfile anterior hasta superar la misma prueba.