Обычно для запуска языковых моделей требуются мощные видеокарты или специализированные серверы. Разработчик Слава С. под ником slvDev поставил перед собой другую задачу: запустить модель на чипе стоимостью меньше $10.
Источник изображения: Slava S./X
Микроконтроллер ESP32-S3 имеет всего 512 КБ встроенной памяти SRAM, 8 МБ PSRAM и 16 МБ флеш-памяти. Для сравнения: предыдущий рекорд для подобных чипов составлял около 260 тысяч параметров. Славе удалось разместить модель с 28,9 миллиона параметров.
Он применил технику Per-Layer Embeddings, которую использует Google в своих моделях Gemma. Разработчик сжал модель до 4-битного формата — итоговый размер составил 14,9 МБ. Вместо того чтобы загружать все данные в быструю память, он поместил таблицу вложений на 25 миллионов параметров во флеш-память. Медленная флеш-память не становится узким местом: модель обращается только к нескольким строкам таблицы для обработки каждого токена. Быстрая память SRAM объемом 512 КБ остается свободной для основных вычислений.
Важное ограничение: модель обучена на датасете TinyStories и умеет писать только короткие простые выдуманные рассказы. Она не отвечает на вопросы, не пишет код и не содержит фактов о реальном мире. Разработчик видит практическое применение в устройствах вроде кофемашины, которая знает все о кофе — сортах, помоле, температуре воды — и работает без подключения к интернету.
Проект показывает, что архитектурные решения, подобные Per-Layer Embeddings, могут работать на очень скромном оборудовании. Это важно не только для микроконтроллеров, но и для серверов, где флеш-память может использоваться как дополнительный уровень хранения данных для ИИ-систем.

