La versión llama.cpp b10994 incluye una corrección para el backend de Metal que resuelve las salidas NaN en la operación `mul_mm_id` cuando los valores de activación superan el rango f16. Este defecto anteriormente hacía que modelos como Mistral Small 4 produjeran vocabularios completamente NaN durante los pasos de prellenado de 32 tokens o más en dispositivos Apple Silicon.

  • La corrección reescala src1 por una potencia de dos para ajustarse a los límites de f16 y deshace el escalado en el acumulador f32, garantizando resultados exactos sin pérdida de precisión.
  • Las pruebas de rendimiento en un M2 Max muestran una sobrecarga mediana de +1.14% para las rutas afectadas, con tamaños de lote más grandes que incurrían en costos ligeramente mayores.
  • La versión proporciona binarios para macOS (Apple Silicon e Intel), iOS, Linux (CPU, CUDA, ROCm, OpenVINO, SYCL), Android y Windows en varias configuraciones de hardware.