Команда ggml-org выпустила llama.cpp b12102, изменив проверку диапазона памяти для представлений тензоров с заданными шагами. Прежняя проверка могла отклонять представления, строки которых перекрывались, даже если они оставались в пределах исходного тензора, и при этом пропускать некоторые представления с большими шагами, выходившие за его границы.
Обновлённые функции создания представлений передают шаги в конструктор тензора, который проверяет, какие именно байты затрагивает представление. В релизе также добавлена проверка, требующая, чтобы элементы вдоль первого измерения исходного тензора располагались непрерывно. Сборки доступны для macOS, Linux, Android и Windows, а также других платформ.
Почему это важно
Для разработчиков, использующих llama.cpp, обновлённая проверка помогает не допустить, чтобы представления тензоров, выходящие за границы исходных данных, проходили валидацию. В примечаниях к релизу влияние на производительность моделей не оценивается.