Wie man die Leistung verbessert
Das Plugin verwendet je nach Plattform verschiedene GPU-Beschleunigungsmethoden: Vulkan unter Windows und Linux sowie Metal auf Mac- und iOS-Plattformen, was den Erkennungsprozess erheblich beschleunigt. Auf anderen Plattformen verwendet das Plugin die CPU + Intrinsics zur Beschleunigung. Sie können die Leistung des Plugins jedoch weiter verbessern, indem Sie die folgenden Empfehlungen befolgen:
-
Verwenden Sie Voice Activity Detection (VAD)
Es wird dringend empfohlen, Voice Activity Detection zu verwenden, um die Reaktionsfähigkeit des Erkenners zu verbessern, indem Sprache zur Erkennung gesendet wird, sobald der Benutzer aufhört zu sprechen, anstatt auf feste Zeitintervalle zu warten. Insbesondere das Silero VAD wird für diesen Zweck empfohlen. Detaillierte Implementierungsanweisungen finden Sie in der Voice Activity Detection-Dokumentation.
-
Schrittgröße verringern
Standardmäßig beträgt die Schrittgröße 5000 ms (5 Sekunden), was bedeutet, dass die Audiodaten während der Aufnahme alle 5 Sekunden erkannt werden. Wenn Sie die Audiodaten häufiger erkennen möchten, können Sie die Schrittgröße verringern, z. B. auf 500 ms (0,5 Sekunden). Wenn jedoch VAD aktiv ist (was in der Regel empfohlen wird, es sei denn, Sie haben spezifische Anforderungen, die feste Intervalle erfordern), wird davon abgeraten, sich auf die Verringerung der Schrittgröße zu verlassen. Bei der Verwendung von VAD in typischen Setups wie Sprachaktivierter Befehlserkennung oder Automatisch initialisierende Spracherkennung mit Final Buffer Processing wird die Sprache ohnehin erkannt, sobald der Benutzer aufhört zu sprechen.
-
Verwenden Sie ein kleineres Sprachmodell
Sie können die Verwendung eines kleineren Sprachmodells in Betracht ziehen, z. B.
Tiny Quantized (Q5_1), um die Modellgröße zu reduzieren und die Leistung zu verbessern. Anweisungen zur Auswahl eines Sprachmodells finden Sie hier. -
Optimieren Sie die Erkennungsstatusverwaltung
Vermeiden Sie bei der Arbeit mit Mikrofoneingaben unnötiges Stoppen und Starten des Spracherkenners. Anstatt
StopSpeechRecognitionundStartSpeechRecognitionhäufig aufzurufen, was eine Neuverteilung von Ressourcen erfordert, sollten Sie die Audioeingabe direkt steuern. Verwenden Sie beispielsweise bei einer aufnehmbaren SoundwelleStopCaptureundStartCapture, um den Audiofluss zu verwalten, während der Erkennungsthread aktiv bleibt.