Перейти к содержимому
Новость

Edge0 держит 35B-модель в 2,9 ГБ активной памяти, выгружая экспертов на SSD

Открытый фреймворк Edge0 запускает разреженную MoE-модель класса 35 млрд параметров с заявленным пиком около 2,9 ГБ активной памяти. Секрет не в том, что вся модель помещается в эти 2,9 ГБ: большая часть весов остается на SSD и подгружается только тогда, когда она нужна.

RaVic
Edge0 держит 35B-модель в 2,9 ГБ активной памяти, выгружая экспертов на SSD

Автор: Edge0-AI

Именно различие между размером модели и реально занятой во время вычислений памятью делает Edge0
интереснее обычного сообщения о появлении еще одного локального ИИ-фреймворка. Разработчики вынесли веса экспертов разреженной MoE-модели на накопитель и читают их через mmap по мере маршрутизации токенов. Поэтому 4-битный файл Edge0-35B-A3B-preview занимает около 23 ГБ на диске, тогда как заявленный пик активной памяти при коротком контексте составляет 2,9 ГБ.
Есть и меньшая версия Edge0-8B-A1B-preview. Ее полный 4-битный набор занимает примерно 4,2 ГБ, а разработчики указывают около 1 ГБ активной памяти. В основе старшей версии лежит Qwen3.5-MoE 35B-A3B, младшей — Ling 3.0 tiny. В каждом токене работает лишь часть экспертов: у 35B-варианта используются четыре из 256, у 8B — восемь из 128.
Подгрузка весов с SSD обычно грозит паузами, поэтому Edge0 пытается заранее угадать, какие эксперты понадобятся следующему токену. Обученный prerouter начинает читать соответствующие веса параллельно с текущими вычислениями. Авторы проекта заявляют прирост скорости декодирования до 59% относительно варианта без такого опережения, но это их собственные измерения, а не результат независимого тестирования.
На Mac mini с M4 Pro и 24 ГБ памяти разработчики получили 14,9–17,7 токена в секунду для Edge0-35B и 23,9–25,3 токена в секунду для Edge0-8B. Цифры получены встроенным тестом проекта после прогрева и поэтому корректнее рассматривать их как воспроизводимый ориентир авторов. Для длинного контекста расход памяти растет: например, для 8B-модели при запросе примерно на 3300 токенов один KV-кеш занимает около 3,3 ГБ. Формулировка про работу «в 1 ГБ» без этого уточнения была бы слишком красивой.

01_1200x600_66d668e6b3

Фото: Edge0-AI


Качество после 4-битного квантования разработчики восстанавливают при помощи Recover-LoRA, обученной дистилляцией от полноточной модели. В опубликованных результатах OpenCompass средний балл 35B-версии снизился с 83,2 у FP16-основы до 79,2, а у 8B — с 72,7 до 69,9. Это тоже тесты самой команды Edge0, независимой проверки этих результатов пока нет.
Еще одно ограничение спрятано за выражением «phone-class memory». Публичная версия Edge0 сейчас рассчитана на MLX и macOS с Apple Silicon. CUDA указана в планах, а готового публичного варианта для обычных ПК с видеокартами NVIDIA или для смартфонов в текущей документации нет. Поэтому речь пока идет не о запуске 35B-модели на телефоне, а о способе заметно снизить требования к оперативной памяти на Mac за счет быстрого SSD. Именно этот подход интереснее самой цифры в 35 млрд параметров: накопитель здесь фактически становится еще одним уровнем памяти для MoE-модели.

Источник: GitHub
3 показов