Tarjeta de título principal para el artículo 'Cómo ejecutar GLM-5.3-Flash en un MacBook Pro' con el subtítulo 'The 2bit-Lite MLX Playbook', que muestra un MacBook Pro estilizado con un suave motivo de red neuronal sobre su teclado y tres chips etiquetados como '2bit-lite', '~102 GB' y '128 GB Mac'
Guides & Insights

Cómo ejecutar GLM-5.3-Flash en un MacBook Pro: la guía MLX 2bit-Lite

Autor

Gideon Frost

Fecha de publicación

Últimos modelos · 20Ver todos los modelos
Benchmarks: Artificial Analysis · actualizado a diario
Volver a todas las publicaciones

Ejecutar GLM-5.3-Flash en un MacBook Pro significa exactamente una máquina: un MacBook Pro M4/M5 Max de 128 GB que ejecuta la 2bit-lite compilación de nuestra conversión MLX, con el límite de memoria cableada de macOS elevado. Si tu MacBook Pro tiene menos de 128 GB — un M4 Pro de 36 GB, un M4 Max de 48 GB — esta guía no es para ti; salta a la última sección y usa la API alojada z-ai/glm-5.3-flash en su lugar. GLM-5.3-Flash (pesos en zai-org/GLM-5.3-Flash) es el modelo de mezcla de expertos de 320 mil millones de parámetros de Z.ai con 18 mil millones de parámetros activos por token — lanzado el 26 de agosto de 2026, el primer GLM-​5 multimodal nativo — e incluso la compilación más pequeña de nuestro puerto MLX necesita ~102 GB de pesos y ~112 GB de memoria. Eso es todo el mercado, y no vamos a suavizarlo.

Esta es documentación de primera mano, no un artículo de lanzamiento: los pesos que se muestran a continuación son de la compilación propia de OrcaRouter (orcarouter/GLM-5.3-Flash-MLX, MIT), producida con nuestro método de cuantización OrcaSAQ sin calibración. La lanzamos el 26 de agosto y al día siguiente corregimos el rumbo públicamente, porque el rango de cuantización original no hacía práctico el uso en MacBook Pro para la mayoría de la gente: la compilación normal de 2 bits aún necesitaba ~160 GB, que ninguna laptop tiene. El 27 de agosto reconstruimos la variante más pequeña como 2bit-lite específicamente para que quepa en una MacBook Pro de 128 GB, y este artículo es el relato honesto de lo que eso te da y lo que cuesta. Cada número marcado como nota de campo a continuación se midió en nuestra ejecución de verificación con una sola H200; nada de esto es un benchmark de proveedor. Cuando repetimos prácticas de la comunidad — el comando wired-memory, el versionado de mlx-vlm — lo etiquetamos como tal.

Qué build corresponde a cada Mac (lee esto antes de descargar nada)

Las cinco compilaciones en el repositorio corresponden cada una a una cifra mínima de RAM. En una MacBook Pro, "qué compilación" tiene exactamente una respuesta — todo lo que esté por encima de 2bit-lite es una conversación de Mac Studio:

6-bit — ~296 GB de pesos / ~320 GB de RAM / casi sin pérdidas. Mac Studio con 512 GB únicamente.

4-bit — ~204 GB / ~224 GB / nuestro valor predeterminado recomendado. Mac Studio 256 GB. Esto es lo que refleja la raíz del repositorio.

3-bit — ~184 GB / ~200 GB. Mac Studio 256 GB.

2-bit — ~145 GB / ~160 GB. Mac Studio 192 GB. Esta era la versión más pequeña que lanzamos el primer día, y fue el fallo.

2bit-lite — ~102 GB / ~112 GB. La única compilación que cabe en una máquina de 128 GB — una MacBook Pro M4/M5 Max de 128 GB, o un Mac Studio o Mac mini de 128 GB. Cualquier portátil Apple Silicon de 128 GB (M3 Max o más reciente) es la misma historia, solo que más lento.

La trampa oculta en esa escalera: el comando de descarga predeterminado del README obtiene la compilación de 4 bits (~204 GB), que es el valor predeterminado correcto para una máquina de 256 GB e inútil en una laptop. Si sigues el comando predeterminado en una MacBook Pro, terminas con un modelo que no se asignará. La ruta 2bit-lite requiere explícitamente --include, que se cubre a continuación.

