Plac zabaw Chrome AI Translator
Testuj eksperymentalne wbudowane API Translatora i Detektora Języka Chrome bezpośrednio w przeglądarce. Tłumacz tekst na urządzeniu, automatycznie wykrywaj język źródłowy, obserwuj postęp pobierania modelu i sprawdzaj pewność wykrycia języka — bez serwera.
Wejście
Wyjście
Instrukcja
Czym jest wbudowany interfejs Translator API przeglądarki Chrome?
Translator API to eksperymentalna funkcja platformy internetowej, która umożliwia stronie internetowej tłumaczenie tekstu bezpośrednio w przeglądarce, używając lokalnie dołączonego modelu AI zarządzanego przez agenta użytkownika. Zamiast wysyłać tekst do zdalnej usługi tłumaczenia, przeglądarka udostępnia interfejs JavaScript (window.Translator), który tworzy krótkotrwałe sesje tłumaczenia dla danej pary języka źródłowego/docelowego i zwraca przetłumaczone ciągi asynchronicznie.
Towarzyszący interfejs Language Detector API (window.LanguageDetector) sprawdza ciąg i zwraca posortowaną listę prawdopodobnych tagów języka BCP-47 z wynikami pewności. Razem te dwa interfejsy umożliwiają stronie wykrycie języka dowolnego wejścia, a następnie jego tłumaczenie bez żadnego przesyłu sieciowego po początkowym pobraniu modelu.
Ponieważ model działa na urządzeniu użytkownika, tłumaczenia działają w trybie offline po pobraniu, wrażliwy tekst nigdy nie opuszcza maszyny i nie ma kosztów API za żądanie. Kompromisem jest to, że dostępność zależy od przeglądarki, systemu operacyjnego i tego, czy żądana para języków została pobrana.
Opis narzędzia
Ten plac zabaw to interaktywne środowisko do testowania interfejsów Translator i Language Detector w Twojej przeglądarce. Łączy obszar wejściowy, selektor języka docelowego i obszar wyjściowy z podstawowymi wywołaniami Translator.create() / translate() i wyświetla stan dostępności modelu oraz postęp pobierania podczas eksperymentowania.
Język źródłowy domyślnie ustawiony jest na "Automatyczne wykrycie", które kieruje wejście przez LanguageDetector najpierw, a następnie przekazuje wykryty język do tłumacza. Możesz również jawnie przypiąć język źródłowy, aby pominąć wykrywanie.
Przykłady
| Źródło (automatycznie wykryte) | Docelowy | Wyjście |
|---|---|---|
Bonjour, comment ça va ? |
English | Hello, how are you? |
Guten Morgen, wie geht es dir? |
Spanish | Buenos días, ¿cómo estás? |
今日は良い天気ですね。 |
English | The weather is nice today. |
Funkcje
- Automatyczne wykrycie języka — używa interfejsu Language Detector API do identyfikacji języka źródłowego przed tłumaczeniem.
- Dwukierunkowy selektor języka — zamień źródło i cel jednym kliknięciem i przetłumacz ponownie.
- Stan dostępności na żywo — pokazuje, czy żądany model jest
available,downloadable,downloadinglubunavailable. - Pasek postępu pobierania — przesyła zdarzenia
downloadprogressz tłumacza/detektora podczas pobierania modelu. - Tłumaczenie na urządzeniu, w trybie offline — po pobraniu modelu nie są wykonywane żadne żądania sieciowe do tłumaczenia.
Przypadki użycia
- Podgląd zlokalizowanej kopii — wklej ciąg i natychmiast zobacz, jak czyta się w innym języku podczas redagowania tekstu interfejsu użytkownika.
- Weryfikacja obsługi przeglądarki — sprawdź, czy określona para źródło/cel jest dostępna przed wdrożeniem funkcji, która zależy od interfejsu Translator API.
- Szybkie tłumaczenie w trybie offline — tłumacz fragmenty bez połączenia, po pobraniu odpowiedniego pakietu języka.
Wymagania
- Przeglądarka, która implementuje interfejsy Translator i Language Detector API. W momencie pisania tego tekstu jest to Chrome 138+ i przeglądarki oparte na Chromium (np. Opera 122+) na komputerze stacjonarnym. Edge, Firefox i Safari nie są jeszcze obsługiwane.
- Bezpieczny kontekst (HTTPS lub
localhost). - Przejściowa aktywacja użytkownika — interfejsy API zezwalają na
create()tylko po niedawnym geście użytkownika, dlatego tłumaczenie jest uruchamiane na wejściu, a nie przy ładowaniu strony. - Wystarczająca przestrzeń dyskowa i przepustowość dla początkowego pobierania modelu języka. Kolejne tłumaczenia ponownie wykorzystują buforowany model.
Jak to działa
- Po zainstalowaniu narzędzie sprawdza
window.Translatoriwindow.LanguageDetector. Jeśli któregoś brakuje, wyświetlane jest ostrzeżenie i wejście jest wyłączone. - Podczas pisania wejście jest opóźniane i rozpoznawana jest para źródło/cel (najpierw uruchamiając
LanguageDetector.detect(), jeśli źródło toauto). Translator.availability({ sourceLanguage, targetLanguage })jest wywoływany w celu zbadania stanu modelu dla tej pary.Translator.create()jest wywoływany z wywołaniem zwrotnymmonitor, które nasłuchuje zdarzeńdownloadprogressi aktualizuje pasek postępu.translator.translate(text)zwraca przetłumaczony ciąg, który jest renderowany w obszarze wyjściowym.- Instancje tłumacza i detektora są zwalniane za pośrednictwem
destroy()po każdym wywołaniu w celu zwolnienia zasobów.
Obsługiwane języki
Selektor udostępnia wyselekcjonowaną listę wspólnych tagów języka BCP-47, które obsługuje lub regularnie testuje model dołączony do Chrome'a, w tym:
en, es, fr, de, it, pt, nl, pl, ru, uk, tr, ar, hi, bn, ja, ko, zh, zh-Hant, vi, th, id, sv, no, fi, da, el, he, cs, ro, hu.
Rzeczywisty zestaw użytecznych par zależy od tego, co model przeglądarki pobrał lub może pobrać. Pary zgłoszone jako unavailable nie mogą być tłumaczone w Twojej obecnej przeglądarce.
Ograniczenia
- Interfejsy API są eksperymentalne i powierzchnia może się zmieniać między wersjami przeglądarki.
- Jakość tłumaczenia jest określona przez model dostarczony przez przeglądarkę i nie jest gwarantowana, że będzie zgodna z dedykowanymi usługami tłumaczenia w chmurze.
- Niektóre pary języków mogą wymagać pośredniego przejścia przez angielski lub mogą być po prostu niedostępne.
- Pierwsze tłumaczenie dla nowej pary języków może być powolne z powodu pobierania modelu.
- Interfejsy API nie są obecnie udostępniane pracownikom sieciowym i mogą być blokowane za pomocą Polityki uprawnień (
translator,language-detector) na ramkach między źródłami.
Często zadawane pytania
Dlaczego wyjście pozostaje puste? Interfejs Translator API prawdopodobnie nie jest zaimplementowany w Twojej przeglądarce. Otwórz stronę w Chrome 138+ na komputerze stacjonarnym i odśwież.
Dlaczego wyświetlane jest "Pobieranie modelu…"?
Przy pierwszym użyciu pary języków przeglądarka pobiera pakiet modelu. Pasek postępu odzwierciedla zdarzenia downloadprogress emitowane przez Translator.create().
Czy mój tekst opuszcza urządzenie? Nie. Po pobraniu modelu tłumaczenie odbywa się całkowicie na urządzeniu. Samo narzędzie nie wysyła Twojego wejścia nigdzie.
Dlaczego "Automatyczne wykrycie" czasami zawodzi?
Jeśli wejście jest zbyt krótkie, niejednoznaczne lub w skrypcie, którego detektor nie widział, LanguageDetector.detect() może zwrócić und (nieokreślone). W takim przypadku ręcznie wybierz język źródłowy.