Hva er Chromes innebygde Translator API?

Translator API er en eksperimentell webplattformfunksjon som lar en nettside oversette tekst direkte i nettleseren ved hjelp av en lokalt samlet AI-modell som administreres av brukeragenten. I stedet for å sende tekst til en ekstern oversettelsestjeneste, eksponerer nettleseren et JavaScript-grensesnitt (window.Translator) som oppretter kortvarige oversettelsessesjoner for et gitt kilde-/målspråkpar og returnerer oversatte strenger asynkront.

Den medfølgende Language Detector API (window.LanguageDetector) inspiserer en streng og returnerer en rangert liste over sannsynlige BCP-47-språkkoder med tillitsscore. Sammen tillater de to APIene en side å oppdage språket for vilkårlig inndata og deretter oversette det uten noen nettverksrundtur etter den første modelledannelsen.

Fordi modellen kjører på brukerens enhet, fungerer oversettelser offline når de er lastet ned, sensitiv tekst forlater aldri maskinen, og det er ingen API-kostnader per forespørsel. Avveiningen er at tilgjengeligheten avhenger av nettleseren, operativsystemet og om det forespurte språkparet er lastet ned.

Verktøybeskrivelse

Denne lekeplassen er et praktisk miljø for testing av Translator og Language Detector APIene i din egen nettleser. Den kobler et inndataområde, en målspråkvelger og et utdataområde til de underliggende Translator.create() / translate()-kallene, og viser modellens tilgjengelighetstilstand og nedlastingsfremdrift mens du eksperimenterer.

Kildespråket er som standard "Auto detect", som ruter inndataene gjennom LanguageDetector først og deretter videresender det oppdagede språket til oversettelsen. Du kan også feste kildespråket eksplisitt for å hoppe over deteksjon.

Eksempler

Kilde (automatisk oppdaget) Mål Utdata
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.

Funksjoner

  • Automatisk språkdeteksjon — bruker Language Detector API til å identifisere kildespråket før oversettelse.
  • Toveis språkvelger — bytt kilde og mål med ett klikk og oversett på nytt.
  • Direktetilgjengelighetstilstand — viser om den forespurte modellen er available, downloadable, downloading eller unavailable.
  • Nedlastingsfremdriftslinje — strømmer downloadprogress-hendelser fra oversettelsen/detektoren mens modellen hentes.
  • Oversettelse på enheten, offline — når modellen er lastet ned, gjøres ingen nettverksforespørsler for å oversette.

Brukstilfeller

  • Forhåndsvisning av lokalisert kopi — lim inn en streng og se umiddelbart hvordan den leses på et annet språk mens du utarbeider UI-tekst.
  • Verifisering av nettleserstøtte — kontroller om et spesifikt kilde-/målpar er tilgjengelig før du leverer en funksjon som avhenger av Translator API.
  • Rask offline-oversettelse — oversett kodebiter mens du er frakoblet, etter at den relevante språkpakken er lastet ned.

Krav

  • En nettleser som implementerer Translator og Language Detector APIene. Fra og med skrivingen er dette Chrome 138+ og Chromium-baserte nettlesere (f.eks. Opera 122+) på skrivebord. Edge, Firefox og Safari støttes ikke ennå.
  • En sikker kontekst (HTTPS eller localhost).
  • Forbigående brukeraktivering — APIene tillater bare create() etter en nylig brukergest, og det er derfor oversettelse kjøres på inndata i stedet for ved sidelasting.
  • Tilstrekkelig diskplass og båndbredde for den første språkmodellnedlastingen. Påfølgende oversettelser gjenbruker den bufrede modellen.

Hvordan det fungerer

  1. Ved montering kontrollerer verktøyet for window.Translator og window.LanguageDetector. Hvis noen av dem mangler, vises en advarsel og inndataene deaktiveres.
  2. Når du skriver, blir inndataene dempet og kilde-/målparet løses (kjører LanguageDetector.detect() først hvis kilden er auto).
  3. Translator.availability({ sourceLanguage, targetLanguage }) kalles for å spørre modellens tilstand for det paret.
  4. Translator.create() påkalles med en monitor-tilbakekall som lytter etter downloadprogress-hendelser og oppdaterer fremdriftslinjen.
  5. translator.translate(text) returnerer den oversatte strengen, som gjengis i utdataområdet.
  6. Oversettelsen og detektørforekomstene frigjøres via destroy() etter hvert kall for å frigjøre ressurser.

Støttede språk

Velgeren eksponerer en kuratert liste over vanlige BCP-47-språkkoder som Chromes samlet modell støtter eller vanligvis tester, inkludert:

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.

Det faktiske settet med brukbare par avhenger av hva den underliggende nettlesermodellen har lastet ned eller kan laste ned. Par rapportert som unavailable kan ikke oversettes i din nåværende nettleser.

Begrensninger

  • APIene er eksperimentelle og overflaten kan endres mellom nettleserversjoner.
  • Oversettelseskvaliteten bestemmes av nettleserleverandørens modell og er ikke garantert å samsvare med dedikerte skytranslasjonistjenester.
  • Noen språkpar kan kreve en mellomliggende pivot gjennom engelsk eller kan ganske enkelt være utilgjengelige.
  • Den første oversettelsen for et nytt språkpar kan være treg på grunn av modelledannelsen.
  • APIene er for øyeblikket ikke eksponert for webarbeidere og kan være gated bak en Permissions Policy (translator, language-detector) på tverrorgins-iframes.

Vanlige spørsmål

Hvorfor forblir utdataene tomme? Translator API er sannsynligvis ikke implementert i nettleseren din. Åpne siden i Chrome 138+ på skrivebord og last inn på nytt.

Hvorfor vises "Laster ned modell…"? Første gang du bruker et språkpar, laster nettleseren ned en modellpakke. Fremdriftslinjen gjenspeiler downloadprogress-hendelsene som sendes ut av Translator.create().

Forlater teksten min enheten? Nei. Etter at modellen er lastet ned, skjer oversettelse helt på enheten. Selve verktøyet sender ikke inndataene dine noe sted.

Hvorfor mislykkes "Auto detect" noen ganger? Hvis inndataene er for korte, tvetydige eller i et skript detektøren ikke har sett, kan LanguageDetector.detect() returnere und (undetermined). Velg kildespråket manuelt i så fall.