Туториал: упаковываем память Transformer-моделей с xFormers — последовательности, GQA, ALiBi и SwiGLU
В статье разбирается практическая работа с библиотекой xFormers — набором инструментов для создания эффективных по памяти и скорости Transformer-моделей на GPU. Автор начинает с проверки корректности memory-efficient attention: сравнивает её с эталонной реализацией, а затем бенчмаркает обе по времени и потреблению памяти при разных длинах последовательностей (от 512 до 4096 токенов).
Далее объясняется, как использовать каузальное маскирование, работать с упакованными последовательностями переменной длины (packed sequences), подключать Grouped-Query Attention (GQA) и кастомные позиционные смещения ALiBi. В финале все техники объединяются в одну обучаемую модель в стиле GPT — с xFormers attention, SwiGLU feed-forward слоями и автоматическим mixed-precision обучением.
Отдельное внимание уделено практическим примерам кода: установка xFormers, проверка доступных ядер, замеры CUDA-времени и пиковой памяти. Материал будет полезен инженерам, которые хотят ускорить инференс и обучение Transformer-моделей на GPU, не теряя в качестве.