Как ускорить пакетную обработку в SLM за счёт группировки по длине

Ссылка скопирована

...

Сегодня, 13:30

Искусственный интеллект

Чтение занимает время?

Вы можете слушать статьи

Новый подход к пакетной обработке по длине в оптимизации SLM

Увеличение скорости работы моделей искусственного интеллекта и эффективное использование памяти остаются ключевыми задачами. Эксперименты на Macbook Air с процессором M2 показали, что группировка по длине в пакетной обработке значительно повышает производительность малых языковых моделей (SLM).

Оборудование и модель для тестирования

Для тестов использовалась модель Qwen2.5-0.5B-Instruct в формате float32 через библиотеку Hugging Face Transformers. Аппаратная платформа включала Macbook Air с 24 ГБ оперативной памяти и 16-ядерным Neural Engine. Такая конфигурация идеально подходит для преодоления ограничений пропускной способности памяти.

Разница между последовательной и пакетной обработкой

При традиционной последовательной обработке каждый запрос обрабатывается отдельно, что создает узкие места при передаче данных в память. Группировка по длине разбивает нагрузку на несколько последовательностей, сортируя их по длине. Это позволяет выровнять последовательности внутри пакета и снизить накладные расходы на заполнение до 7,6%.

Результаты производительности

В тестах на 600 запросах последовательная обработка заняла 144,35 секунды, тогда как пакетная с группировкой по длине — всего 79,60 секунды. Это почти вдвое быстрее: 7,5 запросов в секунду против 4,2 при последовательной обработке.

Технические детали и особенности

Заполнение последовательностей происходит слева, чтобы последний токен воспринимался как настоящий конечный. Для вывода модели требуются логиты только последнего токена. При совместном использовании пакетной обработки и кеширования префиксов необходима аккуратность. Главное — результаты пакетной обработки полностью совпадают с последовательной.

Выводы

Группировка по длине в пакетной обработке устраняет ограничения пропускной способности памяти в малых языковых моделях, позволяя эффективнее использовать вычислительные ресурсы. Этот метод удваивает скорость работы при сохранении точности результатов.

Оптимизация помогает сбалансировать скорость и использование памяти, открывая путь для более эффективных приложений искусственного интеллекта. В будущем такой подход может стать стандартом для повышения производительности SLM и вывести ИИ на новый уровень.

Ссылка скопирована