Nnets [Neural Networks] — старейший в России культовый ИИ-журнал о нейросетях, искусственном интеллекте и роботах.

Ежедневные новости и аналитика нейромира.

Авторские материалы, исследования, обзоры и подборки.

Будущее уже здесь!

SonicBoom: движок инференса без Python от HardenedVault.

Компания HardenedVault, которая специализируется на безопасности Linux и компиляторов, представила среду исполнения SonicBoom. Движок написан с нуля на C++ и CUDA, и Python не требуется ни для работы, ни для сборки.

Цель проекта: локальный запуск языковых моделей на потребительских видеокартах.

Все компоненты упакованы в одну библиотеку libsonicboom.so. Её можно подключить из любого языка через стандартный интерфейс C. Основным языком для работы с SonicBoom авторы выбрали Scheme в реализации GNU Guile.

SonicBoom загружает модели в формате GGUF, генерирует текст на процессоре или видеокарте и поднимает локальный сервер, совместимый с API OpenAI.

Если новый запрос начинается с того же текста, что и предыдущий, повторно обрабатывается только добавленная часть. При этом результат до токена совпадает с полным пересчётом.

Механика

Скорость вывода обеспечивают уровни над вычислительными ядрами, а не сами ядра. Умножение квантованных матриц и токенизаторы частично перенесены из llama.cpp.

Над ними работает планировщик. До запуска он переписывает граф модели целиком, сливает соседние операции и записывает весь шаг генерации токена в один CUDA Graph, то есть в готовую последовательность команд для видеокарты.

Ещё выше находится компилятор на базе MLIR. Он сам генерирует часть ядер для GPU, включая механизм внимания, и при первом запуске подбирает самый быстрый вариант под конкретную видеокарту.

Тесты

На RTX 3050 с 8 ГБ памяти сравнивали SonicBoom и llama.cpp на одних и тех же моделях. Gemma 4 E4B через SonicBoom показала 53 токена в секунду против 44,8 у llama.cpp. У Qwen2.5-0.5B получилось 344,7 токена в секунду против 307,6.

Когда контекст дорастает до 512 токенов, SonicBoom на Qwen уже немного отстаёт. Единственный сторонний результат на RTX 4060 Ti оказался хуже llama.cpp: 73,6 токена в секунду против 78. Однако его получили на сборке, которая ещё не была настроена под эту видеокарту.

Пока проверены только две модели: Gemma 4 E4B-it и Qwen2.5-0.5B-Instruct, а также только видеокарты серии RTX 30.

Модель всегда выбирает самый вероятный токен. Температуру и другие настройки случайности задать нельзя.

Планы

  • модели Llama и Mistral;
  • работа через Vulkan;
  • генерация ядер для видеокарт других производителей;
  • диффузионные модели.

В будущем SonicBoom может вырасти в фреймворк в духе PyTorch, где модель пишут на Scheme и компилируют в граф вычислений. Прототип этого режима уже обучает небольшой трансформер.

Лицензирование: GPL-3.0.

Репозиторий проекта доступен на GitHub.

Этот пост Вконтакте:

Ещё новости:

Появился словарь слов, которых ещё нет, но они скоро понадобятся.
Превращаем обычное фото в выразительный арт-постер с помощью нейросети.
Старый ноутбук MSI стал настенным сервером умного дома благодаря Claude.
Google Meet научился переводить речь на 63 языка в реальном времени.
В США компания Tau Robotics запустила подписку на домашних роботов-уборщиков!
Роботы с ИИ протыкают рыбам мозг ради вкуса: странный стартап Shinkei поддержал Питер Тиль.
Хоакин Феникс снялся в тизере умных очков Gentle Monster с Gemini от Google.
ИИ может выдавать разные результаты даже при одинаковом обучении: учёные нашли причину.
OpenAI добавила поддержку исходящих телефонных звонков в GPT-Live API.
Pydantic AI: как исключения ModelRetry и ToolFailed управляют поведением модели.