- Handy ist eine kostenlose Open-Source-Desktop-App zur Umwandlung von Sprache in Text, die vollständig offline arbeitet und auf Datenschutz ausgelegt ist
- Sie wurde auf Basis von Tauri (Rust + React/TypeScript) entwickelt: Drückt man eine Tastenkombination und spricht, wird die Sprache direkt in ein Textfeld eingegeben
- Unterstützt die Modelle Whisper und Parakeet V3 und führt die Spracherkennung lokal per GPU-Beschleunigung oder CPU aus
- Läuft auf Windows, macOS und Linux und wurde mit Fokus auf Erweiterbarkeit und einfaches Forken entwickelt, um Beiträge von Entwickler:innen zu fördern
- Als datenschutzorientiertes Spracheingabe-Tool, das ohne Cloud-Übertragung lokal verarbeitet, bietet es hohe Zugänglichkeit und gute Anpassbarkeit
Überblick
- Handy ist eine kostenlose, Open-Source- und erweiterbare Spracherkennungsanwendung, die ohne Internetverbindung vollständig offline funktioniert
- Sie basiert auf dem Tauri-Framework und kombiniert ein Rust-Backend mit einem React/TypeScript-Frontend
- Nutzer:innen drücken eine Tastenkombination, sprechen und lassen sie los; anschließend wandelt das Modell Whisper oder Parakeet V3 die Sprache in Text um und fügt ihn in die aktuell genutzte App ein
- Alle Sprachdaten werden lokal verarbeitet, sodass kein Risiko eines Abflusses persönlicher Daten besteht
Die Philosophie von Handy
- Kostenlos: Accessibility-Tools sollten für alle nutzbar sein
- Open Source: Jede:r kann Funktionen erweitern und verbessern
- Datenschutz: Sprachdaten werden nicht in die Cloud übertragen
- Einfachheit: Fokus auf genau einen Zweck, nämlich Sprache in Text umzuwandeln
- Das Ziel ist nicht, die „perfekteste“ App zu bauen, sondern die „am einfachsten zu forkende“ App
Funktionsweise
- Nutzer:innen können die Aufnahme per Tastenkombination starten und stoppen oder den Push-to-Talk-Modus verwenden
- Mit Silero VAD werden stille Abschnitte herausgefiltert, danach wird Sprache mit Whisper oder Parakeet V3 umgewandelt
- Whisper-Modelle: Small, Medium, Turbo und Large, mit Unterstützung für GPU-Beschleunigung
- Parakeet V3: für CPU optimiert, inklusive automatischer Spracherkennung
- Der umgewandelte Text wird automatisch in das Eingabefeld der verwendeten Anwendung eingefügt
- Unterstützt Windows, macOS und Linux
Architektur
- Frontend: React + TypeScript + Tailwind CSS
- Backend: Rust-basiert, zuständig für Audioverarbeitung und Machine-Learning-Inferenz
- Zentrale Bibliotheken
whisper-rs: lokale Spracherkennung mit Whisper-Modellen
transcription-rs: CPU-Erkennung mit dem Parakeet-Modell
cpal: Audio-Ein-/Ausgabe
vad-rs: Voice Activity Detection
rdev: globale Tastenkombinationen und Verarbeitung von Systemereignissen
rubato: Audio-Resampling
- Debug-Modus: erreichbar mit
Cmd+Shift+D (macOS) oder Ctrl+Shift+D (Windows/Linux)
Bekannte Probleme und Einschränkungen
- Whisper-Modellabstürze: In einigen Windows-/Linux-Umgebungen kommt es zu Abstürzen der Modelle
- Eingeschränkte Wayland-Unterstützung: Unter Linux mit Wayland müssen
wtype oder dotool installiert werden
- Tools zur Texteingabe
- X11:
xdotool
- Wayland:
wtype oder dotool
- Wenn diese Tools nicht installiert sind, wird auf
enigo ausgewichen, allerdings mit eingeschränkter Kompatibilität
- Linux-Overlay standardmäßig deaktiviert: Um Fokuskonflikte zu vermeiden, ist es standardmäßig ausgeschaltet
Systemanforderungen
- Für Whisper-Modelle
- macOS: M-Serie oder Intel Mac
- Windows/Linux: Intel-, AMD- oder NVIDIA-GPU (Ubuntu 22.04/24.04 empfohlen)
- Für Parakeet V3-Modelle
- Nur CPU, empfohlen wird Intel Skylake (6. Generation) oder neuer
- Auf Hardware der Mittelklasse etwa 5× Echtzeitgeschwindigkeit
- Inklusive automatischer Spracherkennung
Entwicklungs-Roadmap
- Funktionen in Arbeit
- Hinzufügen einer Debug-Log-Datei
- Verbesserungen der macOS-Tastenkombinationen (Unterstützung für die Globe-Taste, Neuschreiben der Verarbeitung globaler Tastenkombinationen)
- Optionale Analytics-Funktion: anonyme Erfassung von Nutzungsdaten auf Basis ausdrücklicher Zustimmung
- Refactoring des Einstellungssystems und Verbesserung der Abstraktion
- Bereinigung der Tauri-Befehlsstruktur und Verbesserung der Typsicherheit
Fehlerbehebung und manuelle Modellinstallation
- In Umgebungen mit Netzwerkeinschränkungen können Modelle manuell heruntergeladen und installiert werden
- Im App-Datenverzeichnis einen Ordner
models erstellen und dort die Modelldateien ablegen
- Whisper-Modelle:
.bin-Dateien direkt kopieren
- Parakeet-Modelle:
.tar.gz entpacken und den vorgesehenen Ordnernamen beibehalten
- Nach der Installation werden die Modelle beim Neustart der App automatisch erkannt
So kann man beitragen
- GitHub-Issues prüfen, dann forken und einen Branch erstellen
- Nach ausreichenden Tests auf der Zielplattform einen Pull Request einreichen
- Beteiligung an der Community per E-Mail (contact@handy.computer) oder über Discord möglich
- Ziel ist es, mit einer einfachen und gut strukturierten Codebasis eine Grundlage bereitzustellen, die von der Community weiterentwickelt werden kann
Verwandte Projekte und Lizenz
- Handy CLI: Python-basierte Kommandozeilenversion
- handy.computer: offizielle Website mit Demo
- Veröffentlicht unter der MIT-Lizenz
- Basiert auf Open-Source-Projekten wie Whisper (OpenAI), Silero und Tauri
Zitat
- „Mit Handy kannst du die Suche nach einem Spracherkennungstool beenden – nicht weil es perfekt ist, sondern weil du es perfekt machen kannst.“
Noch keine Kommentare.