GQA
Почему это важно: трансформеры при генерации каждого токена обращаются ко всем предыдущим данным. Если делать это отдельно для каждого запроса, расходы растут квадратично. GQA группирует запросы, снижая нагрузку, ускоряет генерацию и позволяет запускать модели на устройствах с ограниченными ресурсами — телефонах, браузерах — при сохранении качества.
Аналогия: представьте библиотеку, где каждого читателя обслуживает библиотекарь, но не личный, а один на группу. Читатели спрашивают — библиотекарь быстро находит книги. В GQA группы ключей и значений играют роль библиотекарей, обслуживая несколько запросов сразу. Параметров при этом меньше, чем в полном раздельном внимании (где у каждого запроса свои ключи и значения), а гибкости больше, чем в варианте с единственным общим набором для всех.
Пример: архитектура Llama 2 использует GQA для ускорения инференса — то есть ответа пользователю. Это снижает требования к видеопамяти, позволяя обрабатывать длинные диалоги миллионов пользователей на обычных серверах без потери осмысленности ответов.
Итог: GQA — удачный компромисс между скоростью и точностью. Продуманная инженерная идея делает мощный ИИ доступнее, позволяя запускать сложные модели там, где раньше это казалось невозможным.
Поделиться