También hay un techo duro con el que te toparás antes de que los cálculos anteriores siquiera apliquen. macOS no permite que un proceso capture toda la memoria unificada de una Mac de 128 GB; el techo predeterminado utilizable por la GPU es de aproximadamente 91–96 GB (determinado mediante ingeniería inversa por la comunidad y corroborado en varios artículos sobre configuraciones de MLX para modelos grandes). Eso está por debajo de los ~102 GB solo de pesos, por lo que ni siquiera 2bit-lite se cargará hasta que aumentes el límite de memoria cableada. Ese paso es obligatorio, y es la Sección 4.

Instala mlx-vlm — y solo mlx-vlm

GLM-5.3-Flash es un modelo de visión y lenguaje, por lo que se ejecuta con mlx-vlm, no mlx-lm. Esta es la forma más común de quedarse atascado, así que conviene decirlo desde el principio: mlx-lm es para modelos de solo texto; ejecutar un modelo multimodal a través de él produce un confuso error de carga. Instala el paquete VLM en la versión 0.6.17 o superior:

pip install -U "mlx-vlm>=0.6.17"

El anclaje de versión no es decoración. glm5_next — la arquitectura híbrida de atención dispersa más lineal detrás de GLM-5.3-Flash — solo se incorporó a mlx-vlm el mismo día en que se lanzó el modelo (26 de agosto de 2026), y cualquier versión anterior no reconocerá la configuración. La arquitectura importa por una segunda razón: se trata de una topología completamente nueva, y los puertos de la primera ola tenían errores reales de correctitud que una salida fluida no habría revelado. Una auditoría comunitaria del tiempo de ejecución de la ruta inicial de glm5_next en MLX encontró y corrigió cuatro de ellos: un clamp de SwiGLU no aplicado en cada bloque FFN, tensores de hiperconexión restringidos por la variedad convertidos al dtype incorrecto (lo que corrompía silenciosamente la matriz de mezcla de atención), dos discrepancias de épsilon en las normas de atención y logits de router en bf16 cuando la referencia usa float32. Tras las correcciones, los valores numéricos coincidieron con la referencia hasta aproximadamente 1e-7. La conclusión para ti: mantén mlx-vlm actualizado y trata con sospecha la primera versión de cualquier puerto de arquitectura nueva.

Descarga los pesos: las banderas de exclusión y la inclusión que realmente necesitas.

La raíz del repositorio refleja la compilación de 4 bits, y las cinco variantes se distribuyen como subcarpetas. El comando predeterminado descarga la raíz y usa --exclude para que ninguna de las cinco carpetas de variantes (que juntas son del orden de 800 GB) se descargue:

hf download orcarouter/GLM-5.3-Flash-MLX --local-dir ./GLM-5.3-Flash-MLX --exclude "2bit-lite/*" "2-bit/*" "3-bit/*" "4-bit/*" "6-bit/*"

En una MacBook Pro, ese comando es incorrecto para ti — te da la raíz de 4 bits. Para una laptop de 128 GB, descarga solo la 2bit-lite subcarpeta:

hf download orcarouter/GLM-5.3-Flash-MLX --include "2bit-lite/*" --local-dir ./GLM-5.3-Flash-MLX

Esa es la descarga de ~102 GB, y es autocontenida: la carpeta 2bit-lite/ incluye su propio config.json, así que apuntas el generador directamente a ella. Si hf no está en tu PATH, instálalo: pip install -U huggingface_hub. Antes de empezar, confirma que tienes ~110 GB de disco libre y que a tu Mac no le queden solo los últimos 100 GB libres: MLX mapea los pesos en memoria, y con un SSD casi lleno es como estas configuraciones mueren a mitad de la descarga.

Screenshot of the Hugging Face repository card for orcarouter/GLM-5.3-Flash-MLX showing the title, the tagline 'An MLX build of the official GLM-5.3-Flash — 2bit-lite / 2 / 3 / 4 / 6-bit OrcaSAQ quant for Apple Silicon & MLX', and the model tags glm5_next, Apple Silicon, quantized 2-8bit, Mixture of Experts, vision-language and MIT

Aumenta el límite de memoria fija — el paso que todos olvidan.

Este es el paso decisivo en un MacBook Pro de 128 GB, y la tarjeta README da por hecho que lo conoces en lugar de detallar el comando. El límite predeterminado del conjunto de trabajo de Metal en un Mac de 128 GB es de aproximadamente 91–96 GB, que queda por debajo de los ~102 GB de los pesos de 2bit-lite; por lo tanto, sin este paso el modelo no puede asignar memoria y la carga falla. La solución estándar de la comunidad es un sysctl que eleva el techo de memoria fija de la GPU en megabytes:

sudo sysctl iogpu.wired_limit_mb=114688

