Проект llama.cpp выпустил сборку b10622, которая включает критическое исправление для бэкенда Metal, предотвращающее сбои из-за нехватки памяти. Обновление устраняет проблему, при которой возвращение `ggml_metal_buffer_init` значения NULL из-за ошибки выделения памяти не проверялось, что приводило к жесткому сбою через `EXC_BAD_ACCESS` при разыменовании нулевого указателя.

  • metal: Добавлена проверка на NULL для результатов `ggml_metal_buffer_init` в `ggml_backend_metal_buffer_type_alloc_buffer` для корректной обработки условий OOM.
  • cont: Исправлены проблемы с логированием внутри кодовой базы.

Это изменение гарантирует, что устройства с ограниченными ресурсами памяти, такие как iOS, будут выдавать диагностируемые ошибки вместо сбоя, когда модель или контекст превышают доступный бюджет Metal.