WebAssembly

Binarny format kodu wykonywanego przez przeglądarkę z wydajnością zbliżoną do natywnej. Dla modeli AI pełni rolę ścieżki zapasowej tam, gdzie nie ma dostępu do karty graficznej — wolniejszej od WebGPU, ale działającej praktycznie wszędzie.

W Polsce nazywane też:

WebAssemblyWASMkod binarny w przeglądarce

JavaScript jest wygodny i zbyt wolny do liczenia. WebAssembly powstało po to, żeby przeglądarka mogła wykonywać kod przygotowany wcześniej, blisko prędkości natywnej.

Czym jest WebAssembly

WebAssembly to binarny format instrukcji wykonywany przez środowisko uruchomieniowe przeglądarki, będący celem kompilacji dla języków takich jak C, C++ czy Rust. Działa w piaskownicy, na tych samych zasadach bezpieczeństwa co reszta strony, i osiąga wydajność zbliżoną do kodu natywnego.

Rola przy modelach AI

Biblioteki inferencyjne kompiluje się do WASM, dzięki czemu ten sam silnik napisany w C++ działa w przeglądarce bez przepisywania. Rozszerzenie SIMD, pozwalające wykonywać jedną operację na wielu liczbach naraz, dodatkowo przyspiesza mnożenie macierzy.

Wobec WebGPU

WASM liczy na procesorze, WebGPU na karcie graficznej. Przy modelach językowych różnica jest zwykle rzędu dziesięciokrotnej i wynika wprost z liczby rdzeni oraz przepustowości pamięci.

Przy małych modelach — embeddingach, klasyfikatorach, rozpoznawaniu mowy — różnica bywa nieistotna, bo zadanie kończy się i tak w ułamku sekundy.

Dlaczego warto go mieć mimo wszystko

Bo działa wszędzie. WASM jest wspierany przez wszystkie liczące się przeglądarki od lat, niezależnie od systemu operacyjnego i sterowników graficznych. WebGPU takiej gwarancji nie daje.

Właściwa architektura funkcji opartej na lokalnym modelu to zatem WebGPU jako ścieżka podstawowa i WASM jako zapasowa — a nie odwrotnie i nie tylko jedna z nich.