Модель с 28,9 млн параметров запустили на ESP32-S3 стоимостью около 8 долларов

Разработчик slvDev добился автономной генерации текста на микроконтроллере с 512 КБ SRAM, 8 МБ PSRAM и 16 МБ флеш-памяти. Четырёхбитная модель занимает 14,9 МБ и работает со скоростью около 9,5 токена в секунду.

Разработчик slvDev опубликовал проект ESP32-AI, в котором языковая модель с 28,9 млн параметров генерирует текст непосредственно на ESP32-S3 N16R8 без подключения к серверу или интернету. Использованная конфигурация располагает 512 КБ встроенной SRAM, 8 МБ PSRAM и 16 МБ флеш-памяти.

После четырёхбитного квантования модель занимает 14,9 МБ. Разместить её на микроконтроллере удалось с помощью Per-Layer Embeddings — механизма послойных эмбеддингов из архитектуры Google Gemma. Таблица примерно с 25 млн параметров остаётся во флеш-памяти, а при генерации каждого токена считываются только необходимые строки; выходной слой и рабочие данные размещаются в PSRAM.

Измеренная производительность составляет около 9,5 токена в секунду с учётом вывода результатов. Модель обучена на наборе TinyStories и способна создавать лишь короткие простые рассказы: она не предназначена для диалогов, выполнения инструкций, программирования или поиска фактов.

Репозиторий содержит прошивку, код обучения и квантования, результаты экспериментов и инструкции по запуску. Исходный код распространяется по лицензии MIT.

Источник: github.com

Связь с редакцией