Новость
Движок WASTE позволяет запускать Kimi K3 на MacBook Pro с 64 ГБ памяти
Проект SQLite AI представил движок WASTE, который, по словам авторов, позволяет запускать полную модель Kimi K3 на MacBook Pro с 64 ГБ ОЗУ. Для этого используется подгрузка экспертов с SSD по мере необходимости, а скорость генерации составляет 0,49–0,54 токена в секунду.
Проект SQLite AI представил движок WASTE, написанный на 6000 строк C. Он позволяет запускать полновесную модель Kimi K3 на MacBook Pro с 64 ГБ оперативной памяти без использования BLAS, CUDA и Python в рантайме. Модель Kimi K3 после предварительной конвертации из формата safetensors в собственный формат движка занимает 982 ГиБ. В оперативную память она не помещается, поэтому WASTE держит в RAM только резидентную часть объёмом 27,28 ГБ, а эксперты подгружает с SSD по мере необходимости. Скорость генерации составляет 0,49–0,54 токена в секунду. Подход основан на архитектуре MoE (Mixture of Experts): на каждый токен K3 активирует около 4% своих весов — 16 экспертов в каждом из 92 слоёв. По данным авторов, внутренний NVMe в MacBook обеспечивает достаточную скорость чтения, а внешний накопитель по USB заметно замедляет работу. Отмечается также, что раздувать кэш экспертов выше 46 ГБ неэффективно. Авторы указывают, что WASTE не использует дистилляцию или обрезку слоёв, а полная модель остаётся без изменений. Лицензия проекта — Apache 2.0.
-
Движок WASTE позволяет запускать Kimi K3 на MacBook Pro с 64 ГБ памяти
Machinelearning
🌟 WASTE: запускаем полную Kimi K3 на MacBook Pro с 64 ГБ памяти SQLite AI собрала движок на 6000 строк C, который гоняет полновесную K3 без BLAS, CUDA и Python в рантайме. Kimi K3 после предварительной конвертации из safetensors в формат, который движок умеет читать, занимает 982 ГиБ (диск бы назвал это 1,05 ТБ). В оперативную память она не влезает даже приблизительно. WASTE держит в RAM только резидентную часть на 27,28 ГБ, а экспертов подтягивает с SSD ровно тогда, когда они понадобились. Скорость генерации выходит 0,49-0,54 токена в секунду. Веса при этом полные, без дистилляции и обрезки слоёв. 🟡Расчёт строится на устройстве MoE На каждый токен K3 включает около 4% собственных весов - 16 экспертов в каждом из 92 слоёв. Простаивающему весу незачем сидеть в памяти, ему достаточно успеть подгрузиться вовремя. Контейнер с моделью устроен так, что один эксперт стоит ровно одного чтения с диска - матрицы gate, up и down лежат вплотную, а сами эксперты хранятся в остаточном векторном квантовании (3 ступени кодбуков по 256 записей, 3 бита на вес), и матрица никогда не разворачивается целиком. 🟡Скорость диска На один токен движок вычитывает 17 ГБ. Внутренний NVMe в MacBook выдаёт 12,78 ГБ/с, и модель успевает читать. Внешний бокс по USB даёт 0,94 ГБ/с, и тот же токен считается 13 секунд. Вариант для очень терпеливых. 🟡Работа с памятью Раздувать кэш экспертов выше 46 ГБ бесполезно и вредно - на 52 ГБ скорость падает втрое, на 58 ГБ в 8 раз. Причина в том, что движок остаётся внутри своего бюджета, а система уже нет - macOS вытесняет кэш на диск, и попадание в память оборачивается обращением к подкачке. Поэтому по умолчанию WASTE не забирает все доступные ресурсы, а берёт на один рабочий набор экспертов меньше, чем мог бы. Полтокена в секунду - это 30 секунд на одно предложение, но модели вчетверо меньше до сих пор запускают на серверах с терабайтом DDR5, а здесь почти 3 триллиона параметров отвечают без сети. Если триллионы параметров не нужны, тот же движок крутит Kimi-Linear 48B из контейнера на 19 ГБ и выдаёт 10,7 токена в секунду - с этого проще начать знакомство. Для K3 придётся освободить терабайт на диске и потратить около 5 часов на M5 Pro в три процесса, почти сутки - если гонять конвертацию чистым торчем. Авторы, кстати, завели файл с опровергнутыми гипотезами и записали туда всё, что померили и выбросили. 📌Лицензирование: Apache 2.0 License. 🖥Github @ai_machinelearning_big_data #AI #ML #Inference #KimiK3 #WASTE #SQLiteAI