Taaldetectie in Chrome met ingebouwde AI,Taaldetectie in Chrome met ingebouwde AI

Gepubliceerd: 24 september 2024

Voordat u tekst van de ene taal naar de andere vertaalt, moet u eerst bepalen welke taal in de gegeven tekst wordt gebruikt. Voorheen vereiste de vertaling het uploaden van de tekst naar een cloudservice, het uitvoeren van de vertaling op de server en het downloaden van de resultaten.

De Language Detector API maakt gebruik van gevolgtrekkingen op het apparaat, zodat u uw privacyverhaal kunt verbeteren. Hoewel het mogelijk is om een ​​specifieke bibliotheek te leveren die dit doet, zijn er extra bronnen nodig om te downloaden.

Beschikbaarheid

Meld u aan voor de origin-proefperiode

Volg deze stappen om de Language Detector API te gaan gebruiken:

  1. Erken het beleid van Google inzake verboden gebruik van generatieve AI .
  2. Ga naar de proefversie van de Language Detector API-oorsprong .
  3. Klik op Registreren en vul het formulier in.
    • Geef in het veld Weboorsprong uw herkomst- of extensie-ID op: chrome-extension://YOUR_EXTENSION_ID .
  4. Om te verzenden klikt u op Registreren .
  5. Kopieer het verstrekte token en voeg het toe aan elke webpagina op uw oorsprong of bestand voor uw extensie waarop u de proefversie wilt inschakelen.
  6. Begin met het gebruik van de Taaldetectie-API .

Lees meer over hoe u aan de slag kunt gaan met origin-proeven .

Voeg ondersteuning toe aan localhost

Om tijdens de oorspronkelijke proefperiode toegang te krijgen tot de Language Detection API op localhost , moet u Chrome updaten naar de nieuwste versie. Volg vervolgens deze stappen:

  1. Open Chrome op een van deze platforms: Windows, Mac of Linux.
  2. Ga naar chrome://flags/#language-detection-api .
  3. Selecteer Ingeschakeld .
  4. Klik op Opnieuw starten of start Chrome opnieuw.

Voorbeelden van gebruiksscenario's

De Language Detector API is vooral nuttig in de volgende scenario's:

  • Bepaal de taal van de invoertekst, zodat deze kan worden vertaald.
  • 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 gebruikers die Frans spreken.

Gebruik de Taaldetector-API

De Language Detector API maakt deel uit van de grotere familie van de Translator API. Voer eerst functiedetectie uit om te zien of de browser de Language Detector API ondersteunt.

if ('translation' in self && 'canDetect' in self.translation) {
  // The Language Detector API is available.
}  

Model downloaden

Taaldetectie is afhankelijk van een model dat is afgestemd op de specifieke taak van het detecteren van talen. Hoewel de API in de browser is ingebouwd, wordt het model op aanvraag 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 zou zelfs al aanwezig kunnen zijn, aangezien dit model ook wordt gebruikt door de Chrome-browserfuncties.

Om te zien of het model klaar is voor gebruik, roept u de functie asynchrone translation.canDetect() aan. Er zijn drie mogelijke reacties:

  • 'no' : de huidige browser ondersteunt de Language Detector API, maar kan momenteel niet worden gebruikt. Bijvoorbeeld omdat er onvoldoende vrije schijfruimte beschikbaar is om het model te downloaden.
  • 'readily' : De huidige browser ondersteunt de Language Detector API en kan meteen worden gebruikt.
  • 'after-download' : de huidige browser ondersteunt de Language Detector API, maar moet eerst het model downloaden.

Om de download te activeren en de taaldetector te instantiëren, roept u de functie asynchrone translation.createDetector() aan. Als het antwoord op canDetect() 'after-download' was, kunt u het beste luisteren naar de downloadvoortgang, zodat u de gebruiker kunt informeren als het downloaden enige tijd kost.

In het volgende voorbeeld ziet u hoe u de taaldetector initialiseert.

const canDetect = await translation.canDetect();
let detector;
if (canDetect === 'no') {
  // The language detector isn't usable.
  return;
}
if (canDetect === 'readily') {
  // The language detector can immediately be used.
  detector = await translation.createDetector();
} else {
  // The language detector can be used after model download.
  detector = await translation.createDetector();
  detector.addEventListener('downloadprogress', (e) => {
 console.log(e.loaded, e.total);
  });
  await detector.ready;
}

Voer de taaldetector uit

De Language Detector API gebruikt een classificatiemodel om te bepalen welke taal hoogstwaarschijnlijk in een bepaald stuk tekst wordt gebruikt. Ranking is een vorm van machinaal leren, waarbij het doel is om een ​​lijst met items te ordenen. In dit geval rangschikt de Language Detector API talen van de hoogste naar de laagste waarschijnlijkheid.

De functie detect() kan het eerste resultaat of het meest waarschijnlijke antwoord retourneren, of de gerangschikte kandidaten met het niveau van vertrouwen herhalen. 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
// ...

Demo

Bekijk een voorbeeld van de Language Detector API in onze demo . Voer tekst in die in verschillende talen is geschreven in het tekstgebied in.

Standaardisatie-inspanning

De Language Detector API werd verplaatst naar de W3C Web Incubator Community Group nadat het bijbehorende voorstel voldoende steun kreeg. De API maakt deel uit van een groter voorstel voor een Translation API .

Het Chrome-team vroeg om feedback van de W3C Technical Architecture Group en vroeg Mozilla en WebKit naar hun standaardposities.

Deel uw feedback

Als u feedback heeft over de implementatie van Chrome, dient u een Chromium-bug in. Deel uw feedback over de API-vorm van de Language Detector API door commentaar te geven op een bestaand probleem of een nieuw probleem te openen in de Translation API GitHub-repository .