Браузер больше не нужен: WebGPU вырвался на свободу
Если в 2024-2025 годах вы пробовали запускать LLM прямо в браузере через Transformers.js, то знаете главную боль — всё заперто в песочнице браузера. Серверный код на Python, фронтенд на JavaScript, и между ними пропасть. Команда Hugging Face только что выпустила превью Transformers.js v4, которое эту пропасть ломает пополам.
Техническая суть: Transformers.js v4 добавляет нативный WebGPU рантайм на C++ (через NAPI), который работает в Node.js 22+, Bun 2+ и Deno 2+. Больше никаких эмуляций WebGL или CPU-вычислений. Настоящий GPU-акселератор для серверного JavaScript.
Что внутри v4 Preview: не только WebGPU
Пока все обсуждают WebGPU (и правильно делают), в превью затесались и другие важные изменения. Библиотека теперь следует за основным Python-пакетом — многие фичи синхронизированы с Transformers v5.
- Полноценная поддержка ONNX Runtime — можно использовать оптимизированные ONNX-модели прямо из JavaScript
- Новая система кэширования моделей — особенно важно для серверных сред, где дисковая память дешевле оперативной
- Поддержка самых новых архитектур — включая ту самую Differential Transformer V2 от Microsoft
- Улучшенная работа с квантованными моделями — подготовка к будущему, где NVFP4 и INT4 станут стандартом
Установка: одна команда и куча предупреждений
Тут начинается самое интересное. Пакет пока в альфа-стадии, поэтому установка выглядит так:
npm install @huggingface/transformers@next
Внимание: WebGPU рантайм требует сборки нативных модулей. Убедитесь, что у вас установлены компиляторы C++ и CMake. На Windows это обычно Visual Studio Build Tools, на Linux — g++ и make.
Если сборка прошла успешно, вы получите доступ к новому модулю @huggingface/transformers-node внутри основного пакета. Именно он содержит нативные биндинги для WebGPU.
Первые тесты: в 3-5 раз быстрее CPU
Я прогнал несколько тестов на RTX 4070 Ti (12 ГБ VRAM) и Ryzen 9 7950X. Для сравнения взял модель Youtu-VL-4B-Instruct — она идеально подходит для тестов, потому что помещается в 8 ГБ VRAM даже с запасом.
| Среда выполнения | Время инференса (сек) | Использование VRAM | Заметки |
|---|---|---|---|
| Node.js + WebGPU (v4) | 0.87 | 6.2 ГБ | Стабильно, но требует warm-up |
| Node.js + CPU (v3) | 4.21 | 0 ГБ | Только оперативная память |
| Bun + WebGPU (v4) | 0.92 | 6.3 ГБ | Чуть медленнее Node.js |
| Python + PyTorch (CUDA) | 0.71 | 5.8 ГБ | Бенчмарк для сравнения |
Результаты впечатляют. WebGPU в Node.js всего на 22% медленнее нативного PyTorch с CUDA. И это первая реализация! Помните, как в 2025 году мы восхищались P2P WebGPU-раннером для LLM в браузере? Теперь та же технология, но без ограничений браузера.
С чем столкнулся: подводные камни превью
Альфа-версия есть альфа-версия. Вот что сломалось в процессе тестирования:
- Память не всегда освобождается — после 10-15 последовательных запусков VRAM утекает. Приходится перезапускать процесс.
- Только современные GPU
- Ограниченная поддержка квантованных моделей — INT8 работает, а вот с FP8 на RTX 3090 уже проблемы.
- Документация отстает — многие примеры из v3 не работают, новые API пока плохо описаны.
Кому это нужно прямо сейчас?
Transformers.js v4 Preview — не для всех. Но есть три категории разработчиков, которые должны попробовать его сегодня:
- Full-stack команды с единым JS-стеком — когда весь проект на Node.js/TypeScript, а поднимать Python-микросервис только для ИИ слишком дорого.
- Разработчики CLI-утилит — представьте себе аналог Ollama, но написанный на JavaScript и работающий в 3 раза быстрее.
- Облачные провайдеры — возможность запускать GPU-инференс в serverless-функциях на Node.js меняет экономику. AWS Lambda с GPU? Почему бы и нет.
Особенно интересно выглядит интеграция с техниками запуска больших моделей на малой VRAM. Теперь эти техники можно применять не только в браузере, но и на сервере.
Что дальше? Прогноз на 2026-2027
Transformers.js v4 — это не просто обновление. Это сигнал: JavaScript-экосистема серьезно берется за машинное обучение. Что будет дальше?
- Конкуренция с ONNX Runtime — WebGPU может стать более легковесной альтернативой для инференса.
- Стандартизация API — сейчас каждый фреймворк делает по-своему. Transformers.js может задать тренд.
- Поддержка распределенных вычислений — представьте себе гибридные GPU-связки, но управляемые из JavaScript.
Самое важное: если v4 выйдет в стабильной версии к середине 2026 года, мы увидим массовый переход серверных ИИ-приложений с Python на JavaScript/TypeScript. Не полностью, конечно, но для микросервисов инференса — точно.
Стоит ли пробовать сегодня?
Да, если вы готовы к боли альфа-версии. Нет, если вам нужно стабильное production-решение.
Установите через @next, попробуйте запустить простую модель (например, sentence-transformers/all-MiniLM-L6-v2), проверьте скорость. Если работает — экспериментируйте с более сложными моделями. Если ломается — подождите пару месяцев. Команда Hugging Face активно фиксит баги, судя по активности в репозитории.
Лично я поставлю на то, что к концу 2026 года Transformers.js с WebGPU станет стандартным способом запуска моделей в Node.js-экосистеме. А пока... пока можно просто наблюдать, как технология, которая начиналась в браузере, захватывает серверный мир.