Энтузиаст Бинь Фам (Binh Pham) создал USB-устройство на основе одноплатного компьютера Raspberry Pi Zero, на котором локально запускается большая языковая модель искусственного интеллекта, генерирующая художественные тексты.

Источник изображения: youtube.com/@build_with_binh
Программную часть проекта автор разработал с помощью библиотеки llama.cpp и утилиты llamafile — они предназначены для вывода больших языковых моделей ИИ. Это оказалось непростой задачей, поскольку у Raspberry Pi Zero всего 512 Мбайт оперативной памяти и процессор с устаревшей архитектурой ARMv6, что помешало компиляции проекта в исходном варианте. Чтобы обойти эти ограничения, энтузиасту пришлось преобразовать оптимизированный для ARMv8 набор инструкций в llama.cpp и удалить оттуда все нотации и механизмы оптимизации, предназначенные для современного оборудования.
Сам одноплатный компьютер Raspberry Pi Zero и плату расширения с разъёмом USB для подключения к современным компьютерам Бинь Фам поместил в распечатанный на 3D-принтере корпус. Из-за скромных вычислительных ресурсов пришлось ограничить контекст 64 токенами и использовать модели, содержащие от 15 млн до 136 млн параметров. Самая маленькая — Tiny15M — показала максимальную скорость среди всех протестированных моделей: 223 мс на токен. Для Lamini-T5-Flan-77M этот показатель составил 2,5 с на токен, а для SmolLM2-136M — 2,2 с на токен.
При такой скорости работы устройство трудно назвать практичным, но автор проекта решил не останавливаться на достигнутом. Он посчитал, что управлять ИИ через интерфейс командной строки недостаточно удобно, и предложил более комфортный способ. Чтобы отправить запрос, пользователю необходимо создать в указанном расположении пустой текстовый файл, имя которого служит запросом к модели. Обнаружив файл, система отправляет запрос к ИИ и записывает его ответ в содержимое того же файла.
Своим проектом Бинь Фам решил показать, каким может стать взаимодействие с локальными моделями ИИ в будущем.
Источник: