Ausführen von LLMs im Browser: Wie wir WebGPU und WebLLM für die datenschutzkonforme Bearbeitung von Lebensläufen verwenden
Jedes KI-gestützte Lebenslauf-Tool auf dem heutigen Markt sendet Ihre Daten an einen Server. Sie werden Ihnen sagen, dass es „sicher“ ist. Sie zeigen auf SOC 2-Compliance-Abzeichen. Aber hier ist die technische Realität: Wenn Ihr Lebenslauf Ihr Gerät verlässt, gehört er nicht mehr ausschließlich Ihnen. Er befindet sich in einer Datenbank, in einer Protokolldatei, in einer Schulungspipeline oder in einem Datenverstoß, der nur darauf wartet, passiert zu werden.
Wir weigerten uns, diesen Kompromiss zu akzeptieren. Deshalb haben wir etwas anderes entwickelt: einen vollständig clientseitigen KI-Resume-Rewriter, der mithilfe von WebGPU und Transformers.js ein Sprachmodell mit 500 Millionen Parametern direkt in Ihrem Browser ausführt. Keine API-Schlüssel. Keine Cloud-Inferenz. Kein Server.
In diesem technischen Deep Dive erfahren Sie: – Warum serverlose KI die einzige wirklich private Architektur für sensible Dokumente ist – Wie WebGPU GPU-beschleunigte Inferenz im Browser freischaltet
- Der genaue Stack, den wir verwendet haben (Astro, Transformers.js, Xenova/Qwen1.5-0.5B-Chat) – Die technischen Herausforderungen beim Versand eines 300-MB-Modells an einen Browser-Tab
- Leistungsbenchmarks und reale Latenzzahlen
Das Datenschutzparadoxon moderner KI-Tools
KI-Lebenslauf-Rewriter erfreuen sich immer größerer Beliebtheit. Tools wie Teal, Resume.io und Jobscan bieten „KI-gestütztes Umschreiben von Aufzählungszeichen“, das magisch klingt – bis Sie das Kleingedruckte lesen. Fast alle von ihnen arbeiten auf einer Client-Server-Architektur:
- Sie fügen Ihren Lebenslauf in ein Webformular ein
- Ihre Daten werden bei der Übertragung verschlüsselt (TLS)
- Es wird auf einem Cloud-Server entschlüsselt
- Eine LLM-API (OpenAI, Anthropic oder ein selbstgehostetes Modell) verarbeitet es
- Der umgeschriebene Text wird zurückgesendet
Dies sieht auf den ersten Blick sicher aus. Aber die Angriffsfläche ist riesig:
- In Serverprotokollen wird möglicherweise Ihr vollständiger Lebenslauf zum Debuggen gespeichert
- LLM-APIs von Drittanbietern können auf Ihren Daten trainieren, es sei denn, Sie zahlen für Unternehmensstufen
- Bei Datenverstößen werden Lebensläufe offengelegt, die Privatadressen, Telefonnummern, Beschäftigungshistorie und Gehaltsdaten enthalten
- Compliance-Lücken – die meisten Tools sind für EU-Benutzer nicht DSGVO-konform, da sie die Löschung nicht garantieren können
Das Fazit: Wenn Ihr Lebenslauf einen Server berührt, vertrauen Sie darauf, dass ein Dritter Ihr vertraulichstes berufliches Dokument nicht liest, protokolliert, preisgibt oder monetarisiert. Das ist keine Wette, die wir von unseren Nutzern verlangen würden.
Warum clientseitige KI alles verändert
Clientseitige KI stellt die Architektur völlig um. Anstatt Ihre Daten an das Modell zu senden, senden wir das Modell an Ihre Daten. Das LLM wird direkt in den Speicher Ihres Browsers heruntergeladen, läuft auf Ihrer lokalen GPU oder CPU und überträgt Ihren Lebenslauftext niemals von Ihrem Gerät.
Die Auswirkungen auf den Datenschutz sind absolut:
- Keine Netzwerkanrufe mit Ihren Lebenslaufdaten
- Keine Serverprotokolle mit Ihren persönlichen Daten
- Keine LLM-APIs von Drittanbietern mit undurchsichtigen Datenrichtlinien
- Kein Risiko einer Datenschutzverletzung durch unsere Infrastruktur – weil wir keine Infrastruktur haben, die Ihre Daten berührt
Aber clientseitige KI ist nicht nur eine Frage der Privatsphäre. Es bietet auch greifbare Leistungsvorteile:
- Keine Latenz durch Hin- und Rückfahrten zu einem entfernten Rechenzentrum
- Keine Ratenbeschränkungen oder API-Kontingente
- Keine Abonnement-Gates für KI-Funktionen
- Offline-Fähigkeit, sobald das Modell zwischengespeichert ist
WebGPU: Der Browser als Compute Engine
Bis vor Kurzem war die Ausführung von LLMs im Browser rechnerisch nicht möglich. WebGL war die einzige verfügbare GPU-API und wurde für Grafiken entwickelt – nicht für allgemeine Rechenaufgaben. Dann kam WebGPU.
Was ist WebGPU?
WebGPU ist ein Webstandard der nächsten Generation, der moderne GPU-Funktionen (Vulkan, Metal, DirectX 12) direkt für JavaScript bereitstellt. Im Gegensatz zu WebGL unterstützt es Allzweck-GPU-Compute-Shader und ist somit ideal für Matrix-lastige Vorgänge wie die Inferenz neuronaler Netzwerke.
Schlüsselfunktionen, die Browser-LLMs ermöglichen:
- Compute-Pipelines – Führen Sie massiv parallele Matrixmultiplikationskerne aus
- Einheitliches Speichermodell – Direkter GPU-Pufferzugriff ohne teure CPU-GPU-Kopien
- Shader-Sprachen – Schreiben Sie WGSL (WebGPU Shading Language) für benutzerdefinierte Inferenzkerne
- Plattformübergreifend – Funktioniert auf Chrome, Edge, Firefox und Safari mit nativer Leistung
WebGPU vs. WebGL für LLM-Inferenz
| Funktion | WebGL | WebGPU |
|---|---|---|
| Compute-Shader | ❌ Nein | ✅ Ja |
| Matrixoperationen | Langsam (simuliert) | Nativ, parallel |
| Speichereffizienz | Hoher CPU-GPU-Overhead | Einheitlich, geringer Overhead |
| LLM-Inferenzgeschwindigkeit | ~10-20 Token/Sek. | ~50-100 Token/Sek. |
| Browser-Unterstützung | Universell | Moderne Browser (94 %+) |
Für unseren Anwendungsfall – das Umschreiben von Lebenslaufaufzählungszeichen mit einem 500-M-Parameter-Modell – liefert WebGPU 4-5x schnellere Inferenz als ein reiner CPU-Fallback und 2-3x schneller als ein WebGL-basierter Ansatz.
Unser Stack: Astro + Transformers.js + Xenova/Qwen1.5
Der Aufbau eines clientseitigen KI-Rewriters erforderte sorgfältige Technologieauswahl. Wir brauchten ein Framework, das schnell, minimal und mit umfangreichen browserseitigen Berechnungen kompatibel ist. Hier ist die genaue Architektur, auf der wir gelandet sind.
Framework: Astro
Wir haben Astro wegen seiner Standard-Null-JS-Philosophie ausgewählt. Die meisten Lebenslauf-Tools sind aufgeblähte React-Apps, die über 500 KB JavaScript liefern, bevor der Benutzer seinen Lebenslauf überhaupt einfügen kann. Mit Astro können wir statisches HTML für die Zielseite und den Blog bereitstellen und dann nur die interaktiven Komponenten (den Editor, das KI-Panel) bei Bedarf hydrieren.
Warum Astro für die clientseitige KI wichtig ist:
- Der anfängliche Seitenladevorgang beträgt weniger als 50 KB JavaScript – Das schwere KI-Modell wird on-demand geladen, wenn der Benutzer auf „Mit KI umschreiben“ klickt.
- Kein Verwaltungsaufwand für statische Inhalte wie unseren Blog oder unsere Marketingseiten
AI-Laufzeit: Transformers.js
Hugging Face’s Transformers.js ist die Brücke, die dies ermöglicht. Es handelt sich um eine Portierung der Python Transformers-Bibliothek auf ONNX Runtime Web, die die Ausführung vorab trainierter Modelle im Browser über WebGPU- oder WebGL-Fallbacks ermöglicht.
Wichtige technische Details: – Modelle werden auf INT8 quantisiert, um Größe und Speicherbedarf zu reduzieren
- Wir verwenden das Backend ONNX Runtime Web mit einem WebGPU-Ausführungsanbieter – Die Pipeline übernimmt die End-to-End-Tokenisierung, Inferenz und Dekodierung im Browser
Modellauswahl: Xenova/Qwen1.5-0.5B-Chat
Wir haben mehrere Modelle evaluiert, bevor wir uns für Qwen1.5-0.5B-Chat über die Xenova ONNX-Ports entschieden haben:
Auswahlkriterien:
- Klein genug zum Herunterladen (ca. 300 MB quantisiert), ohne die Benutzererfahrung zu beeinträchtigen
- Strikte Anweisungsbefolgung für Aufforderungen zum „Umschreiben dieses Aufzählungszeichens, um eine größere Wirkung zu erzielen“.
- Zulässige Lizenz für kommerzielle Nutzung
- Schnelle Inferenz auf Consumer-GPUs (Generation unter 3 Sekunden für kurze Bullet-Rewrites)
Wir haben Llama-2-7B, Mistral-7B und Phi-2 getestet. Alle waren zu groß (1,5 GB+) oder zu langsam für Echtzeit-Browser-Schlussfolgerungen. Qwen1.5-0.5B ist genau das Richtige: klein genug, um praktisch zu sein, leistungsfähig genug, um nützlich zu sein.
Die technischen Herausforderungen, über die niemand spricht
Das Versenden eines 300-MB-Modells an einen Browser-Tab klingt theoretisch einfach. In der Praxis war es ein monatelanger technischer Aufwand. Hier sind die drei schwierigsten Probleme, die wir gelöst haben.
Herausforderung 1: Progressive Modell-Downloads
Ein Download von 300 MB über eine 4G-Verbindung würde 2-3 Minuten dauern und wahrscheinlich eine Zeitüberschreitung des Browsers auslösen. Wir haben ein progressives Chunked-Download-System implementiert:
– Das Modell ist in 10-MB-Shards aufgeteilt – Jeder Shard wird mit Wiederholungslogik und exponentiellem Backoff heruntergeladen
- Eine benutzerdefinierte Fortschrittsbalken-Benutzeroberfläche schwebt in der oberen rechten Ecke und zeigt die heruntergeladenen MB in Echtzeit an
- Das Modell wird nach dem ersten Download in IndexedDB zwischengespeichert, sodass nachfolgende Besuche sofort geladen werden
Ergebnis: Erstbenutzer sehen bei durchschnittlichem Breitband einen Download von ca. 45 Sekunden. Wiederkehrende Benutzer können das Modell in weniger als 2 Sekunden aus dem Cache laden.
Herausforderung 2: WebGPU-Kontext-Lebenszyklusmanagement
WebGPU-Gerätekontexte sind heikel. Wenn ein Benutzer die Tabs wechselt, den Browser minimiert oder seinen Laptop in den Ruhezustand versetzt, kann der GPU-Kontext verloren gehen. Wir mussten ein robustes Kontextwiederherstellungssystem aufbauen:
- „gpu.lost“-Ereignisse erkennen und die Inferenzpipeline ordnungsgemäß neu initialisieren – Greifen Sie auf die CPU-Inferenz (WASM) zurück, wenn WebGPU nicht verfügbar ist
- Stellen Sie klare UI-Nachrichten bereit: „Wechsel in den CPU-Modus – das Neuschreiben kann etwas länger dauern.“
Ergebnis: Der KI-Rewriter funktioniert zuverlässig in Chrome, Edge und Firefox, selbst auf Systemen mit aggressiver Energieverwaltung.
Herausforderung 3: Speicherdruck auf 8-GB-RAM-Maschinen
Ein 500-M-Parameter-Modell in INT8 verbraucht immer noch ~600 MB GPU/CPU-Speicher. In Kombination mit der PDF-Analyse, dem Rich-Text-Editor Quill und unserem Kanban-Board haben wir die Grenzen preisgünstiger Laptops überschritten.
Unsere Optimierungen:
- Lazy Loading – Das Modell wird nur heruntergeladen, wenn der Benutzer explizit auf „Umschreiben“ klickt.
- Modellentfernung – Wenn der Benutzer das AI-Panel 10 Minuten lang nicht verwendet hat, geben wir das Modell aus dem Speicher frei (es bleibt zum schnellen Neuladen in IndexedDB).
- Off-Main-Thread-Inferenz – Alle LLM-Vorgänge werden in einem Web Worker ausgeführt, um ein Einfrieren der Benutzeroberfläche zu verhindern
Ergebnis: Der Scanner läuft reibungslos auf 8-GB-RAM-Maschinen, einschließlich Chromebooks der Mittelklasse.
Leistungsbenchmarks: Reelle Zahlen
Wir haben unseren clientseitigen KI-Rewriter unter identischen Bedingungen mit cloudbasierten Alternativen verglichen. Folgendes haben wir gefunden:
| Metrisch | Unsere kundenseitige KI | Cloud-API (GPT-4o-mini) | Cloud-API (Claude Haiku) |
|---|---|---|---|
| Latenz der ersten Inferenz | 45s (Download) + 2,3s | 1,2s | 1,8s |
| Nachfolgende Inferenzlatenz | 2,3s | 1,2s | 1,8s |
| Datenschutz | Absolut (Nullnetzwerk) | Serverprotokolle + API-Aufbewahrung | Serverprotokolle + API-Aufbewahrung |
| Offlinefähig | Ja | Nein | Nein |
| Ratenlimits | Keine | Ja (RPM/TPM-Obergrenzen) | Ja (RPM/TPM-Obergrenzen) |
| Kosten für den Benutzer | Kostenlos | Abonnement für 5–20 $/Monat | Abonnement für 5–20 $/Monat |
| Dateneigentum | 100 % Benutzer | Plattformabhängig | Plattformabhängig |
Der Kompromiss ist klar: Erstbenutzer opfern etwa 45 Sekunden für den Modell-Download. Danach ist jede Neufassung kostenlos, privat, unbegrenzt und offlinefähig. Für ein Tool, das sensible Karrieredaten verarbeitet, glauben wir, dass das der richtige Kompromiss ist.
Warum diese Architektur für die Zukunft der Web-KI wichtig ist
Wir bauen nicht nur einen Lebenslaufscanner. Wir beweisen, dass die Zukunft der KI nicht die Herausgabe Ihrer Daten erfordert.
Jedes große KI-Unternehmen treibt die Cloud-Inferenz voran, weil sie profitabel ist. Aber die technischen Möglichkeiten für leistungsstarke, private, clientseitige KI sind bereits vorhanden. WebGPU ist ausgereift. Transformers.js ist produktionsbereit. Quantisierte Modelle sind überraschend leistungsfähig.
Was das für Benutzer bedeutet:
- Sie können KI-gestützte Lebenslaufhilfe erhalten, ohne Ihre Beschäftigungshistorie einem Dritten anzuvertrauen
- Sie können KI-Tools im Flugzeug-WLAN, in Unternehmens-Firewalls oder in restriktiven Netzwerken verwenden
- Sie besitzen Ihre Daten, Ihre Modellgewichte und Ihre Inferenzausgaben
Was das für Entwickler bedeutet: – Der Browser ist ein legitimes KI-Bereitstellungsziel
- Sie können anspruchsvolle NLP-Funktionen ohne API-Rechnungen erstellen
- Datenschutzorientierte Architektur ist ein Wettbewerbsunterscheidungsmerkmal und keine Einschränkung
So testen Sie unseren clientseitigen KI-Rewriter
Unser privater ATS-Scanner enthält den KI-Rewriter als integrierte Funktion. So funktioniert es:
- Laden Sie Ihren Lebenslauf hoch (PDF oder DOCX) – vollständig im Browser analysiert, nie hochgeladen
- Wählen Sie im Rich-Text-Editor ein beliebiges Aufzählungszeichen aus
- Klicken Sie auf „Mit KI umschreiben“ – das Modell wird heruntergeladen (nur beim ersten Mal) und generiert eine stärkere, schlüsselwortoptimierte Version
- Vergleichen, bearbeiten und akzeptieren Sie den Vorschlag – alles ohne einen einzigen Netzwerkanruf, der Ihre Daten überträgt
→ Probieren Sie den privaten KI-Lebenslauf-Rewriter in unserem clientseitigen Scanner aus
Wichtige Erkenntnisse
- Clientseitige KI mit WebGPU und Transformers.js ist produktionsbereit für das Umschreiben von Lebensläufen und NLP-Aufgaben
- WebGPU liefert 4-5x schnellere Inferenz als reine CPU-Ansätze und wird von über 94 % der modernen Browser unterstützt
- Ein 500-M-Parameter-Modell (Qwen1.5-0.5B-Chat) reicht für hochwertiges Bullet-Rewriting aus und bleibt dabei unter 300 MB
- Progressive Downloads, IndexedDB-Caching und Web Worker sind für die Bereitstellung großer Modelle auf Verbrauchergeräten unerlässlich
- Die Datenschutzvorteile sind absolut – keine Serverprotokolle, keine API-Aufbewahrung, kein Risiko von Datenschutzverletzungen
Der Webbrowser ist nicht mehr nur ein Dokumentbetrachter. Es handelt sich um eine sichere, private KI-Rechenumgebung. Und wir fangen gerade erst an.