Eso establece un límite de ~112 GB, dejando unos 14 GB como reserva para el sistema operativo. En máquinas de 128 GB, los valores que se ven en la comunidad van de ~114688 (112 GB) hasta ~122880 (120 GB); no lo lleves al máximo: macOS necesita margen o tendrás tirones del window-server y cortes del sistema bajo presión de memoria. Después de configurarlo, carga el modelo y observa el Monitor de Actividad: si la presión de memoria se pone en amarillo, reduce el número.

Dos notas prácticas, ambas de la práctica comunitaria, no de nuestras notas de campo. Primero, sysctl se restablece al reiniciar y se aplica a la sesión de terminal en la que lo configuraste, así que planifica volver a ejecutarlo (o automatízalo mediante un LaunchAgent) — olvidarlo después de un reinicio es el clásico fallo de «funcionaba ayer». Segundo, MLX también expone un ajuste en el proceso, mlx.core.metal.set_wired_limit(bytes), en macOS 15.0 y versiones posteriores; debe mantenerse por debajo del límite de sysctl, y es la opción más portable si estás programando un notebook. Cualquiera que uses, el efecto es el mismo: sin ese ajuste, nada de esto funciona.

Ejecútalo: texto, imagen y la API de Python.

Con los pesos en su lugar y el límite elevado, la generación es un solo comando.

python -m mlx_vlm.generate --model ./GLM-5.3-Flash-MLX/2bit-lite --prompt "Explica el entrelazamiento cuántico en una frase." --max-tokens 256

La entrada de imágenes funciona de la misma manera con la opción --image — aquí es donde el modelo multimodal demuestra su valía en una computadora portátil, ya que la torre de visión se mantiene con mayor precisión en el diseño OrcaSAQ:

python -m mlx_vlm.generate --model ./GLM-5.3-Flash-MLX/2bit-lite --image photo.jpg --prompt "Describe esta imagen." --max-tokens 256

Para un script, la API de Python tiene la misma forma que conocen los usuarios de mlx-vlm:

from mlx_vlm import load, generate from mlx_vlm.prompt_utils import apply_chat_template model, processor = load("./GLM-5.3-Flash-MLX/2bit-lite") prompt = apply_chat_template(processor, model.config, "Describe esta imagen.", num_images=1) print(generate(model, processor, prompt, ["photo.jpg"], max_tokens=256, verbose=True))

Mantén --max-tokens moderado. En nuestra ejecución de campo en H200, 2bit-lite se mantiene en aproximadamente 10 tok/s, por lo que una respuesta de 1.024 tokens ya es una espera de dos minutos — y las salidas largas son donde el presupuesto de KV y el colapso de calidad pasan factura (abajo). En un portátil, deberías esperar que se sienta más lento, no más rápido, hasta que exista una cifra medida.

La calidad que realmente estás obteniendo (la escalera medida)

Aquí está la parte honesta del manual, y no vamos a encubrirla. OrcaSAQ se degrada con elegancia hasta 3 bits, y luego el costo aumenta rápidamente. Frente a la referencia FP8 (perplejidad 2.7797):

6 bits — perplejidad 2.7864 (+0.24%), coincidencia de token top-1 del 97.76%. Casi sin pérdidas, como se anunció.

4-bit — perplejidad 2.8620 (+2.96%), top-1 96.13%. El valor predeterminado recomendado.

3-bit — perplejidad 3.0566 (+9.96%), top-1 92.06%. Agresivo pero utilizable.

2-bit — perplexity 4.3622 (+56.9%), top-1 86.56%. Un costo real.

2bit-lite — perplejidad 6.7018 (+141%), top-1 77.19%. La versión más pequeña, y la única que cabe en un MacBook Pro.

Esos son números medidos de nuestro propio proceso de conversión. 2bit-lite presenta una regresión de perplejidad del 141 % y un acuerdo de token top-1 inferior al 78 %: estás ejecutando un modelo notablemente degradado, y los modos de fallo indicados a continuación son la manifestación práctica de esa degradación. Es una demo brillante y un asistente razonable para respuestas breves; no es un sustituto del modelo de precisión completa.

En cuanto a la velocidad, te debemos la misma honestidad. La nota de campo publicada es H200: ~10 tok/s, multiturno estable; preguntas y respuestas cotidianas y texto breve funcionan bien. Todavía no tenemos una cifra medida para MacBook Pro con 2bit-lite, y no vamos a inventarnos una: el rendimiento de Apple Silicon aquí depende del ancho de banda de memoria, la térmica y la cobertura del kernel de MLX para la atención híbrida, nada de lo cual hemos medido para esta compilación en este portátil. El dato publicado más cercano de Apple Silicon que podemos indicarte es un ~450 tok/s independiente para una compilación de GLM-5.3-Flash de 4 bits en un Mac de 512 GB con un runtime de MLX diferente — una compilación diferente, una precisión diferente y una máquina de escritorio, así que tampoco lo interpretes como tu cifra. Prevé lentitud; sorpréndete gratamente si no es el caso.

