Taaldetectie met ingebouwde AI, Taaldetectie met ingebouwde AI

Gepubliceerd: 24 september 2024, Laatst bijgewerkt: 20 mei 2025

Browser Support

  • Chrome: 138.
  • Edge: niet ondersteund.
  • Firefox: niet ondersteund.
  • Safari: niet ondersteund.

Source

Voordat je tekst van de ene taal naar de andere vertaalt, moet je eerst bepalen welke taal er in de betreffende tekst wordt gebruikt. Voorheen hield vertalen in dat je de tekst naar een cloudservice uploadde, de vertaling op de server uitvoerde en vervolgens de resultaten downloadde.

De Language Detector API werkt aan de clientzijde, wat betekent dat de privacy van gebruikers beschermd kan worden. Hoewel het mogelijk is om een ​​specifieke bibliotheek hiervoor te leveren, zou dit extra resources vereisen om te downloaden.

Wanneer moet je taaldetectie gebruiken?

De Language Detector API is vooral nuttig 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 daarop kan worden aangepast. Op een Belgische website kan bijvoorbeeld alleen de interface worden weergegeven die relevant is voor gebruikers die Frans spreken.

Aan de slag

Bekijk de hardwarevereisten.

De volgende vereisten gelden voor ontwikkelaars en gebruikers die functies gebruiken die deze API's in Chrome inzetten. Andere browsers kunnen andere vereisten hebben.

De API's voor taaldetectie en -vertaling werken in Chrome op desktops. Deze API's werken niet op mobiele apparaten.

De Prompt API , Summarizer API , Writer API , Rewriter API en Proofreader API werken in Chrome wanneer aan de volgende voorwaarden wordt voldaan:

  • Besturingssysteem : Windows 10 of 11; macOS 13+ (Ventura en nieuwer); Linux; of ChromeOS (vanaf platform 16389.0.0 en nieuwer) op Chromebook Plus- apparaten. Chrome voor Android, iOS en ChromeOS op niet-Chromebook Plus-apparaten wordt nog niet ondersteund door de API's die gebruikmaken van Gemini Nano.
  • Opslag : Minimaal 22 GB vrije ruimte op het volume waarop uw Chrome-profiel staat.
  • GPU of CPU : Ingebouwde modellen kunnen met een GPU of een CPU werken.
    • GPU : Strikt meer dan 4 GB VRAM.
    • CPU : 16 GB RAM of meer en 4 processorkernen of meer.
    • Let op : de Prompt API met audio-invoer vereist een GPU.
  • Netwerk : Onbeperkte data of een verbinding zonder datalimiet.

De exacte afmetingen van de Gemini Nano kunnen variëren, afhankelijk van de browserupdate van het model. Ga naar chrome://on-device-internals om de huidige afmetingen te achterhalen.

Voer een 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 specifiek is afgestemd op de taak van taaldetectie. Hoewel de API in de browser is ingebouwd, wordt het model pas gedownload wanneer een website de API voor het eerst probeert te gebruiken. In Chrome is dit model relatief klein vergeleken met andere modellen. Het kan echter al aanwezig zijn, aangezien dit model ook 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 het antwoord op availability() downloadable is, luistert u naar de voortgang van de download en informeert u de gebruiker, aangezien de download enige tijd kan duren.

Om de download te starten en de taaldetector te initialiseren, moet je controleren of de gebruiker is geactiveerd . 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 bepaalde tekst voorkomt. Rangschikken 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 hoogste naar laagste waarschijnlijkheid.

De functie detect() kan het eerste resultaat, het meest waarschijnlijke antwoord, of een iteratie over de gerangschikte kandidaten met een bepaald betrouwbaarheidsniveau retourneren. Dit wordt geretourneerd als een lijst van {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 tekstveld in.

Toestemmingsbeleid, iframes en webworkers

Standaard is de Language Detector API alleen beschikbaar voor vensters op het hoogste niveau en hun iframes van dezelfde oorsprong. Toegang tot de API kan worden gedelegeerd aan iframes van een andere oorsprong met behulp van het attribuut allow="" in het machtigingsbeleid.

<!--
  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 Web Workers. Dit komt door de complexiteit van het opstellen van een verantwoordelijk document voor elke worker om de status van het machtigingsbeleid te controleren.

Deel je 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 je feedback hebt over de implementatie in Chrome, meld dit dan via een Chromium-bugrapport .

Word lid van het Early Preview Program voor een vroege blik op nieuwe ingebouwde AI-API's en toegang tot discussies op onze mailinglijst.