A versão llama.cpp b10994 inclui uma correção para o backend do Metal que resolve saídas NaN na operação `mul_mm_id` quando os valores de ativação excedem a faixa f16. Este defeito anteriormente fazia com que modelos como o Mistral Small 4 produzissem vocabulários completamente NaN durante as etapas de prefill de 32 tokens ou mais em dispositivos Apple Silicon.

  • A correção reescala src1 por uma potência de dois para caber dentro dos limites f16 e desfaz a escala no acumulador f32, garantindo resultados exatos sem perda de precisão.
  • Benchmarks de desempenho em um M2 Max mostram uma sobrecarga mediana de +1.14% para os caminhos afetados, com tamanhos de lote maiores incorrendo em custos ligeiramente maiores.
  • A versão fornece binários para macOS (Apple Silicon e Intel), iOS, Linux (CPU, CUDA, ROCm, OpenVINO, SYCL), Android e Windows em várias configurações de hardware.