Caché KV y contexto largo: presta atención al margen de maniobra

GLM-5.3-Flash anuncia una ventana de contexto de 1M de tokens. Ese número es irrelevante en este hardware, y una guía que pretendiera lo contrario te haría un flaco favor. La nota de campo es una línea: dale al runtime suficiente presupuesto de KV para tu longitud objetivo. En una sola H200, 2bit-lite deja unos 39 GB de margen para la caché KV después de cargar los pesos. En una MacBook Pro de 128 GB la aritmética es más dura: ~102 GB de pesos frente a un límite de ~112 GB deja del orden de 26 GB antes del conjunto de trabajo del propio macOS — y las capas híbridas de atención lineal hacen que la huella de KV de este modelo sea pequeña en comparación con un modelo denso de este tamaño, pero aún así crece linealmente con el contexto.

La orientación del lado del servidor proveniente de la comunidad en general corrobora el punto: una configuración que carga bien en un contexto de 8K puede quedarse sin memoria en 128K. En la computadora portátil, mantén los contextos cortos — unos pocos miles de tokens de preguntas y respuestas o una sola imagen — y no intentes alimentarla con un libro. En el momento en que una carga de trabajo realmente necesite un contexto largo, estás en la última sección de este artículo.

La generación de código largo no es confiable en 2bit-lite (lea esto dos veces)

Esta es la sección sin la cual un how-to que oculta sus modos de fallo sería inútil, así que tiene su propio encabezado. Las notas de campo del H200 son inequívocas: las preguntas y respuestas cotidianas y el texto breve salen bien, y la generación de código largo no es fiable con esta precisión. Tres modos de fallo reproducidos en nuestra ejecución de verificación:

Bucles de repetición — el modelo comienza a repetir las mismas líneas o bloques en lugar de avanzar, normalmente después de unos cientos de tokens.

Falta el código de conexión — las importaciones, el cableado y el manejo de errores se omitieron silenciosamente. La función generada se ve correcta de forma aislada, pero no se ejecuta, porque el andamiaje circundante simplemente no está.

Reescritura excesiva — en lugar de una edición mínima, el modelo reescribe grandes porciones de un archivo, y las respuestas sucesivas no coinciden entre sí.

Estos son reproducibles en 2bit-lite, y son precisamente las cosas que predice un acuerdo top-1 del 77%. Lo que hacen realmente los profesionales que conservan la compilación para portátil:

• Úsalo para explicación, resumen, preguntas y respuestas y comprensión de imágenes — trabajo de formato corto donde es realmente bueno.

• Si debes pedir código, pide una pequeña función a la vezcon una firma explícita, y verifica cada una antes de continuar. No le entregues un archivo completo y le pidas una funcionalidad.

• Para cualquier cosa larga — un módulo completo, una refactorización, una sesión de agente larga — enruta a la API de precisión completa. Eso no es un parche; es la arquitectura correcta, y es la última sección.

Cuándo no hacer esto en absoluto: llama a z-ai/glm-5.3-flash en su lugar

Comparison scoreboard titled 'GLM-5.3-Flash on a Mac — the scoreboard' contrasting the 2bit-lite MLX local build (102 GB weights on disk, 112 GB minimum RAM, +141% perplexity vs FP8, 77.19% top-1 agreement, unreliable long code generation, ~10 tok/s per H200 field note) against the hosted z-ai/glm-5.3-flash API (0 GB on disk, no RAM, FP8 reference quality, reliable long code, datacenter speed), with a footer noting quality is measured by OrcaRouter, speed is an H200 field note, and the API is at Z.ai launch pricing

La regla honesta: ejecuta 2bit-lite en una MacBook Pro M4/M5 Max de 128 GB solo cuando quieras específicamente un modelo multimodal de 320B en un portátil que puedas llevar — preguntas y respuestas sin conexión, documentos privados, comprensión de imágenes sin que nada salga de la máquina. Elige la API para todo lo demás:

Cualquier MacBook Pro de menos de 128 GB — no hay ninguna compilación para ti. No intentes cargarla; usa la API.

