Gepubliceerd: 24 september 2024, Laatst bijgewerkt: 20 mei 2025
Voordat u tekst van de ene taal naar de andere vertaalt, moet u eerst bepalen welke taal in de betreffende tekst wordt gebruikt. Voorheen moest u de tekst uploaden naar een cloudservice, de vertaling op de server uitvoeren en vervolgens de resultaten downloaden.
De Language Detector API werkt client-side, wat betekent dat u de privacy van gebruikers kunt beschermen. Hoewel het mogelijk is om een specifieke bibliotheek te leveren die dit doet, zijn hiervoor extra bronnen nodig om te downloaden.
Wanneer taaldetectie gebruiken
De Language Detector API is vooral handig in de volgende scenario's:
- Bepaal de taal van de invoertekst, zodat deze vertaald kan worden.
- Bepaal de taal van de invoertekst, zodat het juiste model kan worden geladen voor taalspecifieke taken, zoals toxiciteitsdetectie.
- Bepaal de taal van de invoertekst, zodat deze correct kan worden gelabeld, bijvoorbeeld op online sociale netwerksites.
- Bepaal de taal van de invoertekst, zodat de interface van een app hierop kan worden aangepast. Bijvoorbeeld om op een Belgische site alleen de interface te tonen die relevant is voor Franstalige gebruikers.
Aan de slag
Voer functiedetectie uit om te controleren of de browser de Language Detector API ondersteunt.
if ('LanguageDetector' in self) {
// The Language Detector API is available.
}
Model downloaden
Taaldetectie is afhankelijk van een model dat is afgestemd op de specifieke taak van taaldetectie. Hoewel de API in de browser is ingebouwd, wordt het model on-demand gedownload wanneer een site de API voor het eerst probeert te gebruiken. In Chrome is dit model erg klein in vergelijking met andere modellen. Het is mogelijk al aanwezig, aangezien dit model door andere Chrome-functies wordt gebruikt.
Om te bepalen of het model klaar is voor gebruik, roept u de asynchrone functie LanguageDetector.availability()
aan. Als de respons op availability()
downloadable
was, luister dan naar de voortgang van het downloaden en informeer de gebruiker, aangezien het downloaden enige tijd kan duren.
Om het downloaden te activeren en de taaldetector te instantiëren, controleert u op gebruikersactivatie . Roep vervolgens de asynchrone functie LanguageDetector.create()
aan.
const detector = await LanguageDetector.create({
monitor(m) {
m.addEventListener('downloadprogress', (e) => {
console.log(`Downloaded ${e.loaded * 100}%`);
});
},
});
Voer de taaldetector uit
De Language Detector API gebruikt een rangschikkingsmodel om te bepalen welke taal het meest waarschijnlijk in een bepaald stuk tekst wordt gebruikt. Rangschikking is een vorm van machine learning, waarbij het doel is om een lijst met items te ordenen. In dit geval rangschikt de Language Detector API talen van hoogste naar laagste waarschijnlijkheid.
De functie detect()
kan het eerste resultaat retourneren, het meest waarschijnlijke antwoord, of itereren over de gerangschikte kandidaten met het betrouwbaarheidsniveau. Dit wordt geretourneerd als een lijst met {detectedLanguage, confidence}
-objecten. Het confidence
wordt uitgedrukt als een waarde tussen 0.0
(laagste betrouwbaarheid) en 1.0
(hoogste betrouwbaarheid).
const someUserText = 'Hallo und herzlich willkommen!';
const results = await detector.detect(someUserText);
for (const result of results) {
// Show the full list of potential languages with their likelihood, ranked
// from most likely to least likely. In practice, one would pick the top
// language(s) that cross a high enough threshold.
console.log(result.detectedLanguage, result.confidence);
}
// (Output truncated):
// de 0.9993835687637329
// en 0.00038279531872831285
// nl 0.00010798392031574622
// ...
API-speeltuin
Experimenteer met de Language Detector API in onze API-speeltuin . Voer tekst in verschillende talen in het tekstvak in.
Toestemmingsbeleid, iframes en webworkers
Standaard is de Language Detector API alleen beschikbaar voor vensters op het hoogste niveau en voor iframes met dezelfde oorsprong. Toegang tot de API kan worden gedelegeerd aan iframes met meerdere oorsprongen met behulp van het kenmerk 'Permission Policy allow=""
:
<!--
The hosting site at https://main.example.com can grant a cross-origin iframe
at https://cross-origin.example.com/ access to the Language Detector API by
setting the `allow="language-detector"` attribute.
-->
<iframe src="https://cross-origin.example.com/" allow="language-detector"></iframe>
De Language Detector API is niet beschikbaar in webworkers. Dit komt door de complexiteit van het aanmaken van een verantwoordelijk document voor elke worker om de status van het machtigingsbeleid te controleren.
Deel uw feedback
We willen graag zien wat je bouwt met de Language Detector API. Deel je websites en webapplicaties met ons op X , YouTube en LinkedIn .
Als u feedback hebt over de implementatie van Chrome, meld dit dan als Chromium-bug .