Ir al contenido principal
PromptQuorumDiseñado para humanos. Estructurado para la IA.
Inicio/LLM locales avanzados
Overview & Reference

Reseña de vllm-mlx: serving al estilo vLLM para Apple Silicon

·11 min de lecturaPor Hans Kuepper · Fundador de PromptQuorum · Motor de descubrimiento de IA de pesos abiertos y código abierto

**vllm-mlx es un servidor de inferencia gratuito y de código abierto (Apache 2.0) que ejecuta modelos de lenguaje grandes de forma local en Mac con Apple Silicon, exponiendo endpoints compatibles tanto con OpenAI (/v1/*) como con Anthropic (/v1/messages) desde un único proceso.** Creado por el desarrollador independiente Way Barrios y publicado en PyPI como vllm-mlx, no es el proyecto vLLM oficial — es un port no oficial y nativo de MLX que adapta las técnicas de serving de vLLM (continuous batching, paged KV cache, prefix caching) a la arquitectura de memoria unificada basada en Metal de Apple, funcionando en chips Apple Silicon desde M1 hasta M5.

Conclusiones clave

  • vllm-mlx (github.com/waybarrios/vllm-mlx) es un servidor de inferencia gratuito y de código abierto, instalado con pip install vllm-mlx
  • Construido por el desarrollador independiente Way Barrios; no es el proyecto vLLM oficial (github.com/vllm-project/vllm) y no está afiliado al equipo de vLLM
  • Con licencia Apache 2.0, confirmada a través del archivo LICENSE del repositorio de GitHub
  • Expone endpoints compatibles con OpenAI (/v1/chat/completions, /v1/embeddings, /v1/rerank, /v1/responses) y con Anthropic (/v1/messages) desde un solo proceso servidor
  • Funciones de serving adaptadas de vLLM: continuous batching, paged KV cache, prefix caching y una caché opcional escalonada en SSD para cargas de trabajo de contexto largo
  • Maneja modelos de texto, visión (imagen/video), audio (TTS/STT) y embeddings/reranking, todo mediante MLX nativo en Apple Silicon
  • Requiere una Mac con Apple Silicon (M1 a M5) — no hay soporte para Windows, Linux ni Mac Intel
  • Más de 1.580 estrellas en GitHub al momento de esta reseña

📍 En una frase

vllm-mlx es un servidor de inferencia Python gratuito y de código abierto (Apache 2.0) que lleva el continuous batching y el paged KV caching al estilo de vLLM a los Mac con Apple Silicon mediante MLX nativo, exponiendo endpoints de API compatibles tanto con OpenAI como con Anthropic.

💬 En términos simples

vllm-mlx permite ejecutar modelos de IA en tu propia Mac y hablarles igual que hablarías con la API en la nube de OpenAI o Anthropic — basta con apuntar tu código existente a localhost en lugar de a la nube. Está diseñado para manejar varias solicitudes a la vez de forma eficiente, que es la parte "al estilo vLLM" de su nombre, pero es un proyecto separado y no oficial, no vLLM en sí ejecutándose en una Mac.

📌Nota: Esta reseña se basa en el repositorio de GitHub de vllm-mlx, su README, su sitio de documentación y su ficha en PyPI. No presenta los benchmarks de rendimiento publicados por el propio vllm-mlx como hechos verificados de forma independiente — esas cifras provienen del README del proyecto y deben tratarse como reportadas por el desarrollador, no probadas por PromptQuorum. Esta reseña es el complemento en profundidad de la entrada de vllm-mlx en el Local LLM Software Directory.

vllm-mlx (github.com/waybarrios/vllm-mlx) es un servidor de inferencia gratuito, de código abierto y basado en Python que lleva el continuous batching, el paged KV caching y el prefix caching al estilo de vLLM a los Mac con Apple Silicon a través del framework nativo MLX de Apple. Es un proyecto independiente, construido por la comunidad, del desarrollador Way Barrios — no el proyecto vLLM oficial ni está afiliado al equipo de vLLM, aunque el diseño de su API y algunas técnicas de serving se inspiran explícitamente en vLLM. Esta reseña explica qué hace realmente, cómo instalarlo y para quién es adecuado.

¿Qué es vllm-mlx?

vllm-mlx es un servidor de inferencia de línea de comandos para Mac con Apple Silicon que expone modelos de IA en ejecución local mediante los mismos formatos de API que usan los servicios en la nube de OpenAI y Anthropic. Su propio README de GitHub lo describe como algo que reúne "continuous batching + APIs de OpenAI + Anthropic en un solo servidor" con "inferencia nativa de Apple Silicon". No es una aplicación gráfica de escritorio — es un paquete de Python que se ejecuta desde la terminal, que luego escucha en un puerto local las solicitudes de API.

  • Tipo de producto: un servidor de inferencia CLI basado en Python, instalado como paquete pip/uv, no una app gráfica descargable
  • Creador: el desarrollador independiente Way Barrios (usuario de GitHub waybarrios); esta reseña no encontró evidencia de una empresa, ronda de financiación o entidad comercial detrás del proyecto
  • Repositorio: github.com/waybarrios/vllm-mlx, el más antiguo y con más estrellas de varios repositorios con el mismo nombre en GitHub — otros repositorios homónimos (por ejemplo, bajo distintos nombres de usuario) describen este como el proyecto que replican
  • Licencia: Apache 2.0, confirmada mediante el archivo LICENSE del repositorio
  • Nombre: "vllm-mlx" indica que el proyecto sigue el diseño de la API de serving y la terminología de vLLM (continuous batching, paged KV cache) mientras se ejecuta sobre MLX en lugar del motor propio de vLLM basado en CUDA/ROCm — no contiene el código original de vLLM

Historia del proyecto

vllm-mlx es un proyecto relativamente joven. Su página de paquete en PyPI y su repositorio de GitHub muestran un desarrollo activo y continuo en lugar de un largo historial de versiones de varios años, y su README ya documenta un amplio conjunto de funciones — compatibilidad con las API de OpenAI y Anthropic, continuous batching, soporte multimodal y llamadas a herramientas MCP — como parte de su estado actual en lugar de un lanzamiento por etapas.

  • Distribuido en PyPI como el paquete vllm-mlx, con etiquetas de versión publicadas visibles mediante pip index versions vllm-mlx o la página del proyecto en PyPI
  • Mantenido activamente: el repositorio de GitHub muestra commits continuos y un sitio de documentación en vllm-mlx.is-a.dev
  • El README está traducido a varios idiomas (inglés, español, francés, chino) por el propio proyecto, algo inusual para un proyecto de este tamaño y una señal de una base de usuarios distribuida internacionalmente
  • El conjunto de funciones ya incluye, al momento de esta reseña, soporte para modelos de razonamiento (extracción de razonamiento al estilo Qwen3, DeepSeek-R1), decodificación especulativa y optimizaciones de Mixture-of-Experts

¿Qué se puede hacer con vllm-mlx?

El conjunto de funciones de vllm-mlx se centra en servir de forma eficiente varias solicitudes concurrentes en una sola Mac, cubriendo más que la simple generación de texto. Esto es lo que hace realmente cada parte, según el propio README y el sitio de documentación del proyecto.

  • Compatibilidad dual de API — sirve endpoints tanto al estilo OpenAI (/v1/chat/completions, /v1/completions, /v1/embeddings, /v1/rerank, /v1/responses) como al estilo Anthropic (/v1/messages, con streaming, uso de herramientas y prompts de sistema) desde un solo servidor en ejecución
  • Continuous batching — procesa varias solicitudes concurrentes en conjunto en lugar de una por una, la misma técnica que vLLM popularizó para el serving en GPU, adaptada aquí para MLX/Metal
  • Caché KV paginada y por prefijo — una caché eficiente en memoria basada en trie que comparte prefijos de prompt repetidos entre solicitudes, con una bandera opcional --ssd-cache-dir para volcar la caché a disco en cargas de trabajo de agentes con contexto largo
  • Soporte multimodal — entrada de texto, imagen, video y audio desde un solo servidor; las familias de modelos de visión compatibles documentadas incluyen Gemma, Qwen3-VL, Pixtral y variantes de visión de Llama
  • Audio integrado — texto a voz (varias voces e idiomas según su README) y voz a texto mediante modelos de la familia Whisper, ejecutados en el mismo proceso del servidor
  • Llamadas a herramientas MCP — soporte para el Model Context Protocol con parsers para varias familias de modelos (el README enumera, entre otros, formatos de llamadas a herramientas de OpenAI, Anthropic, Gemini, Qwen, DeepSeek y Gemma), además de compatibilidad explícita con Claude Code a través del endpoint compatible con Anthropic
  • Funciones de razonamiento y MoE — extracción de tokens de razonamiento para modelos como Qwen3 y DeepSeek-R1, además de opciones de enrutamiento Mixture-of-Experts y decodificación especulativa para las familias de modelos compatibles
  • Observabilidad y benchmarking — un endpoint Prometheus /metrics opcional y un comando integrado vllm-mlx bench-serve para ejecutar y registrar mediciones de rendimiento

Ejemplos de uso: tres formas de usar vllm-mlx

Estos son flujos de trabajo concretos construidos a partir de las funciones documentadas de vllm-mlx descritas arriba, usando comandos del propio README del proyecto.

Servir un modelo y llamarlo con el SDK de Python de OpenAI

Ejecuta vllm-mlx serve mlx-community/Llama-3.2-3B-Instruct-4bit --port 8000 para iniciar el servidor. Luego apunta el paquete estándar de Python openai a base_url="http://localhost:8000/v1" con cualquier clave de API de relleno — el código cliente de OpenAI existente funciona contra el modelo local sin modificaciones, ya que el formato de respuesta coincide con el de la API de OpenAI Chat Completions.

Ejecutar Claude Code contra un modelo local mediante el endpoint compatible con Anthropic

Con un modelo ya en servicio, establece ANTHROPIC_BASE_URL=http://localhost:8000 y ANTHROPIC_API_KEY=not-needed como variables de entorno, y luego lanza claude como de costumbre. Las solicitudes se enrutan al modelo servido localmente en lugar de a la API en la nube de Anthropic, según la integración con Claude Code documentada por el proyecto.

Medir el rendimiento antes de decidir un modelo o una configuración de hardware

Usa el comando integrado vllm-mlx bench-serve --url http://localhost:8000 --concurrency 5 --prompts prompts.txt --output results.csv para medir el rendimiento real de solicitudes en tu propia máquina y tu propio conjunto de prompts, en lugar de confiar solo en los benchmarks publicados en el README del proyecto, que según el README se midieron en hardware específico (un M4 Max con 128 GB de memoria unificada) que puede no coincidir con tu configuración.

Precios de vllm-mlx: ¿es realmente gratis vllm-mlx?

Sí — vllm-mlx no tiene ningún plan de pago. Se distribuye como un paquete PyPI gratuito con licencia Apache 2.0, sin cuenta, clave de licencia ni límite de uso. El repositorio de GitHub no tiene página de precios, y ninguna parte del README ni de la documentación describe una edición comercial o empresarial.

  • Instalar o ejecutar vllm-mlx en sí no tiene costo — pip install vllm-mlx es toda la transacción
  • La licencia Apache 2.0 permite el uso comercial, la modificación y la redistribución, sujeto a los términos estándar de la licencia (atribución y conservación del aviso de licencia)
  • El único costo real es el hardware Mac con Apple Silicon necesario para ejecutarlo, y el espacio en disco para cualquier modelo descargado por separado desde Hugging Face o la organización mlx-community
  • Esta reseña no encontró ninguna versión en la nube alojada por el desarrollador, API alojada u oferta gestionada — vllm-mlx solo funciona en hardware que uno mismo controla

vllm-mlx vs. mlx-lm

vllm-mlx y mlx-lm ejecutan modelos mediante el framework MLX de Apple, pero resuelven problemas distintos. mlx-lm es la propia biblioteca y CLI de Python de bajo nivel de Apple para ejecutar y afinar modelos MLX una solicitud a la vez; vllm-mlx es un servidor de más alto nivel construido sobre bibliotecas como mlx-lm, mlx-vlm y mlx-audio (según su propio diagrama de arquitectura) que añade las funciones de serving concurrente por las que vLLM es conocido.

Mantenedor

vllm-mlx:
Desarrollador independiente (Way Barrios)
mlx-lm:
Equipo de MLX de Apple

Caso de uso principal

vllm-mlx:
Servidor de API para solicitudes concurrentes
mlx-lm:
Biblioteca de generación y ajuste fino de solicitud única

Batching concurrente

vllm-mlx:
Continuous batching, paged KV cache
mlx-lm:
No es un enfoque central; normalmente una solicitud a la vez

Superficie de API

vllm-mlx:
Endpoints compatibles con OpenAI + Anthropic
mlx-lm:
API y CLI de Python, sin servidor integrado con formato Anthropic

Relación

vllm-mlx:
Se construye internamente sobre mlx-lm, mlx-vlm, mlx-audio
mlx-lm:
Una dependencia fundamental sobre la que se construyen otras herramientas MLX

Esta es una comparación factual de funciones basada en la documentación propia de cada proyecto, no un benchmark realizado por PromptQuorum. Los dos no son estrictamente competidores — vllm-mlx depende de mlx-lm en lugar de reemplazarlo.

Comparar en el directorio

¿Quién debería usar vllm-mlx?

vllm-mlx es adecuado para desarrolladores en Apple Silicon que buscan un serving concurrente al estilo de producción en lugar de una app de chat para un solo usuario.

Usa vllm-mlx si

  • tienes una Mac con Apple Silicon y quieres servir de forma eficiente varias solicitudes concurrentes en lugar de manejar una solicitud a la vez
  • ya tienes código escrito contra las API de OpenAI o Anthropic y quieres apuntarlo a un modelo local con cambios mínimos
  • quieres ejecutar Claude Code, u otra herramienta compatible con la API de Anthropic, contra un modelo alojado localmente
  • necesitas serving multimodal (texto, visión, audio) desde un solo proceso de servidor local en lugar de combinar varias herramientas separadas
  • te sientes cómodo instalando y ejecutando una herramienta CLI de Python en lugar de necesitar un instalador gráfico

Busca otras opciones si

  • no tienes hardware Apple Silicon — no hay soporte para Windows, Linux en x86 ni Mac Intel
  • quieres una app de chat de escritorio gráfica en lugar de un servidor de API que configures tú mismo — mira en su lugar Jan o GPT4All
  • necesitas específicamente el proyecto vLLM oficial (por ejemplo, para replicar exactamente un despliegue de producción en Linux/NVIDIA) en lugar de una adaptación nativa de MLX de sus ideas
  • quieres una herramienta respaldada por un proveedor con un contrato de soporte comercial — esta reseña no encontró ninguna empresa ni financiación detrás de vllm-mlx

Errores comunes al evaluar vllm-mlx

La mayor parte de la confusión sobre vllm-mlx proviene de su nombre, que invita a suposiciones que el propio proyecto no hace.

Error 1: asumir que vllm-mlx es el proyecto vLLM oficial ejecutándose en una Mac

No lo es. vllm-mlx es un proyecto independiente y no oficial de un desarrollador distinto que adapta los conceptos de serving de vLLM para MLX — no contiene el código base original en CUDA/ROCm de vLLM y no está afiliado al equipo de vLLM.

Error 2: confundir este repositorio con otros proyectos homónimos "vllm-mlx"

Varios repositorios de GitHub comparten el nombre "vllm-mlx" bajo distintos nombres de usuario. Esta reseña cubre específicamente waybarrios/vllm-mlx, el más antiguo y con más estrellas del grupo, al que otros repositorios homónimos describen como el proyecto que replican.

Error 3: esperar soporte de GPU NVIDIA/AMD o para plataformas distintas de Mac

vllm-mlx se ejecuta exclusivamente en Apple Silicon mediante MLX y Metal. No tiene una ruta de respaldo solo con CPU ni una forma de ejecutarse en Windows, Linux en x86 o GPU que no sean de Apple.

Error 4: tratar las cifras de benchmark publicadas por el propio proyecto como verificadas de forma independiente

Las cifras de rendimiento en el README de vllm-mlx son autorreportadas, medidas según el README en hardware específico (un M4 Max con 128 GB de memoria unificada). Vuelve a ejecutar el comando bench-serve del propio proyecto en tu propio hardware y modelos antes de tratar cualquier cifra publicada como una garantía.

Competidores y alternativas

vllm-mlx se sitúa en el mismo segmento de servidores de inferencia para Apple Silicon que oMLX, Rapid-MLX y mlxcel — todos proyectos independientes que ejecutan modelos locales mediante MLX con una superficie de API compatible con OpenAI o similar, diferenciándose principalmente en el lenguaje (Python frente a Rust), el énfasis en funciones y la estrategia de caché.

Herramienta
Más conocido por
Enlace
oMLXServidor de inferencia para Apple Silicon con caché de prompts respaldada en SSDReseña de oMLX
Rapid-MLXServidor de inferencia MLX nativo centrado en la velocidad de servingReseña de Rapid-MLX
mlxcelRuntime MLX nativo en Rust para LLM, VLM, embeddings y audioReseña de mlxcel
LoRAXServir miles de adaptadores LoRA desde un modelo base en una sola GPUReseña de LoRAX

Esta lista refleja herramientas comúnmente comparadas en el espacio de motores de inferencia para Apple Silicon y serving de adaptadores, no un ranking independiente de PromptQuorum — verifica el conjunto de funciones actual de cada herramienta antes de elegir.

Comparar en el directorio

Preguntas frecuentes

¿Qué es vllm-mlx?

vllm-mlx (github.com/waybarrios/vllm-mlx) es un servidor de inferencia gratuito y de código abierto (Apache 2.0) que ejecuta modelos de IA en Mac con Apple Silicon mediante MLX nativo, exponiendo endpoints de API compatibles tanto con OpenAI como con Anthropic.

¿Es vllm-mlx lo mismo que vLLM?

No. vllm-mlx es un proyecto independiente y no oficial que adapta los conceptos de serving de vLLM (continuous batching, paged KV cache) para el framework MLX de Apple. No está afiliado al proyecto o equipo oficial de vLLM, y no contiene el código base original de vLLM.

¿Es gratis vllm-mlx?

Sí. Se instala gratis con pip install vllm-mlx, tiene licencia Apache 2.0, y no tiene plan de pago, cuenta ni límite de uso.

¿Cómo instalo vllm-mlx?

Ejecuta pip install vllm-mlx o uv tool install vllm-mlx, según el propio README del proyecto. Requiere una Mac con Apple Silicon; no existe soporte para Windows, Linux ni Mac Intel.

¿Funciona vllm-mlx con Claude Code?

Sí. El proyecto documenta soporte explícito para Claude Code configurando ANTHROPIC_BASE_URL para apuntar al endpoint de vllm-mlx servido localmente, ya que expone un endpoint compatible con Anthropic /v1/messages.

¿Qué hardware requiere vllm-mlx?

Una Mac con Apple Silicon (M1, M2, M3, M4 o M5). Usa kernels de Metal mediante MLX y no tiene respaldo solo con CPU ni soporte para GPU que no sean de Apple.

¿Quién creó vllm-mlx?

El desarrollador independiente Way Barrios, usuario de GitHub waybarrios. Esta reseña no encontró evidencia de una empresa o ronda de financiación detrás del proyecto.

¿vllm-mlx soporta modelos de visión y audio, o solo texto?

Soporta modelos de texto, visión (imagen/video) y audio (texto a voz y voz a texto), además de embeddings y reranking, todo servido desde el mismo proceso, según el README del proyecto.

¿Qué es el continuous batching?

Una técnica de serving, popularizada por vLLM, que procesa varias solicitudes concurrentes en conjunto en lugar de una por una, mejorando el rendimiento cuando un servidor maneja varias solicitudes a la vez. vllm-mlx adapta este concepto para MLX en Apple Silicon.

¿Ha probado PromptQuorum de forma independiente las afirmaciones de benchmark de vllm-mlx?

No. Esta reseña se basa en el propio repositorio de GitHub, README y sitio de documentación de vllm-mlx, en lugar de en pruebas prácticas realizadas por PromptQuorum. Las cifras de rendimiento en el README del proyecto son autorreportadas.

Fuentes

← Volver a LLM locales avanzados

MCP