Generación de código largo o razonamiento de contexto largo — 2bit-lite falla exactamente en esto, de manera fiable. Usa la API.

Trabajo sensible a la calidad — 77.19% de acuerdo top-1 y +141% de perplejidad son una caída real, no un error de redondeo. Usa la API.

Throughput garantizado o latencia predecible — todavía no existe una cifra medida en portátiles, y la nota de campo es 10 tok/s. Usa la API.

Screenshot of the OrcaRouter model page for z-ai/glm-5.3-flash showing the model ID, 'by Z.ai - 2026-08-26', a 1M-token context window, text plus image plus video in / text out, 320B total / 18B active parameters, and the input/output price of $0.07 / $0.25 per million tokens

El modelo alojado es z-ai/glm-5.3-flash, servido con precisión completa en OrcaRouter al precio actual de Z.ai — $0.07 por millón de tokens de entrada y $0.25 por millón de tokens de salida al momento de escribir esto (precio de lanzamiento; la lista publicada de Z.ai es de $0.15 / $0.50). Ese es el precio reportado por el proveedor, y se transmite con un margen del 0%, por lo que una reducción de precios de Z.ai se refleja en nuestro lado el mismo día. Obtienes una clave de API que también llega a los otros 200+ modelos que enrutamos, y la conmutación automática por error significa que un experimento con este nuevo modelo no arriesga tu ruta de producción en un único proveedor. En el mismo tiempo que se tarda en descargar 102 GB y esperar la primera generación en frío, la API ya ha respondido suficientes preguntas para una semana — y las responde con precisión completa.

La inferencia local vale la pena cuando la razón es local — privacidad, trabajo sin conexión, sin límites de peticiones, una demo que funciona con batería. No vale la pena cuando se comparan costes o calidad, por ninguna otra razón, y no vale la pena en absoluto en una máquina con menos de 128 GB.

Preguntas frecuentes

¿Puede una Mac de 64 GB o 96 GB ejecutar GLM-5.3-Flash localmente?No. La versión más pequeña, 2bit-lite, necesita aproximadamente 112 GB como mínimo después de la sobrecarga de macOS, e incluso una máquina de 128 GB debe aumentar el límite de memoria cableada para cargarlo. Si tu Mac tiene menos de 128 GB, la ruta local no existe; enruta z-ai/glm-5.3-flash a través de la API en su lugar.

Instalé mlx-vlm y el modelo no carga; ¿qué está mal? Las dos causas habituales, en orden: una versión inferior a 0.6.17, que es anterior al soporte de glm5_next y no reconocerá la arquitectura; y el límite de memoria asignada no elevado, porque la compilación de ~102 GB no puede asignar bajo el tope de Metal predeterminado de ~91–96 GB en una Mac de 128 GB. Corrige ambas (actualiza el paquete, ejecuta el sysctl) y cargará.

¿La compilación local 2bit-lite es el mismo modelo que la API z-ai/glm-5.3-flash? Mismos pesos subyacentes de GLM-5.3-Flash, pero no la misma calidad. 2bit-lite es una cuantización de 2 bits con una concordancia de tokens top-1 del 77.19% frente a la referencia FP8, y la generación de código largo no es fiable. La API ofrece precisión completa. Son intercambiables solo para trabajos de formato corto y tolerantes a la calidad.

La versión de 30 segundos

Una máquina, una compilación, un sysctl obligatorio. Si tienes un MacBook Pro M4/M5 Max de 128 GB: instala mlx-vlm>=0.6.17, descarga solo 2bit-lite/ (~102 GB), aumenta el límite de memoria cableada con sudo sysctl iogpu.wired_limit_mb=114688, y ejecuta mlx_vlm.generate — para preguntas y respuestas, texto corto e imágenes. Acepta que la generación de código largo no es fiable con esta precisión, que aún no hay rendimiento medido en portátiles, y que un Mac de 128 GB es el mínimo, no el estándar. Si alguna de esas salvedades es un impedimento — o tu Mac tiene menos de 128 GB — el mismo modelo a precisión completa está a una sola llamada de API en z-ai/glm-5.3-flash.

¿No tienes una Mac de 128 GB? z-ai/glm-5.3-flash ofrece el mismo modelo en precisión completa en OrcaRouter: una clave API, precios de proveedor transmitidos sin margen (0% de recargo) y sin descarga de 102 GB.

© 2026 OrcaRouter

Para proveedores

¿Operas una plataforma de inferencia? Publica tus modelos en OrcaRouter.

providers@orcarouter.ai

Únete a la comunidad

Discordsupport@orcarouter.aiXGitHubYouTube