Ejecutando Gemma 4 como un Agente Autónomo Local con Claude Code en 16 GB de VRAM

Configuración de Agente Local con Gemma 4 y Claude Code
Un desarrollador documentó su proceso de reemplazar la API de Claude de Anthropic con un modelo Gemma 4 local de 31 mil millones de parámetros para crear un agente de codificación autónomo con acceso completo al shell mediante Claude Code CLI. El objetivo era permitir que el LLM local no solo escribiera código en el chat, sino que interactuara autónomamente con la terminal, creara carpetas, leyera estructuras y actuara como un agente de desarrollo proactivo.
Pila de Hardware y Software
- Sistema Operativo: Windows 11
- CPU y RAM: CPU Intel Core Ultra 9 285K con 64GB de RAM del sistema
- GPUs: NVIDIA RTX 4060 (8GB) + NVIDIA RTX 3050 (8GB) = 16GB total de VRAM
- Modelo Principal: google_gemma-4-31B-it (GGUF V3)
- Pila de Software:
- llama.cpp (llama-server) - compilación más reciente b8672
- Claude Code CLI - v2.1.92
- LiteLLM + puerta de enlace personalizada en Python (agent_router.py) para conectar fragmentos de transmisión de Anthropic con las APIs de OpenAI
Problema 1: Fallos en el Análisis de Llamadas a Herramientas
Inicialmente, Gemma 4 se negaba a ejecutar herramientas a través del enrutamiento personalizado de la API, optando por disculpas en lugar de acciones. Cuando se forzó a generar llamadas a herramientas del sistema de forma nativa, Claude Code CLI arrojó errores de TypeScript: Cannot read properties of undefined (reading 'input_tokens').
La Solución: Gemma 4 utiliza un bloque de razonamiento invisible <thought> antes de finalizar la salida. El script agent_router.py esperaba fragmentos de texto continuo tradicionales, lo que hacía que omitiera el envío del evento inicial obligatorio message_start de Anthropic. El desarrollador modificó el bucle de intercepción en Python para extraer y combinar explícitamente reasoning_content con las salidas estándar, asegurando que el flujo siempre se inicializara con métricas de uso completas. La actualización a la compilación b8672 de llama.cpp fue obligatoria para la funcionalidad adecuada del tokenizador.
Problema 2: Limitaciones de la Ventana de Contexto
Claude Code v2.1.92 opera con un mensaje de sistema masivo que incrusta el árbol de carpetas activo y las instrucciones del sistema, volcando 7,182 tokens en el servidor local durante la inicialización. El n_ctx inicial (ventana de contexto) estaba limitado a 4096 para ahorrar VRAM, causando caídas inmediatas del servidor.
La Solución: La ventana de contexto se duplicó a 16,384 para acomodar el mensaje inicial y el historial de conversación.
Problema 3: Desafíos en la Asignación de VRAM
Con una ventana de contexto de 16K para un modelo de 31B, la asignación de VRAM se volvió problemática. Una ventana de contexto de 16K usando configuraciones predeterminadas requiere aproximadamente 6.4 GB solo para la Caché KV. La sobrecarga de Windows WDDM reserva aproximadamente el 20% de la memoria de la GPU para búferes de pantalla/fondo, dejando solo ~12.8 GB accesibles de los 16GB totales de VRAM antes de errores CUDA_out_of_memory.
El cálculo inicial mostró: Modelo (13 GB) + Caché KV (6.4 GB) = 19.4 GB, excediendo la VRAM disponible.
Configuración Final
Las Matemáticas y la Solución: El desarrollador abandonó el modelo Q3_K_M (~13.7GB) y cambió al formato IQ3_XS (~12.9GB). El comando optimizado de inicio del servidor:
bat.\llm-server\llama-server.exe -m D:\gemma4\google_gemma-4-31B-it-IQ3_XS.gguf -c 16384 -ngl 38 -ctk q8_0 -ctv q8_0 --host 127.0.0.1 --port 8080
Banderas clave:
-ctk q8_0 -ctv q8_0: Cuantización de Caché KV de 8 bits que redujo a la mitad la huella de la Caché KV de 6.4 GB-c 16384: Ventana de contexto de 16K-ngl 38: Número de capas de GPU
Esta configuración ejecuta exitosamente a Gemma 4 como un agente autónomo local en 16GB de VRAM, aunque la fuente señala que funciona "casi" perfectamente con algunos desafíos restantes.
📖 Leer la fuente completa: r/LocalLLaMA
👀 Ver también

Desarrollador Considera Cambiar de DeepSeek a Grok para Agente de IA Financiera
Un desarrollador que está construyendo una aplicación web de IA financiera en FastAPI/Python informa que DeepSeek V3.2 Reasoning tiene un TTFT de 70 segundos y una velocidad de salida de ~25 t/s, lo que hace que la transmisión en streaming se sienta terrible. Están considerando Grok 4.1 Fast Reasoning con un TTFT de ~15 segundos y ~75 t/s.

El usuario de OpenClaw automatiza los pagos de estacionamiento mediante ingeniería inversa del portal gubernamental.
Un usuario de OpenClaw creó un script que paga automáticamente el estacionamiento al realizar ingeniería inversa de un portal gubernamental local, reduciendo los costos de $3 por transacción a cero al ejecutarse localmente en una Mac mini.

Construyendo un administrador de portapapeles para macOS con Claude: Un estudio de caso práctico de flujo de trabajo
Un desarrollador creó Buffer, un gestor de portapapeles de código abierto para macOS, utilizando a Claude como compañero de planificación y programación en pareja, descubriendo que comenzar con planes de implementación antes de codificar redujo los mensajes desperdiciados y la depuración.

Estudio de Caso de OpenClaw: Gestionar una Bandeja de Entrada de Correo Electrónico durante 10 Días sin Intervención Humana
Un consultor freelance le dio a OpenClaw acceso completo a su Gmail durante 10 días mientras viajaba, con instrucciones de responder en su tono exacto, marcar solo los elementos críticos y manejar tareas rutinarias de forma autónoma. El sistema procesó 187 correos electrónicos con solo un error menor.