Met WebGPU kan een webpagina AI-modellen rechtstreeks op de grafische chip van je eigen apparaat laten rekenen: zonder server, zonder API-kosten en zonder dat je data het apparaat verlaat. Dat werkt nu goed voor compacte modellen voor tekstclassificatie, spraakherkenning en vertaling; grote redeneermodellen horen nog in de cloud.
Tot voor kort had je voor een chatbot in een webapplicatie altijd een backend nodig. Die draaide de API-calls naar OpenAI, Anthropic of een andere aanbieder, beheerde de sleutels, schreef de logs en stuurde de resultaten terug. Drie lagen voor iets wat voelt als een simpele “geef me een antwoord”-loop. Dat verschuift, al geldt het nog niet voor elke taak of elk apparaat.
Update 25 september 2026We hebben het browseroverzicht en een passage over WebLLM-metingen gecorrigeerd: Firefox zette WebGPU op Windows al in juli 2025 aan (versie 141), en Apple spreekt van iOS 26 en iPadOS 26, zonder “Tahoe” (bron). Op 9 februari 2026 verscheen Transformers.js v4, met een herschreven WebGPU-runtime en het pakket
@huggingface/transformers(bron); het codevoorbeeld is aangepast en de actuele stand staat onderaan.
Wat maakt dit nu mogelijk?
Drie ontwikkelingen die in 2024 en 2025 samenkwamen.
WebGPU is de GPU-API die browsers pas recent écht breed ondersteunen. Chrome en Edge hadden het als eerste (versie 113, in 2023), Firefox volgde in juli 2025 op Windows (versie 141) en in november 2025 op Apple Silicon-Macs (versie 145), en Safari rolde het uit met macOS Tahoe 26, iOS 26 en iPadOS 26. Sinds november 2025 staat WebGPU daarmee standaard aan in alle grote browsers, al nog niet op elk platform. (Bron: web.dev) Daarvoor had je met WebGL of WebAssembly een compromis op het gebied van GPU-prestaties. WebGPU is een laag dichter bij de echte grafische driver, vergelijkbaar met hoe Vulkan of Metal dichter bij de hardware zit dan OpenGL. Voor matrixoperaties, precies wat neurale netwerken nodig hebben, maakt dat een merkbaar verschil.
Welke browser WebGPU op welk platform ondersteunt, staat in de tabel onder Stand van zaken onderaan dit artikel.
ONNX Runtime Web is de JavaScript-port van Microsoft’s inferentie-runtime. Hij ondersteunt WebGPU, WebGL, WebNN en als fallback WebAssembly, en kiest automatisch de snelste beschikbare optie. (Bron: Microsoft Open Source Blog) Een gebruiker met een moderne GPU krijgt de snelle route; iemand op een oudere telefoon valt terug op WASM. Die graceful degradation is een van de redenen waarom ONNX Runtime Web de de-facto basis is geworden voor browser-gebaseerde ML-tooling.
Kleine, geoptimaliseerde modellen in ONNX-formaat. Hugging Face heeft inmiddels duizenden modellen beschikbaar die direct te laden zijn met Transformers.js — geconverteerd, gekwantiseerd en klaar voor browsergebruik. Modellen van 100–500 MB laden in seconden en draaien daarna volledig offline.
De twee toolkits die het verschil maken
Transformers.js van Hugging Face is het meest complete startpunt voor de meeste use cases. De API lijkt bewust sterk op de Python-library, zodat je bestaande pipelines kunt omzetten zonder alles opnieuw te leren. Ondersteunde taken: tekst-classificatie, samenvatting, vertaling, named entity recognition, vraag-en-antwoord, beeldclassificatie, objectdetectie, automatische spraakherkenning en meer. (Bron: Hugging Face)
Een typische initialisatie ziet er zo uit (sinds versie 3 heet het pakket @huggingface/transformers; het oude @xenova/transformers bleef in 2024 op versie 2.17 staan):
import { pipeline } from '@huggingface/transformers';
const classifier = await pipeline('sentiment-analysis');
const result = await classifier('Dit werkt verrassend goed.');
Het model wordt de eerste keer gedownload en daarna gecached in de browser. Herlaad de pagina, en inferentie start direct zonder nieuw netwerkverzoek.
WebLLM van MLC AI richt zich op iets ambitieuzers: volledige taalmodellen in de browser. De bibliotheek gebruikt geoptimaliseerde WebGPU-kernels via de MLC-LLM compiler en Apache TVM, en bereikt daarmee tot 80% van de native prestatie op hetzelfde apparaat, volgens het onderzoekspaper van de makers (preprint op arXiv, december 2024). (Bron: arXiv) De API is OpenAI-compatibel, wat betekent dat bestaande chatbot-code met kleine aanpassingen draait op een lokaal 7B-model in de browser.
GevorderdenWebLLM haalt die prestaties met WebGPU-kernels die de MLC-LLM-compiler en Apache TVM per model optimaliseren, in combinatie met gekwantiseerde gewichten. Wil je benchmarken op je eigen hardware: bij elk antwoord geeft WebLLM in
usage.extraonder meer de prefill- en decodesnelheid (tokens per seconde) en de tijd tot het eerste token terug. Zo zie je snel of een model vlot genoeg draait op de apparaten van je doelgroep.
Waar de grens ligt
De beperking is modelgrootte, en die is reëel. Een 7B-model vraagt in gecomprimeerde vorm nog altijd 3–4 GB download en genoeg GPU-geheugen om de berekeningen parallel te houden. Op een moderne laptop met Apple Silicon of een recente NVIDIA-GPU is dat haalbaar; op een gemiddelde Android-telefoon of een drie jaar oude werklaptop niet. Al schuift ook die grens: met extreme quantisatie past inmiddels een 27B-model in 3,9 GB — klein genoeg voor een iPhone.
De praktische indeling voor productiegebruik: voor NLP-taken op tekst (classificatie, extractie, korte samenvatting) zijn compacte ONNX-modellen van 50–300 MB prima. Voor spraakherkenning via Whisper-varianten is 200–400 MB realistisch. Voor volledige chatinteractie met een 7B-model heb je hardware nodig die niet iedereen in je gebruikersgroep heeft.
Dit maakt client-side AI ook iets anders dan wat Ollama doet op je eigen machine: Ollama draait op hardware die jij volledig controleert, met je bestandssysteem en volledige GPU-geheugen beschikbaar. Een browser draait op hardware van een bezoeker, met de beperkingen van de sandbox. Het zit er tussenin — en dat is soms precies de juiste plek. Hoever je die eigen-hardware-route kunt doortrekken, laat de hardwaregids van Bitcoin-ontwikkelaar James O’Beirne zien: van een tweedehands GPU-setje tot een workstation die met cloud-topmodellen concurreert.
GevorderdenONNX Runtime Web kiest automatisch de snelste execution provider, maar je kunt forceren via
{ executionProviders: ['webgpu'] }of['wasm']. WebGPU wint op grotere modellen dankzij GPU-parallellisatie; WASM kan sneller zijn op kleine modellen doordat het GPU-initialisatieoverhead vermijdt. Test op je concrete model- en hardwarecombinatie voordat je de provider vastlegt.
Waarom privacy hier het echte argument is
Kosten zijn een valide argument: geen API-calls betekent geen token-factuur. Latency ook: zonder netwerkround-trip reageert een simpele classificatie in tientallen milliseconden.
Maar het sterkste argument is architectureel van aard. Als de inferentie client-side draait, verlaat de data het apparaat niet. Dat is geen privacybeleid dat morgen kan worden aangepast of een verwerkingsovereenkomst die je kunt tekenen; het is een technische eigenschap van hoe het systeem gebouwd is. Precies daar zit ook het verschil met een vendor-belofte: wat je zelf kunt afdwingen op je apparaat, hoef je niet aan een leverancier te vragen. Het incident waarbij xAI’s Grok CLI standaard hele codebases (en soms de home directory) naar Google Cloud uploadde is precies zo’n moment waarop client-side de duidelijkere garantie geeft. Een offline vertaaltool voor vertrouwelijke contracten, een classificatiemodel dat medische notities tagt, een chatbot die juridische documenten verwerkt: voor die use cases geeft client-side AI een garantie die een cloud-API structureel niet kan geven. Het spiegelbeeld bestaat overigens ook: met homomorfe encryptie rekent een cloud-server op je data zonder die ooit te kunnen lezen. En wie de afhankelijkheid van Amerikaanse aanbieders principiëler wil oplossen, volgt GPT-NL, het soevereine Nederlandse taalmodel.
In een bredere context: een inferentie die plaatsvindt op hardware die de gebruiker al bezit en die al betaald is, verbruikt geen datacenter-capaciteit. Dat is ook relevant als je weet hoe energie-intensief cloud-inferentie is — het dagelijkse gebruik van AI-modellen is verantwoordelijk voor 80 tot 90% van het totale AI-energieverbruik (onze analyse van het VN-rapport).
Wanneer het nu al bruikbaar is
De use cases die nu in productie werken voor een brede gebruikersgroep: automatische spraakherkenning (Whisper-klein) voor lokale transcriptie waarbij de audio het apparaat niet mag verlaten; sentimentanalyse en intent-classificatie op klantfeedback; zero-shot document-tagging; vertaling van en naar de meeste grote talen zonder externe API-afhankelijkheid; beeldclassificatie voor eenvoudige visuele controles.
Wat minder stabiel is: lange gesprekken met grote taalmodellen (sterk hardware-afhankelijk), complexe meertalige taken met hoge nauwkeurigheidseisen, en alles waar je de redeneer-diepte van een frontier-model nodig hebt.
De architectuurkeuze wordt daarmee preciezer dan “cloud of browser”: welk deel van de pipeline staat geen netwerk-hop toe, hoe klein kan het model daarvoor zijn, en wat is het minimale apparaat in je gebruikersgroep? Dat is een andere afweging dan in 2024, toen het antwoord simpelweg “alles gaat naar de API” was.
Voor meer context over hoe inferentie technisch werkt en waarom de locatie ervan zoveel bepaalt voor kosten en latency: onze uitleg van AI-inferentie. En als je wilt weten welke open-source modellen klein genoeg zijn om als basis voor browser-inferentie te dienen: onze stand van open-source AI in 2026. Let op het verschil: dit gaat over modellen die lokaal ín je browser draaien; de AI-assistenten die je browser namens jou bedienen zijn een ander verhaal, dat we uitwerken in AI-browsers vergeleken. Aan de zware kant van het spectrum, waar rekenkracht er wél toe doet, laat Cognition’s nieuwe coding-model SWE-2 zien hoe ver gespecialiseerde cloud-modellen inmiddels gaan.
Stand van zaken — bijgewerkt 2026-09-25
De uitleg hierboven blijft staan, welke browserversie je ook draait. De versies en platformen hieronder zijn de bederfelijke laag; die werken we hier bij.
| Onderwerp | Stand |
|---|---|
| Chrome / Edge (desktop) | Standaard sinds versie 113 op Windows, macOS en ChromeOS; op Linux sinds versie 144 voor Intel Gen12+ en sinds 147 voor NVIDIA onder Wayland, andere configuraties nog achter een vlag |
| Chrome (Android) | Sinds versie 121 op Android 12+ met Qualcomm- en ARM-GPU’s |
| Firefox | Windows sinds versie 141 (juli 2025); Apple Silicon-Macs sinds versie 145 (macOS 26) en 147 (alle macOS-versies); Linux en Android nog niet standaard |
| Safari | Sinds versie 26 op macOS Tahoe 26, iOS 26, iPadOS 26 en visionOS 26 |
| Transformers.js | Versie 4 (9 februari 2026), pakket @huggingface/transformers, met herschreven WebGPU-runtime en ondersteuning voor modellen boven 8 miljard parameters |
| WebLLM | OpenAI-compatibele API; tot 80% van de native prestatie volgens het paper van december 2024 |
Peildatum 25 september 2026, op basis van WebGPU Implementation Status, web.dev en Hugging Face.
