Publié le 24 septembre 2024, dernière mise à jour le 20 mai 2025
Avant de traduire un texte d'une langue à une autre, vous devez d'abord déterminer la langue utilisée dans le texte donné. Auparavant, la traduction nécessitait d'importer le texte dans un service cloud, d'effectuer la traduction sur le serveur, puis de télécharger les résultats.
L'API Language Detector fonctionne côté client, ce qui vous permet de protéger la confidentialité des utilisateurs. Bien qu'il soit possible de fournir une bibliothèque spécifique qui effectue cette opération, cela nécessiterait des ressources supplémentaires à télécharger.
Quand utiliser la détection de la langue
L'API Language Detector est principalement utile dans les scénarios suivants :
- Déterminer la langue du texte d'entrée pour qu'il puisse être traduit
- Déterminez la langue du texte d'entrée afin de charger le modèle approprié pour les tâches spécifiques à la langue, telles que la détection de toxicité.
- Déterminez la langue du texte d'entrée afin qu'il puisse être étiqueté correctement, par exemple sur les réseaux sociaux en ligne.
- Déterminez la langue du texte d'entrée afin que l'interface d'une application puisse être ajustée en conséquence. Par exemple, sur un site belge, pour n'afficher que l'interface pertinente pour les utilisateurs francophones.
Commencer
Les API Language Detector et Translator fonctionnent dans Chrome sur ordinateur. Ces API ne fonctionnent pas sur les appareils mobiles.
Exécutez la détection de fonctionnalités pour voir si le navigateur est compatible avec l'API Language Detector.
if ('LanguageDetector' in self) {
// The Language Detector API is available.
}
Téléchargement de modèles
La détection de la langue dépend d'un modèle affiné pour la tâche spécifique de détection des langues. Bien que l'API soit intégrée au navigateur, le modèle est téléchargé à la demande la première fois qu'un site tente d'utiliser l'API. Dans Chrome, ce modèle est très petit par rapport aux autres modèles. Il est peut-être déjà présent, car ce modèle est utilisé par d'autres fonctionnalités de Chrome.
Pour déterminer si le modèle est prêt à être utilisé, appelez la fonction asynchrone LanguageDetector.availability(). Si la réponse à availability() était downloadable, écoutez la progression du téléchargement et informez l'utilisateur, car le téléchargement peut prendre du temps.
Pour déclencher le téléchargement et instancier le détecteur de langue, vérifiez l'activation de l'utilisateur. Ensuite, appelez la fonction asynchrone LanguageDetector.create().
const detector = await LanguageDetector.create({
monitor(m) {
m.addEventListener('downloadprogress', (e) => {
console.log(`Downloaded ${e.loaded * 100}%`);
});
},
});
Exécuter le détecteur de langue
L'API Language Detector utilise un modèle de classement pour déterminer la langue la plus susceptible d'être utilisée dans un texte donné. Le classement est un type de machine learning dont l'objectif est d'ordonner une liste d'éléments. Dans ce cas, l'API Language Detector classe les langues de la probabilité la plus élevée à la plus faible.
La fonction detect() peut renvoyer le premier résultat, la réponse la plus probable ou effectuer une itération sur les candidats classés avec le niveau de confiance.
Il est renvoyé sous la forme d'une liste d'objets {detectedLanguage, confidence}. Le niveau confidence est exprimé sous la forme d'une valeur comprise entre 0.0 (niveau de confiance le plus faible) et 1.0 (niveau de confiance le plus élevé).
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 Playground
Testez l'API Language Detector dans notre bac à sable d'API. Saisissez du texte écrit dans différentes langues dans la zone de texte.
Règles d'autorisation, iFrames et Web Workers
Par défaut, l'API Language Detector n'est disponible que pour les fenêtres de niveau supérieur et leurs iframes de même origine. L'accès à l'API peut être délégué à des iFrames interorigines à l'aide de l'attribut allow="" de la règle d'autorisation :
<!--
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 n'est pas disponible dans les Web Workers. Cela est dû à la complexité de l'établissement d'un document responsable pour chaque worker afin de vérifier l'état de conformité avec les règles de la règle d'autorisation.
Envoyer des commentaires
Nous voulons voir ce que vous créez avec l'API Language Detector. Partagez vos sites et applications Web avec nous sur X, YouTube et LinkedIn.
Si vous avez des commentaires sur l'implémentation de Chrome, signalez un bug Chromium.
Rejoignez le programme de preview anticipée pour découvrir en avant-première les nouvelles API d'IA intégrées et accéder aux discussions sur notre liste de diffusion.