Código abierto

Perplexity libera Lily, su motor de inferencia para Mac

Perplexity AI ha publicado como open source (código abierto) Lily, el motor de inferencia (el componente que ejecuta un modelo de IA para producir respuestas) que impulsa la parte local de su aplicación para Mac. Escrito en Rust y con kernels Metal hechos a mano, supera al framework de referencia de Apple en las pruebas de la propia compañía y demuestra que un modelo de 35.000 millones de parámetros puede ejecutarse con eficiencia en un ordenador de sobremesa.

En resumen

  • Perplexity ha liberado Lily, un motor de inferencia escrito en Rust y Metal, la API gráfica (interfaz de programación de aplicaciones) de Apple.
  • Está optimizado para un único modelo, Qwen3.6-35B-A3B, y una única plataforma: Apple Silicon, los chips de la serie M de Apple.
  • Frente a MLX, el framework de referencia de Apple, logra un 89% más de rendimiento en prefill (procesamiento del prompt) y 1,35 veces más velocidad en decode (generación de tokens).
  • El código está disponible en el repositorio pplx-garden e incluye una API compatible con chat-completions de OpenAI.

Un motor deliberadamente especializado

Lily nace de una decisión poco habitual en el ecosistema de la inferencia local: renunciar a la compatibilidad general. En lugar de soportar decenas de arquitecturas y todo tipo de aceleradores, el motor de Perplexity se centra en ejecutar un solo modelo, Qwen3.6-35B-A3B, sobre una sola familia de hardware, Apple Silicon. Esa restricción es precisamente lo que permite exprimir la máquina hasta el límite.

El resultado es un binario compacto: un único proceso escrito en Rust que carga el checkpoint (el archivo con los pesos entrenados del modelo) y genera texto directamente, sin capas intermedias. La comunicación con las aplicaciones se hace mediante una API compatible con el estándar chat-completions de OpenAI, lo que facilita el streaming (envío de la respuesta token a token, a medida que se genera) y la integración con herramientas ya existentes.

El corazón del sistema son los kernels Metal escritos a mano. Un kernel es la rutina de bajo nivel que se ejecuta en la GPU (unidad de procesamiento gráfico), y programarlos manualmente para Metal, en lugar de delegar en abstracciones genéricas, es lo que explica buena parte de las cifras de rendimiento.

Qué dicen los números frente a MLX

La referencia natural para medir Lily es MLX, el framework que Apple mantiene para trabajo de machine learning (aprendizaje automático) en sus propios chips. En las mediciones publicadas por Perplexity, Lily mejora en un 89% el rendimiento en la fase de prefill, es decir, el procesamiento inicial del prompt (la instrucción o contexto que recibe el modelo antes de empezar a responder). En la fase de decode, la generación propiamente dicha de tokens, alcanza 1,35 veces la velocidad de MLX.

También hay un resultado negativo, y la compañía no lo oculta: el speculative decoding (decodificación especulativa), una técnica que usa un modelo pequeño para adelantar tokens que luego valida el modelo grande, resultó un 18% más lento en este contexto. Perplexity lo descartó. Es un dato relevante porque contradice la intuición habitual de que esa optimización siempre compensa, y sugiere que en configuraciones muy ajustadas el sobrecoste de validación puede superar la ganancia.

La pieza local de Hybrid Compute

Lily no es un experimento aislado, sino el componente en dispositivo de Hybrid Compute, el modo de ejecución dividida de la aplicación Perplexity Computer para Mac. La idea consiste en repartir la carga: una parte del trabajo se resuelve localmente, en el propio ordenador, y otra se envía a la nube cuando hace falta más capacidad. Ese reparto solo tiene sentido si la mitad local es lo bastante rápida como para no convertirse en un cuello de botella, y de ahí la obsesión por el rendimiento.

Para la comunidad de IA local y self-hosted (autoalojada, ejecutada en infraestructura propia), la publicación tiene un valor doble. Por un lado, ofrece una referencia de rendimiento concreta y verificable contra la que comparar otras implementaciones. Por otro, demuestra que un LLM (large language model, modelo de lenguaje grande) de 35.000 millones de parámetros puede funcionar con eficiencia en un Mac de consumo, sin depender de servidores remotos ni de tarjetas gráficas de centro de datos.

Conclusión

La apuesta de Perplexity es interesante menos por el software liberado que por lo que demuestra sobre el método. Lily no aspira a ser un motor universal, y esa renuncia explícita a la generalidad es lo que le permite superar a un framework respaldado por el propio fabricante del hardware. La lección es transferible: en inferencia local, donde cada milisegundo de latencia se nota en la experiencia de uso, la especialización agresiva sigue rindiendo más que la abstracción. Queda por ver hasta qué punto el código es reutilizable fuera de la combinación exacta de modelo y chip para la que fue diseñado, y si otros actores adoptan un enfoque similar de motores estrechos y afinados en lugar de plataformas que lo soporten todo a medias.

Fuentes primarias

← Volver al blog