Ollama 0.32.4-rc0: cuantificación de LM head, estabilidad y Laguna en MLX
Ollama ha publicado la release candidata v0.32.4-rc0. Es una versión de mantenimiento: sin nuevas funcionalidades destacables, pero correcciones que importan para quien usa modelos open-weight en su equipo.
El cambio más visible es la cuantificación del LM head a 8 bits. El LM head es la capa final del modelo, la que transforma los números internos en palabras. Comprimirlo a 8 bits reduce la memoria ocupada sin degradar demasiado la calidad del texto. Si tienes una GPU con poca VRAM, son los megabytes los que marcan la diferencia entre que un modelo arranque o no quepa.
Dos parches de estabilidad para quienes ejecutan agentes locales: una data race en el scheduler (dos threads leyendo la misma estructura simultáneamente, con comportamientos impredecibles) y el refuerzo de tests flaky que generaban falsas alarmas. Como contábamos en julio hablando del fix de la fuga de memoria en 0.32.1, la estabilidad de las sesiones largas es el frente principal para quienes usan Ollama con agentes.
Además, soporte para Laguna en MLX: los modelos Laguna de Poolside, de los que hablamos en el lanzamiento open-weight del 118B, ahora se ejecutan en Apple Silicon vía Ollama. Y un parche en la cuantificación de expertos para Qwen 3.5.
Al ser una release candidata, si usas Ollama para trabajo diario lo recomendable es esperar a la versión estable. Si quieres probar Laguna en Mac, es el momento de testear.
En detalle
Qué es el LM head y por qué la cuantificación importa.
Un modelo de lenguaje está hecho de muchas capas apiladas. La última, llamada LM head, toma la representación interna y la proyecta sobre el vocabulario: para cada palabra posible, un número que indica qué tan probable es como siguiente palabra. Es una capa grande, porque el vocabulario de un modelo moderno va de 30 mil a más de 100 mil tokens.
Cuando cuantificas un modelo (lo comprimes de 16 bits a 4 u 8 bits para que ocupe menos memoria), el LM head normalmente permanece a precisión completa. Es una decisión conservadora: la capa final es sensible, y comprimirla demasiado puede degradar la calidad del texto de forma visible. El PR de Jesse Gross en esta release cuantifica el LM head a 8 bits, un compromiso que reduce a la mitad la memoria de esa capa respecto a 16 bits manteniendo suficiente precisión para no arruinar el output.
Para quienes tienen una GPU con 8 o 12 GB de VRAM, esto puede significar que un modelo que antes no cabía ahora arranca. El beneficio exacto depende del modelo: la capa final puede pesar cientos de megabytes en modelos con vocabularios grandes.
El parche de la data race.
Una data race es un bug de programación concurrente: dos partes del programa leen y escriben la misma variable sin coordinarse. El resultado depende del timing: a veces funciona, a veces no, y reproducir el bug es difícil.
El parche de dhiltgen cierra una data race en la scheduler loaded map, la estructura de datos que rastrea qué modelos están cargados en memoria en un momento dado. Si un agente local pregunta el estado del sistema mientras otro thread está cargando o descargando un modelo, el mapa se leía y escribía simultáneamente. En la mayoría de los casos no pasaba nada, pero en sesiones largas con múltiples modelos el riesgo de comportamientos impredecibles era real.
MLX memory resident.
En Mac, Ollama usa MLX, el framework de Apple para inferencia en Silicon. Antes de este cambio, cuando un modelo se descargaba para liberar memoria, tenía que recargarse desde cero en el próximo uso. El PR de dhiltgen mantiene el modelo residente en memoria incluso cuando no está activo, reduciendo el tiempo de reinicio. Para quienes trabajan con agentes que cambian de modelo durante una sesión (un modelo pequeño para la planificación, uno grande para la ejecución), el ahorro de tiempo es concreto.
Laguna en MLX.
Poolside AI lanzó Laguna S 2.1 como modelo open-weight el 23 de julio. Hasta ahora, ejecutarlo en Mac requería configuraciones manuales. La adición del soporte MLX en Ollama significa que puedes descargarlo e iniciarlo con el comando habitual, sin configurar nada. El modelo es un MoE de 118B parámetros totales: necesita un Mac con memoria unificada generosa, al menos 64 GB para estar cómodo con la cuantificación.
Las limitaciones.
Es una release candidata, no una estable. Los parches están en el changelog y en los PR, pero aún no hay adopción generalizada que confirme la ausencia de regresiones. Los números sobre la memoria ahorrada por la cuantificación del LM head no están publicados: el beneficio exacto depende del modelo específico. Si lo usas en producción, espera a la 0.32.4 estable.