Hugging Face випускає 200+ ядер WebGPU для прискорення локального AI
Hugging Face презентувала бібліотеку @huggingface/kernels з ліцензією Apache-2.0, що містить 207 версіонованих ядер WebGPU на Hugging Face Hub. Тести демонструють прискорення в середньому у 2,57 раза порівняно з ONNX Runtime Web на чипах Apple M4.

Вплив: Високий
Чому це важливо
Розробники можуть запускати браузерні моделі машинного навчання зі значно меншою затримкою, завантажуючи оптимізовані шейдери WGSL безпосередньо через npm.
TL;DR
- 01Встановлюйте @huggingface/kernels для виконання оптимізованих операцій WebGPU в браузері.
- 02Ядра забезпечують прискорення в середньому в 2,57 раза порівняно з ORT WebGPU на Apple M4.
- 03Інструмент Fleet дозволяє тестувати обладнання та передавати телеметрію швидкодії GPU.
Ключові факти
- Кількість опублікованих ядер
- 207 пакетів
- Ліцензія
- Apache-2.0
- Середнє геометричне прискорення (Apple M4)
- 2.57x порівняно з ORT WebGPU (за даними вендора)
- Медіанне прискорення (Apple M4)
- 1.90x порівняно з ORT WebGPU (за даними вендора)
Модульна дистрибуція ядер
Hugging Face випустила бібліотеку @huggingface/kernels, що містить 207 окремих операцій WebGPU на Hugging Face Hub під ліцензією Apache-2.0. Замість монолітних шейдерів кожен репозиторій ядра містить manifest.json для правил виведення форм і типів, test.json для перевірки коректності, bench.json для тюнінгу та параметризовані шаблони *.wgsl.jinja.
Бенчмарки проти ONNX Runtime Web
Тестування на GPU Apple M4 проти ONNX Runtime Web (1.30.0-dev.20260826-b1f76d586a) на 809 зіставних тестах показало такі результати:
- Прискорення за середнім геометричним: 2.57x (медіана 1.90x)
- Співвідношення результатів: 629 перемог, 176 поразок, 4 нічиї
- Білінійний Einsum (
size 4096): 0.136 мс проти 1396 мс (у понад 10 000 разів швидше) - Порядковий CumSum (
[256, 4096]): 0.016 мс проти 4.8 мс (у 301 раз швидше)
Інтеграція та платформа Fleet
Розробники можуть викликати ядра через API getKernel із явною фіксацією версії контракту (version: 1). Разом із бібліотекою представлено Fleet — браузерний інструмент для краудсорсингового тестування коректності та швидкодії на призначеному для користувача обладнанні.
Спробуй за 2 хвилини
import { getKernel } from "@huggingface/kernels";
const add = await getKernel("webgpu-kernels/ai.onnx.Add", { version: 1 });
const result = await add({
a: { shape: [2, 3], data: new Float32Array([1, 2, 3, 4, 5, 6]) },
b: { shape: [3], data: new Float32Array([10, 20, 30]) }
});javascript
✓ Коли використовувати
- Браузерний інференс моделей, генерація ембедингів та обробка комп'ютерного зору на стороні клієнта
- PWA-застосунки з автономним локальним AI без витрат на серверні API
- Розробка кастомних середовищ WebGPU, що потребують модульних оптимізованих операторів WGSL
✕ Коли НЕ варто
- Застарілі браузери або середовища без підтримки API WebGPU
- Мікротензорні операції, де накладні витрати передачі даних через шину CPU-GPU перевищують час обчислень
- Серверні застосунки на Node.js із нативною підтримкою CUDA або ROCm
Що зробити сьогодні
- Встановіть прев'ю-пакет командою npm install @huggingface/kernels@preview
- Перевірте підтримку WebGPU в браузері за допомогою перевірки 'gpu' in navigator
- Протестуйте продуктивність вашого браузерного GPU в тестовому наборі Fleet від Hugging Face
Джерела