Gepubliceerd: 13 november 2024
Gebruik de Translator API in Chrome om tekst in de browser te vertalen met behulp van lokale AI-modellen.
Uw website biedt mogelijk al website-inhoud in meerdere talen, om deze toegankelijk te maken voor een wereldwijd publiek. Met de Translator API kunnen gebruikers bijdragen in hun eerste taal. Gebruikers kunnen bijvoorbeeld deelnemen aan ondersteuningchats in hun eerste taal, en uw site kan deze vertalen naar de taal die uw ondersteuningsagenten gebruiken, voordat deze het apparaat van de gebruiker verlaat. Dit zorgt voor een soepele, snelle en inclusieve ervaring voor alle gebruikers.
Voor de vertaling van inhoud op internet is doorgaans het gebruik van een cloudservice vereist. Eerst wordt de broninhoud geüpload naar een server, die de vertaling naar een doeltaal uitvoert, waarna de resulterende tekst wordt gedownload en teruggestuurd naar de gebruiker. Door de vertaling op de client uit te voeren, bespaart u de tijd die nodig is voor servertrips en de kosten voor het hosten van de vertaalservice.
Beschikbaarheid
- Neem deel aan de Translator API Origin-proefversie , uitgevoerd in Chrome 131 tot 137. Origin-proefversies schakelen de functie in voor alle gebruikers op uw oorsprong in Chrome.
- Volg onze implementatie in ChromeStatus .
- Het Translator API-voorstel staat open voor discussie .
- Sluit u aan bij het vroege preview-programma voor een eerste blik op nieuwe ingebouwde AI API's en toegang tot discussies op onze mailinglijst.
Hoewel de geselecteerde doeltaal altijd bekend is, kan de brontaal in sommige situaties onbekend zijn, bijvoorbeeld bij door gebruikers gegenereerde inhoud. In dergelijke gevallen omvat het Translator API-voorstel zowel de Translator API als de Language Detector API , die ook beschikbaar zijn in een origin-proefversie . Meld u aan voor beide origin-proefversies om deze API's samen te gebruiken.
Meld u aan voor de origin-proefperiode
Volg deze stappen om de Translator API te gaan gebruiken:
- Erken het beleid van Google inzake verboden gebruik van generatieve AI .
- Ga naar de Translator API Origin-proefversie .
- Klik op Registreren en vul het formulier in.
- Geef in het veld Weboorsprong uw herkomst- of extensie-ID op:
chrome-extension://YOUR_EXTENSION_ID
.
- Geef in het veld Weboorsprong uw herkomst- of extensie-ID op:
- Om te verzenden klikt u op Registreren .
- Kopieer het verstrekte token en voeg het toe aan elke webpagina op uw oorsprong of bestand voor uw extensie waarop u de proefversie wilt inschakelen.
- Als u een extensie bouwt, volgt u de oorspronkelijke proefinstructies voor Extensies
- Begin met het gebruik van de Translator API .
Lees meer over hoe u aan de slag kunt gaan met origin-proeven .
Gebruik de Translator-API
Om te bepalen of de Translator API wordt ondersteund, voert u het volgende functiedetectiefragment uit.
if ('translation' in self && 'createTranslator' in self.translation) {
// The Translator API is supported.
}
Controleer de ondersteuning voor taalparen
De vertaling wordt beheerd met taalpakketten, die op aanvraag kunnen worden gedownload. Een taalpakket is als een woordenboek voor een bepaalde taal. Deze pakketten zijn gekoppeld aan de asynchrone functie canTranslate()
, waarmee u kunt bepalen of een talenpaar wordt ondersteund.
De functie canTranslate()
vereist een options
met twee velden:
-
sourceLanguage
: De huidige taal voor de tekst. -
targetLanguage
: De uiteindelijke taal waarin de tekst moet worden vertaald.
Gebruik korte BCP 47 -taalcodes als tekenreeksen. Bijvoorbeeld 'es'
voor Spaans of 'fr'
voor Frans.
await translation.canTranslate({
sourceLanguage: 'en',
targetLanguage: 'fr',
});
// 'readily'
De functie canTranslate()
kan een van de volgende resultaten retourneren:
-
no
: Deze browser kan niet vertalen zoals gevraagd. -
readily
: de browser kan vertalen zoals gevraagd. -
after-download
: De browser kan de vertaling uitvoeren, maar alleen nadat het relevante model- of taalpakketten is gedownload.
U kunt de downloadvoortgang beluisteren met behulp van de downloadprogress
-gebeurtenis:
translator.ondownloadprogress = progressEvent => {
updateDownloadProgressBar(progressEvent.loaded, progressEvent.total);
};
Als het downloaden mislukt, worden downloadprogress
-gebeurtenissen niet meer verzonden en wordt de ready
afgewezen.
Maak de vertaler en voer deze uit
Om een vertaler te maken, roept u de functie asynchrone translation.createTranslator()
aan. Net als canTranslate()
vereist het een optieparameter met twee velden, één voor de sourceLanguage
en één voor de targetLanguage
.
// Create a translator that translates from English to French.
const translator = await self.translation.createTranslator({
sourceLanguage: 'en',
targetLanguage: 'fr',
});
Zodra u een vertaler heeft, roept u de functie asynchrone translate()
aan om uw tekst te vertalen.
await translator.translate('Where is the next bus stop, please?');
// "Où est le prochain arrêt de bus, s'il vous plaît ?"
Beperkingen in het oorsprongsproces
Tijdens de origin-proefperiode zijn de volgende beperkingen van toepassing.
Ondersteunde taalparen
Op dit moment kunnen maximaal drie taalpakketten worden gedownload voor vertaling. We streven ernaar om het bereik van ondersteunde talen in toekomstige releases uit te breiden, terwijl we hoge normen voor gebruikersprivacy handhaven. U kunt bevestigen of het talenpaar dat u nodig hebt, wordt ondersteund met de functie canTranslate()
.
Het is mogelijk dat bepaalde, minder vaak gebruikte taalparen worden gebruikt voor het nemen van vingerafdrukken . Het is bijvoorbeeld gebruikelijker om te vertalen tussen Engels en Spaans dan tussen minder gebruikelijke talen, zoals Gaelic en Catalaans. Een minder gebruikelijk talenpaar zou kunnen worden beschouwd als een datapunt voor gebruikersidentificatie.
Tijdens de origin-proefperiode beperken we de mogelijke vertaalbare taalparen om de privacy van gebruikers te beschermen. Taalparen moeten aan de volgende criteria voldoen:
- Zowel de bron- als de doeltaal zijn ingesteld als voorkeurstaal in Chrome.
- Of een van de talen is ingesteld als voorkeurstaal in Chrome, en de andere behoort tot de volgende populaire talen :
- Engels (
en
) - Mandarijn Chinees (
zh
; vereenvoudigd) of Taiwanees Mandarijn (zh-Hant
; traditioneel) - Japans (
ja
) - Portugees (
pt
) - Russisch (
ru
) - Spaans (
es
) - Turks (
tr
) - Hindi (
hi
) - Vietnamees (
vi
) - Bengaals (
bn
)
- Engels (
Omzeil taalbeperkingen voor lokaal testen
Voor lokale prototyping kunt u deze controles omzeilen door Chrome uit te voeren met de opdrachtregeloptie --disable-features=TranslationAPIAcceptLanguagesCheck
. U kunt ook chrome://flags/#translation-api
instellen op Inschakelen zonder taalpakketlimiet .
Ga naar chrome://on-device-translation-internals/
om taalpakketten handmatig te installeren en te verwijderen.
Sequentiële vertalingen
Vertalingen worden opeenvolgend verwerkt. Als u grote hoeveelheden tekst ter vertaling verzendt, worden daaropvolgende vertalingen geblokkeerd totdat de eerdere vertalingen zijn voltooid.
Voor de beste reactiesnelheid van uw vertaalverzoeken kunt u ze samenvoegen en overwegen een laadinterface weer te geven, zoals een spinner, om aan te geven dat er een vertaling gaande is.
Beschikbaarheid van webwerkers
Tijdens de origin-proefperiode wordt de Translator API alleen ondersteund vanuit de hoofdthread. We zijn van plan dit te ondersteunen in webwerkers zodra de API algemeen beschikbaar is.
Demo
U kunt de Translator API, gebruikt in combinatie met de Language Detector API, bekijken in de Translator and Language Detector API-speeltuin .
Standaardisatie-inspanning
We werken aan het standaardiseren van de Translator API om compatibiliteit tussen browsers te garanderen.
Ons API-voorstel kreeg steun van de gemeenschap en is voor verdere discussie verplaatst naar de W3C Web Incubator Community Group . Het Chrome-team vroeg om feedback van de W3C Technical Architecture Group en vroeg Mozilla en WebKit naar hun standaardposities.
Doe mee en deel feedback
Begin nu met het testen van de Translator API door deel te nemen aan de origin-proefperiode en deel uw feedback. Uw input kan rechtstreeks van invloed zijn op de manier waarop we toekomstige versies van deze API en alle ingebouwde AI API's bouwen en implementeren.
- Voor feedback over de implementatie van Chrome kunt u een bugrapport of een functieverzoek indienen.
- Bespreek het Translator API-ontwerp op GitHub door commentaar te geven op een bestaand probleem of een nieuw probleem te openen.
- Neem deel aan de inspanningen op het gebied van standaarden door lid te worden van de Web Incubator Community Group .