Data publikacji: 24 września 2024 r., ostatnia aktualizacja: 20 maja 2025 r.
Zanim przetłumaczysz tekst z jednego języka na inny, musisz najpierw określić, w jakim języku jest on napisany. Wcześniej tłumaczenie wymagało przesłania tekstu do usługi w chmurze, przetłumaczenia go na serwerze, a następnie pobrania wyników.
Interfejs Language Detector API działa po stronie klienta, co oznacza, że możesz chronić prywatność użytkowników. Można dostarczyć konkretną bibliotekę, która to robi, ale wymagałoby to pobrania dodatkowych zasobów.
Kiedy używać wykrywania języka
Interfejs Language Detector API jest przydatny przede wszystkim w tych przypadkach:
- określać język tekstu wejściowego, aby można było go przetłumaczyć;
- określać język tekstu wejściowego, aby można było wczytać odpowiedni model do zadań związanych z językiem, takich jak wykrywanie toksyczności.
- określać język tekstu wejściowego, aby można go było prawidłowo oznaczyć, np. w internetowych serwisach społecznościowych.
- określać język tekstu wejściowego, aby można było odpowiednio dostosować interfejs aplikacji; Na przykład na belgijskiej stronie internetowej wyświetlać interfejs tylko użytkownikom, którzy mówią po francusku.
Rozpocznij
Uruchom wykrywanie funkcji, aby sprawdzić, czy przeglądarka obsługuje interfejs Language Detector API.
if ('LanguageDetector' in self) {
// The Language Detector API is available.
}
Pobieranie modelu
Wykrywanie języka zależy od modelu dostrojonego do konkretnego zadania wykrywania języków. Interfejs API jest wbudowany w przeglądarkę, ale model jest pobierany na żądanie, gdy strona po raz pierwszy próbuje użyć interfejsu API. W Chrome ten model jest bardzo mały w porównaniu z innymi modelami. Może być już dostępny, ponieważ ten model jest używany przez inne funkcje Chrome.
Aby sprawdzić, czy model jest gotowy do użycia, wywołaj asynchroniczną funkcję LanguageDetector.availability()
. Jeśli odpowiedź na pytanie availability()
brzmiała downloadable
, sprawdź postęp pobierania i poinformuj o nim użytkownika, ponieważ pobieranie może zająć trochę czasu.
Aby rozpocząć pobieranie i utworzyć instancję detektora języka, sprawdź aktywację przez użytkownika. Następnie wywołaj asynchroniczną funkcję LanguageDetector.create()
.
const detector = await LanguageDetector.create({
monitor(m) {
m.addEventListener('downloadprogress', (e) => {
console.log(`Downloaded ${e.loaded * 100}%`);
});
},
});
Uruchomienie narzędzia do wykrywania języka
Interfejs Language Detector API używa modelu rankingowego, aby określić, który język jest najbardziej prawdopodobny w danym tekście. Ranking to typ uczenia maszynowego, którego celem jest uporządkowanie listy elementów. W tym przypadku interfejs Language Detector API szereguje języki od największego do najmniejszego prawdopodobieństwa.
Funkcja detect()
może zwracać pierwszy wynik, najbardziej prawdopodobną odpowiedź lub iterować po uszeregowanych kandydatach z określonym poziomem pewności.
Jest zwracana jako lista obiektów {detectedLanguage, confidence}
. Poziom confidence
jest wyrażony jako wartość z zakresu od 0.0
(najniższy poziom ufności) do 1.0
(najwyższy poziom ufności).
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
// ...
Plac zabaw API
Wypróbuj interfejs Language Detector API na naszej platformie testowej API. Wpisz w polu tekstowym tekst napisany w różnych językach.
Zasady dotyczące uprawnień, elementy iframe i skrypty Web Worker
Domyślnie interfejs Language Detector API jest dostępny tylko w oknach najwyższego poziomu i w ramkach iframe z tej samej domeny. Dostęp do interfejsu API można delegować na elementy iframe z innych domen za pomocą atrybutu allow=""
zasad dotyczących uprawnień:
<!--
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>
Interfejs Language Detector API nie jest dostępny w przypadku Web Workers. Wynika to ze złożoności procesu tworzenia odpowiedniego dokumentu dla każdego pracownika w celu sprawdzenia stanu zasad dotyczących uprawnień.
Prześlij opinię
Chcemy zobaczyć, co tworzysz za pomocą interfejsu Language Detector API. Podziel się z nami swoimi witrynami i aplikacjami internetowymi na X, YouTube i LinkedIn.
Jeśli masz uwagi na temat implementacji Chrome, zgłoś błąd w Chromium.