Rilevamento della lingua con l'AI integrata

Pubblicato il 24 settembre 2024, ultimo aggiornamento: 20 maggio 2025

Browser Support

  • Chrome: 138.
  • Edge: not supported.
  • Firefox: not supported.
  • Safari: not supported.

Source

Prima di tradurre un testo da una lingua all'altra, devi prima determinare la lingua utilizzata nel testo in questione. In precedenza, la traduzione richiedeva il caricamento del testo su un servizio cloud, l'esecuzione della traduzione sul server e poi il download dei risultati.

L'API Language Detector funziona lato client, il che significa che puoi proteggere la privacy degli utenti. Sebbene sia possibile distribuire una libreria specifica che esegue questa operazione, sarebbero necessarie risorse aggiuntive per il download.

Quando utilizzare il rilevamento della lingua

L'API Language Detector è utile principalmente nei seguenti scenari:

  • Determinare la lingua del testo di input, in modo che possa essere tradotto.
  • Determinare la lingua del testo di input, in modo che il modello corretto possa essere caricato per attività specifiche della lingua, come il rilevamento della tossicità.
  • Determinare la lingua del testo di input, in modo che possa essere etichettato correttamente, ad esempio nei siti di social network online.
  • Determinare la lingua del testo di input, in modo che l'interfaccia di un'app possa essere regolata di conseguenza. Ad esempio, su un sito belga, per mostrare solo l'interfaccia pertinente agli utenti che parlano francese.

Inizia

Le API Language Detector e Translator funzionano in Chrome su computer. Queste API non funzionano sui dispositivi mobili.

Esegui il rilevamento delle funzionalità per verificare se il browser supporta l'API Language Detector.

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

Download modello

Il rilevamento della lingua dipende da un modello ottimizzato per l'attività specifica di rilevamento delle lingue. Sebbene l'API sia integrata nel browser, il modello viene scaricato on demand la prima volta che un sito tenta di utilizzare l'API. In Chrome, questo modello è molto piccolo rispetto ad altri modelli. Potrebbe essere già presente, in quanto questo modello viene utilizzato da altre funzionalità di Chrome.

Per determinare se il modello è pronto per l'uso, chiama la funzione asincrona LanguageDetector.availability(). Se la risposta a availability() è stata downloadable, ascolta l'avanzamento del download e informa l'utente, poiché il download potrebbe richiedere tempo.

Per attivare il download e creare un'istanza del rilevatore di lingua, verifica l'attivazione dell'utente . Quindi, chiama la funzione asincrona LanguageDetector.create().

const detector = await LanguageDetector.create({
  monitor(m) {
    m.addEventListener('downloadprogress', (e) => {
      console.log(`Downloaded ${e.loaded * 100}%`);
    });
  },
});

Esegui il rilevatore di lingua

L'API Language Detector utilizza un modello di classificazione per determinare la lingua più probabile utilizzata in un determinato testo. La classificazione è un tipo di machine learning in cui l'obiettivo è ordinare un elenco di elementi. In questo caso, l'API Language Detector classifica le lingue dalla probabilità più alta a quella più bassa.

La funzione detect() può restituire il primo risultato, la risposta più probabile o eseguire l'iterazione sui candidati classificati con il livello di affidabilità. Viene restituito come un elenco di oggetti {detectedLanguage, confidence}. Il livello di confidence è espresso come un valore compreso tra 0.0 (affidabilità minima) e 1.0 (affidabilità massima).

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
// ...

Sandbox API

Prova l'API Language Detector nella nostra sandbox API. Inserisci il testo scritto in lingue diverse nella casella di testo.

Policy sulle autorizzazioni, iframe e web worker

Per impostazione predefinita, l'API Language Detector è disponibile solo per le finestre di primo livello e per i relativi iframe con la stessa origine. L'accesso all'API può essere delegato a iframe di origine diversa utilizzando l'attributo della policy sulle autorizzazioni 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>

L'API Language Detector non è disponibile nei web worker. Ciò è dovuto alla complessità di stabilire un documento responsabile per ogni worker al fine di controllare lo stato secondo le norme della policy sulle autorizzazioni.

Condividi il tuo feedback

Vogliamo vedere cosa stai creando con l'API Language Detector. Condividi i tuoi siti web e le tue applicazioni web con noi su X, YouTube, e LinkedIn.

Se hai feedback sull'implementazione di Chrome, segnala un bug di Chromium.

Partecipa al Programma Anteprima per dare un'occhiata in anteprima alle nuove API AI integrate e accedere alla discussione nella nostra mailing list.