Компиляция весов в WebAssembly: инференс в браузере без облака
Проект использовал статическую компиляцию весов и вычислительного графика в формат WASM, исключив необходимость в загрузке больших файлов во время работы. Инференс происходит полностью на машине пользователя, в изолированной среде браузера.
Размер скомпилированного артефакта занимает 2–3 ГБ в зависимости от квантизации, что остаётся практичным для локального кеша браузера с использованием IndexedDB. Первый запуск требует одноразовой загрузки, последующие обращаются к кешированным весам.
Конфиденциальность и производительность
Текст запроса и ответ остаются полностью на стороне пользователя, что исключает возможность утечки данных через облако. Производительность инференса в браузере достаточна для интерактивного режима на процессорах с векторными инструкциями.
Закрытые системы требуют отправки данных на удалённый сервер, где они могут быть залогированы или использованы в целях, не соответствующих интересам пользователя. Открытые модели в браузере устраняют эту проблему на уровне архитектуры.
Несколько браузерных проектов уже выпустили рабочие версии, включая интеграции с Vue и React. Сообщество продолжает оптимизировать размер моделей и скорость выполнения.