NEWS
Test Adapter ai-parakeet v0.1.x – lokale Spracherkennung
-
Aktuelle Test Version 0.1.4 Veröffentlichungsdatum 09.11.2026 Github Link https://github.com/ioBroker/ioBroker.ai-parakeet Fehler und Wünsche https://github.com/ioBroker/ioBroker.ai-parakeet/issues Hallo zusammen,
der neue Adapter ai-parakeet bringt Spracherkennung auf den ioBroker-Host. Das Modell NVIDIA Parakeet TDT 0.6B v3 läuft dort auf der CPU, ohne Cloud, ohne Grafikkarte und ohne Docker. Die Sprachaufnahmen bleiben im eigenen Netz.
Der Adapter geht auf den Technologie-Test von @OliverIO zurück.
Ich suche Tester, vor allem auf unterschiedlicher Hardware.
Was der Adapter macht
- erkennt 25 europäische Sprachen und bestimmt die Sprache selbst, mit Satzzeichen und Groß-/Kleinschreibung
- bietet die OpenAI-kompatible API
POST /v1/audio/transcriptions. Was die Whisper-API von OpenAI nutzen kann, kann auch diesen Adapter nutzen, z. B. ioBroker.assistant - transkribiert per
sendToaus Skripten, z. B. Sprachnachrichten - zeigt im Reiter "Live-Test" der Instanz-Einstellungen den erkannten Text live an. Dazu gibt es eine Testseite im Browser
- ersetzt mit einem Korrekturwörterbuch Wörter, die das Modell regelmäßig falsch erkennt
Was er nicht macht: Er übersetzt nicht, Parakeet transkribiert nur. Er ist auch kein Sprachassistent: Die Aufnahme und das Ausführen der Befehle bleiben Sache von ioBroker.assistant oder eines eigenen Skripts.
Voraussetzungen
- 64-Bit Linux, Windows oder macOS (x64 oder arm64), 32-Bit-Systeme werden nicht unterstützt
- Node.js 22.19 oder neuer, js-controller 6 oder neuer, admin 7.6.20 oder neuer
- Der Reiter "Live-Test" braucht admin 8.3.10 oder neuer. Im Stable-Repository ist admin noch 8.3.5, dafür also admin aus dem Beta-Repository nehmen
- mindestens 1,5 GB freier Arbeitsspeicher, besser insgesamt 4 GB oder mehr. Das Modell belegt geladen etwa 1,1 GB
- etwa 700 MB Speicherplatz für das Modell, auf einem Raspberry Pi am besten auf einer SSD
- Zugriff auf
huggingface.cobeim ersten Start. Ohne Internet lassen sich die Modelldateien von Hand kopieren, siehe Anleitung
Installation
Der Adapter ist noch nicht im Beta-Repository, der PR dafür läuft. Bis dahin von npm installieren:
iob url iobroker.ai-parakeetAuf Linux mit x64 lädt
onnxruntime-nodebei der Installation zusätzlich etwa 200 MB CUDA-Bibliotheken, die der Adapter nicht nutzt. Mit der UmgebungsvariablenONNXRUNTIME_NODE_INSTALL=skiplässt sich das verhindern. Auf ARM (Raspberry Pi) und Windows wird nichts nachgeladen.Danach in Admin eine Instanz anlegen. Beim ersten Start lädt der Adapter das Modell (etwa 670 MB) und prüft die SHA-256-Prüfsummen. Den Fortschritt zeigt der Reiter "Server". Ein abgebrochener Download wird an der Abbruchstelle fortgesetzt. Bereit ist die Instanz, wenn
info.status=readyist.Erste Schritte
- Reiter "Live-Test" → Mikrofon starten und sprechen. Der Browser erlaubt das Mikrofon nur, wenn Admin über HTTPS oder auf
localhostgeöffnet ist. Sonst sagt der Reiter das. - Mit einer Audiodatei von der Kommandozeile (WAV geht immer, andere Formate brauchen ffmpeg):
curl http://192.168.1.10:9999/v1/audio/transcriptions -F file=@befehl.wav -F response_format=text - In ioBroker.assistant die Spracherkennung "OpenAI (Whisper)" wählen und als Spracherkennungs-Server die Adresse dieses Adapters eintragen, z. B.
http://192.168.1.10:9999(ohne/v1). Die richtige Adresse steht im Reiter "Server". - In Skripten:
sendTo('ai-parakeet.0', 'transcribe', { file: '/opt/iobroker/sprachnachricht.ogg' }, result => { log(result.error || `${result.text} (${result.audioSeconds} s in ${result.inferenceMs} ms)`); });
Für MP3, OGG/Opus, M4A, WebM und FLAC braucht der Adapter ffmpeg. Entweder auf dem Host installieren oder im Reiter "Erkennung" auf "ffmpeg herunterladen" klicken.
Alles Weitere steht in der Anleitung.
Was getestet werden soll
- Installation und erster Start auf verschiedenen Hosts: Raspberry Pi 4 (noch nicht gemessen), Mini-PCs mit N100 und ähnlichen CPUs, VMs, LXC-Container, Windows und macOS
- Reiter "Live-Test" und Testseite, die Testseite auch über HTTPS von einem anderen Rechner
- Nutzung durch ioBroker.assistant, auch im Multihost-Betrieb mit dem Adapter auf einem anderen Host
- verschiedene Sprachen, Hintergrundgeräusche, unterschiedliche Mikrofone
- Dateiformate mit dem heruntergeladenen ffmpeg, längere Aufnahmen
- Korrekturwörterbuch, die Option "Wörter aus dem Prompt verwenden"
- Entladen nach Leerlauf-Minuten und das erneute Laden des Modells
Besonders interessiert mich, wie schnell die Erkennung auf eurer Hardware ist. So weit gemessen, für einen Befehl von 3 bis 6 Sekunden:
Host CPU-Threads Rechenzeit Echtzeitfaktor Raspberry Pi 5 (8 GB), mit laufendem Frigate 3 0,5 - 1,1 s etwa 0,2 Intel Core i9-14900HX 4 0,1 - 0,3 s etwa 0,03 - 0,05 Postet gern eine Zeile in dieser Form (die Werte stehen in
stats.lastAudioSeconds,stats.lastInferenceMsundstats.lastRtf):Hardware, RAM, CPU-Threads: … s Audio, … ms Rechenzeit, Echtzeitfaktor …Bekannte Einschränkungen
- Der Server hört ab Werk auf
0.0.0.0ohne API-Schlüssel, und die Testseite ist aktiv. Jeder im Netz kann die Erkennung also ohne Passwort nutzen. In einem nicht vertrauenswürdigen Netz einen API-Schlüssel setzen oder die Adresse auf127.0.0.1ändern. - Es läuft immer nur eine Erkennung gleichzeitig, weitere Anfragen warten in der Warteschlange. Vollständige Aufnahmen kommen dabei vor den Zwischenergebnissen der Testseite.
- Aufnahmen über 300 Sekunden werden abgelehnt (einstellbar), Aufnahmen über 90 Sekunden in Fenstern von 60 Sekunden erkannt.
- Bei weniger als 1,1 GB freiem Speicher lädt der Adapter das Modell nicht. Die Prüfung lässt sich abschalten.
- Das Modell liegt in
iobroker-data/ai-parakeet/modelsund ist nicht Teil des ioBroker-Backups.
Fehler melden
Bitte als Issue auf GitHub oder hier im Thread, mit:
- Host (Hardware, Betriebssystem) und freiem Arbeitsspeicher
- Versionen von ai-parakeet, js-controller, admin und Node.js
- Log der Instanz auf der Stufe
debug, ab dem Start der Instanz
Bitte vor dem Posten prüfen, ob im Log erkannter Text oder etwas anderes Privates steht.
Danke fürs Testen!
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden