REAP - Router-weighted Expert Activation Pruning
- title
- REAP - Router-weighted Expert Activation Pruning
- type
- concept
- summary
- Удаление наименее активных экспертов из MoE по калибровочному датасету: -20% размера с сохранением возможностей написания кода
- tags
- llm, moe, quantization
- created
- 2026-05-13
- updated
- 2026-05-13
- lang
- ru
- translation_of
- reap-expert-pruning
- source_updated
- 2026-05-13
- translated
- 2026-09-01
- translator
- lllm/antigravity/gemini-3.7-flash-medium
Router-weighted Expert Activation Pruning - это метод структурного сжатия для Mixture-of-Experts моделей. Вместо того чтобы сильнее квантовать веса всех экспертов (путь квантования), REAP удаляет экспертов целиком - тех, которых router реже всего активирует на нагрузках из калибровочного датасета. Оставшиеся эксперты покрывают специализации, задействованные в калибровочных данных; эксперты, обученные под неиспользуемые специализации, отбрасываются.
Это работает, поскольку эксперты в MoE используются неравномерно. Некоторые эксперты имеют узкую специализацию - например, один может отвечать за таблицы високосных годов, а другой - за редкие европейские языки. Для конкретной прикладной задачи (например, программирования) большинство узкоспециализированных экспертов простаивает. Они занимают место на диске, в RAM и полосу пропускания памяти, не выполняя полезной работы. REAP измеряет паттерны активации на калибровочных данных, ранжирует экспертов по весам router'а и отсекает нижние N%.
Как выглядят цифры
После обрезки REAP-20 модель Qwen 3.6 (35B-A3B, 256 экспертов, 8 активных) превращается в 28B-A3B (примерно на 20% меньше при том же числе активных параметров). Для более жёстких ограничений существуют варианты REAP-50 и REAP-75. Искать их можно на huggingface.co/models?search=reap - большинство опубликованных версий REAP откалибровано на датасетах с уклоном в программирование.
Пример из практики Вячеслава (habr-local-llm-quantization-deep-dive): Qwen3.6-28B-REAP20-A3B Q4_K_M успешно дорабатывает клон Minecraft, который он ранее написал с помощью полной версии Qwen3.6, - добавлены пещеры, спавн алмазов, генерация дома. Агентный цикл сохраняется. Качество русского языка заметно падает (калибровка была сфокусирована на англоязычном коде, поэтому возможности в русском языке угасают первыми - REAP "забывает, кто такой Чапаев"). В задачах написания кода на английском сокращение практически незаметно.
Та же техника применительно к крупным MoE-моделям выглядит ещё интереснее, поскольку абсолютная экономия размера играет существенную роль: GLM-5.1 744B-A40B -> 444B-A14B экономит около 40% диска и активных вычислений. На масштабе в триллион параметров REAP становится способом "уместить MoE фронтирного уровня в RAM" без изменения квантования.
Ограничения и подводные камни
- Калибровочные данные задают новые границы поведения модели. Отрезав 20% экспертов ради специализации на коде, вы получаете модель, которая объективно хуже справляется с задачами вне программирования. Бесплатных 20% не бывает.
- Динамическое квантование для версий с REAP пока редкость. Опубликованная по состоянию на середину 2026 года Qwen3.6-28B-REAP20-A3B доступна только в виде Q4_K_M; версии UD-Q4_K_XL существуют для исходной модели, но не для варианта с REAP. Так что совмещение REAP с лучшими рецептами квантования остаётся делом будущего.
- Отсечение опирается на выходные данные router'а, из-за чего могут быть удалены редкие, но критически важные эксперты. Стандартный аргумент в духе imatrix - о том, что частота активации отражает важность, - предполагает, что калибровочный датасет покрывает целевое распределение. Если реальная нагрузка обращается к эксперту, которого калибровочный датасет не задействовал, эта возможность теряется незаметно.
- REAP сочетается с квантованием, но порядок имеет значение. Опубликованные версии квантуются после отсечения экспертов. Сначала квантовать, а потом удалять экспертов - другая операция, результатов по которой никто не публиковал.
Сравнение с альтернативами
| Метод | Что меняет | Когда выигрывает |
|---|---|---|
| Агрессивное квантование | Все веса -> меньше бит на каждый | Когда допустима небольшая потеря качества по всем направлениям |
| REAP | Удаление экспертов целиком | Когда модель специализируется под известную нагрузку |
| Дистилляция | Обучение меньшей модели на базе большей | Когда есть бюджет на обучение и нужна другая архитектура |
| Pruning (не MoE) | Удаление отдельных весов ниже порога | Dense-модели; обычно сочетается с дообучением |
REAP выступает специфичным для MoE аналогом структурного прунинга. Это также относительно новая техника - Вячеслав отмечает, что по состоянию на середину 2026 года она "пока не очень распространена", а опубликованные варианты в основном относятся к Qwen и GLM.
Связанные страницы
- mixture-of-experts - архитектура, на которую нацелен REAP
- llm-quantization - альтернативный путь сжатия, часто совмещаемый с REAP
- habr-local-llm-quantization-deep-dive - практический пример Вячеслава с клоном Minecraft
- moe-cpu-offload - эксплуатационное дополнение: REAP уменьшает общий объём весов, cpu-moe выгружает остаток в RAM