Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die SpeechRecognition-API ist eine standardmäßige Web-API, mit der Sprache aus einer Audioquelle wie einer Mediendatei oder einem Gerätemikrofon direkt aus dem JavaScript-Code einer Website oder Browsererweiterung in Text konvertiert werden kann. Dieser Artikel konzentriert sich auf die Verwendung der Spracherkennungs-API mit dem gerätebasierten (oder lokalen) Spracherkennungsmodell, das in Microsoft Edge integriert ist.
Weitere Informationen zur API finden Sie unter Web Speech-API bei MDN.
Detaillierter Inhalt:
- Verfügbarkeit des lokalen Spracherkennungsmodells
- Vorteile des lokalen Spracherkennungsmodells
- Aktivieren der lokalen Spracherkennung in Microsoft Edge
- Sehen Sie sich ein funktionierendes Beispiel an
- Verwenden der SpeechRecognition-API mit lokaler Erkennung in Ihrer Website
- Senden von Feedback
- Siehe auch
Verfügbarkeit des lokalen Spracherkennungsmodells
Das lokale Spracherkennungsmodell ist in Microsoft Edge, Canary oder Dev (Version 150.0.4076 oder höher) verfügbar. Weitere Informationen finden Sie unter Microsoft Edge-Insider werden.
Vorteile des lokalen Spracherkennungsmodells
Wenn Sie die SpeechRecognition-API mit dem lokalen Modell in Microsoft Edge verwenden, erfolgt die Spracherkennung auf demselben Gerät, auf dem die Sprache erfasst wird. Dieser Ansatz hat im Vergleich zu cloudbasierten Lösungen die folgenden Vorteile:
Reduzierte Kosten: Für die Nutzung eines Cloudanerkennungsdiensts fallen keine Kosten an.
Netzwerkunabhängigkeit: Über den anfänglichen Modelldownload hinaus gibt es bei der Verwendung dieser API zum Konvertieren von Sprache keine Netzwerklatenz, und die API kann auch verwendet werden, wenn das Gerät offline ist.
Verbesserter Datenschutz: Die Spracheingabe in das Modell verlässt nie das Gerät und wird nicht zum Trainieren von KI-Modellen gesammelt.
Modellverfügbarkeit
Ein erster Download des Modells ist erforderlich, wenn eine Website zum ersten Mal das lokale Spracherkennungsmodell mit der SpeechRecognition-API verwendet.
Sie können den Modelldownload mithilfe der Zusage überwachen, die von der SpeechRecognition-API-Methode install() zurückgegeben wird. Siehe unten, um zu überprüfen, ob das lokale Modell bereits installiert ist.
Aktivieren der lokalen Spracherkennung in Microsoft Edge
Um das lokale Spracherkennungsmodell mit der SpeechRecognition-API zu verwenden, müssen Sie das Feature in Microsoft Edge aktivieren Canary oder Dev. So aktivieren Sie die Spracherkennung über das On-Device-Modell:
Stellen Sie sicher, dass Sie Microsoft Edge Canary oder Dev (Version 150.0.4076 oder neuer) verwenden. Weitere Informationen finden Sie unter Microsoft Edge-Insider werden.
Öffnen Sie in Microsoft Edge Canary oder Dev eine neue Registerkarte oder ein neues Fenster und wechseln Sie zu
edge://flags.Geben Sie im Suchfeld oben auf der Seite Spracherkennung mit Gerätemodell ein.
Wählen Sie in der Dropdownliste Spracherkennung mit dem Modell auf dem Gerätdie Option Aktiviert aus, und klicken Sie dann unten rechts auf die Schaltfläche Neustart :
Sehen Sie sich ein funktionierendes Beispiel an
So sehen Sie die SpeechRecognition-API in Aktion und sehen den Democode:
Aktivieren Sie die lokale Spracherkennung in Microsoft Edge, wie oben beschrieben.
Öffnen Sie in Microsoft Edge Canary oder Dev eine Registerkarte oder ein Fenster, und wechseln Sie zum SpeechRecognition-API-Playground.
Überprüfen Sie im Informationsbanner oben den Status: Zunächst wird SpeechRecognition API ready angezeigt. Klicken Sie auf "Start", um zu beginnen.
Wählen Sie in der Dropdownliste "Eingabesprache " die Sprache aus, die Sie für die Spracherkennung verwenden möchten.
Wählen Sie in der Dropdownliste "Audioquelle " eine Audioquelle für die Spracherkennung aus:
- Wählen Sie Mikrofon aus, um das Mikrofon Ihres Geräts als Audioquelle zu verwenden.
- Wählen Sie "Datei" aus, um eine Audio- oder Videodatei von Ihrem Gerät als Audioquelle zu verwenden.
Wenn Sie Datei als Audioquelle ausgewählt haben, wird ein Abschnitt Mediendatei angezeigt. Klicken Sie auf die Schaltfläche "Datei auswählen ", und wählen Sie dann eine Audio- oder Videodatei von Ihrem Gerät aus.
Klicken Sie auf die Schaltfläche Start.
Wenn Sie das lokale Spracherkennungsmodell für die ausgewählte Sprache noch nicht heruntergeladen haben, startet der Download und das Informationsbanner enthält die Meldung Installing on-device model for en-US...:
Nachdem das Modell installiert wurde, wird die Texttranskription auf der Seite angezeigt:
Klicken Sie auf die Schaltfläche " Stopp ", um die Umwandlung von Sprache in Text jederzeit zu beenden.
Die Transkription kann auch nach einer längeren Zeit der Stille im Eingangsaudio automatisch beendet werden.
Siehe auch:
- /built-in-ai/playgrounds/speechrecognition-api/ – Quellcode für die SpeechRecognition-API-Playground-Demo.
Verwenden der SpeechRecognition-API mit lokaler Erkennung in Ihrer Website
In den folgenden Abschnitten wird beschrieben, wie Sie die SpeechRecognition-API mit lokaler Spracherkennung im Code Ihrer Website verwenden. Weitere Informationen zur API selbst finden Sie unter Web Speech-API auf MDN.
Überprüfen Sie, ob die API unterstützt wird, und instanziieren Sie ein SpeechRecognition-Objekt.
Um sicherzustellen, dass die SpeechRecognition-API im Browser unterstützt wird, testen Sie, ob das SpeechRecognition Objekt verfügbar ist:
if (!window.SpeechRecognition) {
console.log("The SpeechRecognition API is not available in this browser.");
} else {
console.log("The SpeechRecognition API is available.");
}
Wenn die API unterstützt wird, erstellen Sie eine neue SpeechRecognition Instance, um mit der Verwendung der API zu beginnen:
const recognition = new SpeechRecognition();
Siehe auch:
- SpeechRecognition, bei MDN.
Wählen Sie eine Eingabesprache aus, und aktivieren Sie die lokale Anerkennung
Um die Spracherkennung nach einem lokalen Modell zu konfigurieren, geben Sie eine Eingabesprache an, und legen Sie die processLocally Option fest:
recognition.lang = "en-US";
recognition.processLocally = true;
Die folgenden Eingabesprachen werden für die lokale Spracherkennung unterstützt:
- Englisch (En-US)
- Deutsch (de-DE)
- Italienisch (it-IT)
- Portugiesisch (pt-PT)
- Spanisch (es-ES)
- Koreanisch (ko-KR)
Die Sprachunterstützung wird voraussichtlich in zukünftigen Versionen erweitert.
Legen Sie außerdem die continuousinterimResults und-Optionen fest, um true lange Audiositzungen ohne Unterbrechung zu transkribieren und Zwischenergebnisse zu erhalten:
recognition.continuous = true;
recognition.interimResults = true;
Siehe auch:
- SpeechRecognition: lang-Eigenschaft, bei MDN.
- SpeechRecognition: processLocal-Eigenschaft, bei MDN.
- SpeechRecognition: kontinuierliche Eigenschaft, bei MDN.
- SpeechRecognition: interimResults-Eigenschaft, bei MDN.
Überprüfen, ob das lokale Modell bereits installiert ist
Bevor Sie mit der SpeechRecognition.available() Erkennung beginnen, prüfen Sie mithilfe der Methode, ob das lokale Modell für die ausgewählte Sprache verfügbar ist.
Wenn das Modell noch nicht installiert ist, lösen Sie die Installation mithilfe der Methode aus, und warten Sie, bis das Modell abgeschlossen ist, bevor Sie mit der SpeechRecognition.install() Erkennung beginnen:
async function ensureModelReady(lang) {
// Check if the model is already available.
const availability = await SpeechRecognition.available({
langs: [lang],
processLocally: true,
});
// If the model is already available, proceed to recognition.
if (availability === "available") {
return true;
}
// If the model is not available but can be downloaded,
// trigger the installation and wait for it to complete
// before proceeding to recognition.
if (availability === "downloadable" || availability === "downloading") {
const installed = await SpeechRecognition.install({
langs: [lang],
processLocally: true,
});
if (!installed) {
throw new Error(`Failed to install local model for ${lang}.`);
}
return true;
}
return false;
}
Die von zurückgegebene SpeechRecognition.install() Zusage wird aufgelöst, wenn die Installation erfolgreich ist oder fehlschlägt.
Siehe auch:
- SpeechRecognition: Statische Methode available() bei MDN.
- SpeechRecognition: install() static method, at MDN.
Spracherkennung starten
Nachdem Sie sichergestellt haben, dass sowohl die API als auch das Modell bereit sind, verwenden Sie die Methode, um mit der start() Erkennung zu beginnen.
Wenn die Methode ohne Parameter aufgerufen wird, erkennt sie start() Audio vom Mikrofon des Benutzers:
recognition.start();
Um Audio aus einer Mediendatei statt aus dem Mikrofon des Benutzers zu erkennen, übergeben Sie eine MediaStreamTrack instance als Argument an die start() Methode. Sie können beispielsweise eine MediaStreamTrack Instance erstellen, indem Sie eine MediaStreamDestinationNode Instance mithilfe der WebAudio-API erstellen:
const audioContext = new AudioContext();
const mediaStreamDestination = audioContext.createMediaStreamDestination();
recognition.start(mediaStreamDestination.stream.getAudioTracks()[0]);
Siehe auch:
- SpeechRecognition: start()-Methode, bei MDN.
- Web Audio API, at MDN.
Erkennung explizit und medienseitig beenden
Verwenden Sie die stop() folgende Methode, um die Erkennung zu beenden:
recognition.stop();
Sie können die Erkennung auch beenden, wenn die Medieneingabe endet, indem Sie den onended Ereignishandler des Medienelements verwenden, das Sie als Eingabe verwenden. Wenn Sie beispielsweise ein HTMLAudioElement oder HTMLVideoElement als Audioquelle verwenden, können Sie den Ereignishandler wie folgt einrichten:
mediaElement.onended = () => recognition.stop();
Siehe auch:
- SpeechRecognition: stop()-Methode, bei MDN.
Feedback senden
Wir interessieren uns für Ihr Feedback zu:
- Das lokale Spracherkennungsmodell.
- Die Leistung des lokalen Spracherkennungsmodells.
- Alle anderen Verbesserungen, die Sie für Ihre Anwendungsfälle sehen möchten.
Bitte senden Sie uns Feedback, indem Sie einen Kommentar zum Problem mit dem SpeechRecognition-API-Feedback hinzufügen.
Siehe auch
Microsoft:
MDN:
-
SpeechRecognition
- SpeechRecognition: Statische Methode available()
- SpeechRecognition: kontinuierliche Eigenschaft
- SpeechRecognition: install() static method
- SpeechRecognition: interimResults-Eigenschaft
- SpeechRecognition: lang-Eigenschaft
- SpeechRecognition: processLocal-Eigenschaft
- SpeechRecognition: start()-Methode
- SpeechRecognition: stop()-Methode
- Webaudio-API
- Web Speech-API
GitHub: