MLX (mlx-lm)
Versión vigente mlx-lm 0.32.2 (mlx 0.32.4)2026-10-16 (mlx-lm) / 2026-10-14 (mlx)Árbol auditado mlx-lm tag v0.31.3 + main 2026-08-25; mlx 0.32.1Licencia MIT
MLX es la vía de Apple para ejecutar modelos en Mac con Apple Silicon (no en los Intel; en Windows, sin documentar). De fábrica, mlx-lm hace 0 llamadas a casa y no trae telemetría propia: la única llega con la descarga de Hugging Face, y HF_HUB_DISABLE_TELEMETRY la apaga. MIT, código público. Versión vigente: mlx-lm 0.32.2 (mlx 0.32.4).
El framework de cálculo de Apple para Apple Silicon, más la capa mlx-lm que lo convierte en runtime de modelos de lenguaje. Son dos paquetes distintos: mlx es el framework de cálculo, como NumPy o PyTorch, y mlx-lm es lo que de verdad ejecuta modelos. Aprovecha la memoria unificada: CPU y GPU comparten el mismo banco sin copias.
Pasos hasta el primer token
Declarado por el fabricante
Sitios a los que llama de fábrica
Medido por Local AI Scope
Licencia
Medido por Local AI Scope
Vídeos: MLX (mlx-lm) 4
Los vídeos oficiales que nos han parecido más útiles. Pulsa y se abre aquí mismo.
Los vídeos están en YouTube y no se carga nada de allí hasta que pulsas (modo sin cookies). La miniatura la servimos nosotros.
Cómo lo hemos comprobado
Todo lo que esta ficha dice sobre la red sale de leer el código publicado y la documentación oficial en la fecha indicada, no de observar el tráfico. Todavía no hemos puesto el programa delante de un analizador de red, así que esto es análisis estático, no observación. Esa captura la tenemos en la lista; el día que la haya, estas celdas suben un nivel de evidencia. Hasta entonces, nada de presumir de haber mirado los paquetes: hemos leído la receta, no hemos probado el plato.
Qué sale de tu equipo
Antes de dejar que un programa local se acerque a tus documentos, le hacemos cuatro preguntas: qué manda por su cuenta, a quién más llama, en qué dirección escucha y si puedes comprobarlo tú mismo. Vamos, una entrevista de trabajo en toda regla.
Telemetría de fábrica
Ninguna propia: hereda la de la librería de descarga. Verificado por nosotros en la fuente primaria
Barrimos el paquete mlx_lm entero, la rama principal, la 0.31.3 publicada y, el 1 de octubre de 2026, la nueva 0.32.0, buscando telemetry, analytics, posthog, sentry, mixpanel y usage stats: cero coincidencias en las tres. Lo mismo en el framework mlx. Pero mlx-lm descarga con huggingface_hub, y esa librería sí recoge datos por defecto. Este es el hallazgo transferible de toda la comparativa: la telemetría no la mete el runtime, la mete la librería de descarga. Un detalle que dice mucho: mlx-lm no se identifica ante Hugging Face, así que su cabecera de agente de usuario empieza literalmente por «unknown/None».
«By default, some data is collected by HF libraries (transformers, datasets, gradio,..) to monitor usage […]. You can set HF_HUB_DISABLE_TELEMETRY=1 as environment variable to globally disable telemetry.»
Cómo se apaga: HF_HUB_DISABLE_TELEMETRY=1, o el estándar entre fabricantes DO_NOT_TRACK=1. Para un uso totalmente sin red, HF_HUB_OFFLINE=1: la propia documentación de Hugging Face avisa de que, aunque el modelo ya esté en caché, se hace una petición HTTP para comprobar si hay versión nueva del fichero.
Fuente · consultado el 2026-08-25
Otras llamadas a casa
| Qué | A dónde | Cuándo | Se puede evitar | Evidencia |
|---|---|---|---|---|
| Descarga de modelos | huggingface.co (o modelscope si se activa MLXLM_USE_MODELSCOPE) |
Al pedir un modelo que no está en caché, y para comprobar si hay versión nueva de los que sí lo están. | HF_HUB_OFFLINE=1 | verificado por nosotros |
| Fichero de calibración para cuantizar | un gist de GitHub |
Una sola vez, y solo si cuantizas con AWQ, GPTQ o la cuantización dinámica. | No usar esos métodos | verificado por nosotros |
| Imágenes que una petición de chat pasa como dirección web | la dirección web que traiga la petición, sea cual sea |
Desde la 0.32.1, cuando una petición de chat a mlx_lm.server trae una imagen como dirección http(s): el servidor la descarga él mismo (30 segundos de espera) antes de contestar, tengas cargado el modelo que tengas. | No hay interruptor: incrusta tus imágenes (base64) y no dejes el servidor arrancado mientras navegas | verificado por nosotros |
Fuente · consultado el 2026-08-25
En qué dirección escucha
| Ajuste | De fábrica |
|---|---|
| Escucha en | 127.0.0.1:8080 |
| Autenticación de fábrica | ninguna |
| CORS de fábrica | Abierto de par en par: cualquier origen, cualquier método, cualquier cabecera |
Escucha en localhost, pero con el CORS abierto de par en par —cualquier origen, cualquier método, cualquier cabecera— y sin autenticación de ningún tipo: sus propios ejemplos ponen api_key=»not-needed». El servidor lo implementa la librería estándar de Python, no un servidor de producción, y su documentación lo advierte. La misma advertencia está en el código que instala pip: mlx_lm.server la imprime cada vez que arranca («mlx_lm.server is not recommended for production as it only implements basic security checks.»). Verificado por nosotros en la fuente primaria
«The MLX LM server is not recommended for production as it only implements basic security checks.»
Fuente · consultado el 2026-08-25
¿Se puede auditar?
Sí. MIT, de Apple Inc., tanto mlx como mlx-lm. Eso es lo que nos permite decir «sin telemetría propia» como ausencia comprobada y no como afirmación — y, sobre todo, lo que nos permite decir que sus tipos de dispositivo son exactamente dos. Verificado por nosotros en la fuente primaria
Fuente · consultado el 2026-08-25
Política de privacidad
No hay política de privacidad, y aquí eso es una buena noticia, no una carencia: no existe ningún servicio detrás del programa ni responsable del tratamiento a quien pedírsela. sin verificar
Qué ejecuta y dónde
Plataformas, aceleradores y formatos de modelo: los tres muros con los que te puedes topar esa primera noche de ilusión. Mejor descubrirlos aquí que a medianoche con el modelo a medio descargar.
Dónde funciona
| Plataforma | Soporte | Evidencia |
|---|---|---|
| Windows | Parcial y sin documentar. El framework mlx publica ruedas oficiales de Windows (x64 y ARM64) desde julio de 2026 y las prueba en su integración continua, pero su documentación no menciona Windows en ninguna parte, y mlx-lm declara su dependencia solo para macOS: fuera de macOS, `pip install mlx-lm` no instala el motor. Que mlx-lm funcione en Windows no está verificado. | verificado por nosotros |
| macOS Apple Silicon | Sí, es su plataforma. macOS 14.0 o superior para instalar; algunas funciones de modelos grandes exigen macOS 15. | verificado por nosotros |
| macOS Intel | No. Todas las ruedas de macOS son arm64; no existe ninguna x86_64. Ojo con ejecutar Python bajo Rosetta: su propia guía avisa de ese caso. | verificado por nosotros |
| Linux | Sí para el framework mlx, que tiene backend CUDA y versión de solo CPU. Que mlx-lm funcione bien ahí no lo hemos verificado: su README solo habla de Apple Silicon. | declarado por el fabricante |
Qué acelera
| Motor | Estado | Evidencia |
|---|---|---|
| Metal | Sí: es el camino nativo en Apple Silicon, con memoria unificada: CPU y GPU comparten el mismo banco sin copiar datos entre ellos. | declarado por el fabricante |
| CUDA | Sí, en el framework mlx sobre Linux, exigiendo arquitectura NVIDIA SM 7.5 o superior. | declarado por el fabricante |
| CPU | Sí. Es uno de los dos únicos tipos de dispositivo que existen en MLX. | verificado por nosotros |
| ROCm | No lo hemos podido verificar. Su documentación de instalación solo ofrece Apple Silicon, CUDA y CPU, pero en ninguna parte declaran que AMD no esté soportado, así que reportamos la ausencia y no un «no». | sin verificar |
| Vulkan | No lo hemos podido verificar. No aparece en la documentación ni en el árbol de backends, y no hay declaración en ningún sentido. | sin verificar |
| Neural Engine | No, y esta sí es una ausencia verificada y no una fuente que falta: el enumerado de tipos de dispositivo del código tiene exactamente dos valores, cpu y gpu, y la documentación pública lo dice igual. Mucha gente supone que MLX usa el Neural Engine. No lo usa. | verificado por nosotros |
«Currently supported device types are the CPU and GPU.»
Formatos de modelo que ejecuta
Formato MLX y safetensors de Hugging Face. No puede ejecutar un GGUF. Solo sabe exportar a GGUF tras fusionar un adaptador, y aun así solo para modelos estilo Mistral, Mixtral y Llama en fp16. verificado por nosotros
Fuente · consultado el 2026-08-25
Instalarlo y convivir con él
El día a día: cuántos pasos hasta el primer token, qué deja en tu disco, bajo qué licencia y a qué ritmo cambia bajo tus pies una vez instalado.
Pasos hasta el primer token
2 pasos. Instalar el paquete y ejecutar mlx_lm.generate o mlx_lm.chat: descarga el modelo por defecto y responde. declarado por el fabricante
Paso a paso: instalar mlx-lm, arrancar un primer modelo y cerrar el CORS abierto del servidor
Si algo falla: 7 errores, el mensaje exacto de cada uno y el arreglo
Qué escribe en tu disco
| Qué | Dónde | Evidencia |
|---|---|---|
| Modelos: la caché de Hugging Face | ~/.cache/huggingface/hub — la caché de Hugging Face (HF_HOME · HF_HUB_CACHE) |
declarado por el fabricante |
| Historial de conversaciones: no se guarda. El contexto vive en memoria y se pierde al salir. No deja rastro de tus conversaciones en disco; de los cinco, solo vLLM, que no tiene interfaz de chat, tampoco lo deja | En ningún sitio: no se escribe nada | verificado por nosotros |
| Fichero de calibración de cuantización: solo se crea si cuantizas con AWQ, GPTQ o la cuantización dinámica | ~/.cache/mlx-lm/ |
verificado por nosotros |
Licencia
MIT, de Apple Inc. Tanto el framework como mlx-lm. verificado por nosotros
Fuente · consultado el 2026-08-25
Versión y ritmo de publicación
Históricamente una versión cada una a tres semanas. Luego la publicación se paró más de cinco meses, del 22 de abril al 1 de octubre de 2026, mientras el desarrollo seguía (134 commits en 50 días distintos); la 0.32.0 cerró el hueco. El framework mlx publica con regularidad: unas dieciséis versiones al año. verificado por nosotros
Fuente · consultado el 2026-10-17
Lo que conviene saber antes de instalarlo
- Tras más de cinco meses sin versión, el paquete que instala la gente vuelve a moverse. Del 22 de abril al 1 de octubre de 2026, `pip install mlx-lm` daba la 0.31.3 mientras el repositorio seguía moviéndose: 134 commits en 50 días distintos. La 0.32.0, publicada el 1 de octubre, mete ese trabajo en el paquete: su carpeta de definiciones de modelo pasa de 119 ficheros a 135 (entre los nuevos,
mistral4,kimi_k3yolmo_hybrid). Si instalaste mlx-lm antes de octubre, merece la pena un `pip install -U mlx-lm`. - MLX no usa el Neural Engine. Los tipos de dispositivo que existen en su código son exactamente dos: CPU y GPU.
- No ejecuta GGUF. Si tu colección de modelos es GGUF, MLX no te sirve sin reconvertirlos.
- El servidor escucha en localhost pero con el CORS abierto de par en par y sin ninguna autenticación, y su propia documentación advierte de que no es para producción. mlx_lm.server repite esa advertencia cada vez que arranca.
- Desde la 0.32.1 el servidor sale a buscar imágenes él solo. Si una petición de chat trae una imagen como dirección web, mlx_lm.server la descarga antes de contestar, tengas cargado el modelo que tengas, aunque no sepa ver. Práctico, pero con resquicio: quien pueda hablar con el servidor elige qué dirección visita tu Mac, y eso incluye cualquier página web que tengas abierta, pongas el CORS como lo pongas, salvo que tu navegador te pregunte antes. No hay interruptor para apagarlo y
--allowed-originsno lo frena (solo decide quién puede leer la respuesta): incrusta tus imágenes (base64) y no dejes mlx_lm.server arrancado mientras navegas. - No guarda las conversaciones en disco; de los cinco, solo vLLM, que ni siquiera tiene interfaz de chat, hace lo mismo.

