Web-Apps smarter machen mit offlinefähigen KI-Modellen, WebGPU und WebNN
Braucht es für KI-Funktionen immer die Cloud? Nicht zwingend, denn KI-Modelle laufen auch direkt im Browser – gute Performance und viel Speicher vorausgesetzt.
- Christian Liebel
Künstliche Intelligenz (KI) ist in aller Munde: Keine Woche vergeht ohne die Ankündigung eines neuen Produkts, Chatbots oder eines verbesserten KI-Modells. Zeitgleich hält generative KI in die großen Produktivitätsanwendungen Einzug: Adobe Photoshop erlaubt das Ersetzen von Objekten in einem Bild per einfacher Texteingabe und in Office und Windows steht der Microsoft Copilot dem Anwender zur Seite. Kein Wunder, dass auch viele Anwendungsentwickler derzeit beabsichtigen, generative KI in die eigene Anwendung zu bringen.
Das Web ist auf den KI-Trend vorbereitet
Bislang fĂĽhrt dieser Weg fast ausschlieĂźlich in die Cloud. Alle groĂźen Cloudanbieter halten einfach verwendbare Schnittstellen bereit, um KI-Funktionen in die eigenen Anwendungen zu integrieren.
Doch das muss nicht zwingend so sein: Der KI-Trend hat auch das World Wide Web erreicht. Fast zeitgleich zum Hype wurde mit Chromium 113 (April 2023) die Schnittstelle WebGPU unter Windows und macOS verfĂĽgbar gemacht. Diese API gibt Webanwendungen einen Low-Level-Zugriff auf die Graphics Processing Unit (GPU) des Systems, die sich nicht nur fĂĽr Grafikanwendungen, sondern auch fĂĽr die erforderlichen Berechnungen im Bereich Machine Learning (ML) gut eignet. DarĂĽber lassen sich ML-Modelle effizient im Browser ausfĂĽhren.
Zwei Showcases von Machine Learning Compilation machen von dieser Schnittstelle bereits Gebrauch:
- WebLLM bringt Large Language Models (LLM) in den Browser, etwa um Chatbots auf eigenen Daten zu implementieren. Zur Auswahl stehen etwa Metas Open-Source-Modell LLaMA 2 und das darauf basierende Modell Vicuna.
- WebSD bringt das Stable-Diffusion-Modell in den Browser, damit lassen sich Bilder auf Basis von Texteingaben erzeugen – so wie bei Photoshop.
Beide Showcases sind quelloffen, im Falle von WebLLM gibt es sogar das npm-Paket @mlc-ai/web-llm, das Entwickler in die eigene App integrieren können.
Hoher Datenschutz, hohe Systemanforderungen
In beiden Fällen müssen die KI-Modelle zuerst auf das Endanwendergerät übertragen werden. Diese Modelle sind allerdings mehrere Gigabyte groß, sodass eine schnelle Internetverbindung ebemso erforderlich ist wie ausreichend viel Speicherplatz. Auch die Ausführung des Modells ist anspruchsvoll, setzt viel Arbeitsspeicher und Rechenleistung voraus.
Im Gegenzug sind die Modelle nach dem initialen Download auch offline oder bei unzuverlässiger Internetverbindung verfügbar. Die Daten verlassen das Gerät des Anwenders zudem nicht, sodass sich dieser Ansatz auch für kritische Daten eignet. Ferner fallen keine Kosten an, da die Modelle quelloffen sind. Allerdings sind kommerzielle Modelle wie OpenAI GPT-4 noch deutlich leistungsfähiger. Doch auch in diesem Bereich tut sich viel, und Open-Source-Modelle werden kontinuierlich besser – und kleiner.
WebNN wird die Performance noch weiter erhöhen
Mit WebGPU ist das Ende der Fahnenstange zudem noch nicht erreicht: Die Web Neural Network API (WebNN) befindet sich derzeit beim World Wide Web Consortium (W3C) in Spezifikation. Diese Schnittstelle wird die Ausführung von Machine-Learning-Modellen im Webbrowser noch einmal beschleunigen, indem sie Webanwendungen zusätzlich Zugriff auf die plattformspezifischen ML-Schnittstellen und somit auf die Neural Processing Unit (NPU) gewähren, sofern diese auf der Zielplattform verfügbar sind.
KI im Browser steht am Anfang, wird aber relevanter
Schon heute lassen sich anspruchsvolle KI-Modelle direkt im Webbrowser verwenden. In Kombination mit den übrigen Schnittstellen aus dem Umfeld der Progressive Web Apps lassen sich damit komplett offlinefähige KI-Webanwendungen bauen. Zweifelsohne steht diese Entwicklung aber noch ziemlich am Anfang: So befindet sich WebGPU in WebKit (Safari) und Gecko (Firefox) noch in Implementierung; auch in Chromium-basierten Browsern ist die Schnittstelle unter Android und Linux noch nicht verfügbar. WebNN ist noch in keinem Browser nutzbar.
KI in Webanwendungen dürfte aber zunehmend an Relevanz gewinnen: Zu viele Anwendungsfälle lassen sich mit klassischer regelbasierter Entwicklung nicht sinnvoll abdecken. Das Web geht dieser Entwicklung jedenfalls vorbereitet entgegen.
(rme)