Yerleşik yapay zeka ile çeviri

Yayınlanma tarihi: 13 Kasım 2024, Son güncelleme tarihi: 20 Mayıs 2025

Browser Support

  • Chrome: 138.
  • Edge: not supported.
  • Firefox: not supported.
  • Safari: not supported.

Tarayıcıda sağlanan yapay zeka modelleriyle metin çevirmek için Chrome'daki Translator API'yi kullanın.

Web siteniz, web sitesi içeriğini birden fazla dilde sunuyor olabilir. Çeviri API'si sayesinde kullanıcılar kendi dillerinde yazabilir. Örneğin, kullanıcılar destek sohbetlerine ilk dillerinde katılabilir ve siteniz, mesaj kullanıcının cihazından ayrılmadan önce mesajı destek temsilcilerinizin ilk diline çevirebilir. Bu sayede tüm kullanıcılar için sorunsuz, hızlı ve kapsayıcı bir deneyim sağlanır.

Web içeriğinin çevrilmesi genellikle bir bulut hizmetinin kullanılmasını gerektirir. Öncelikle kaynak içerik, çeviriyi hedef dile yapan bir sunucuya yüklenir. Ardından, ortaya çıkan metin indirilip kullanıcıya geri gönderilir. İçerik geçici olduğunda ve bir veritabanına kaydedilmesi gerekmediğinde, istemci tarafı çeviri, barındırılan bir çeviri hizmetine kıyasla zamandan ve maliyetten tasarruf sağlar.

Başlayın

Tarayıcının Çeviri API'sini destekleyip desteklemediğini görmek için özellik algılama işlemini çalıştırın.

if ('Translator' in self) {
  // The Translator API is supported.
}

Çevirilerde hedef dili her zaman bilirsiniz ancak kaynak dili her zaman bilemeyebilirsiniz. Bu gibi durumlarda Language Detector API'yi kullanabilirsiniz.

Model indirme

Translator API, yüksek kaliteli çeviriler oluşturmak için eğitilmiş bir uzman modelini kullanır. API, Chrome'a yerleşiktir ve model, bir web sitesi bu API'yi ilk kez kullandığında indirilir.

Modelin kullanıma hazır olup olmadığını belirlemek için eşzamansız Translator.availability() işlevini çağırın. availability() yanıtı downloadable ise indirme işleminin ilerleme durumunu dinleyerek kullanıcıyı bilgilendirin. Bu işlem zaman alabilir.

Dil çifti desteğini kontrol etme

Çeviri, isteğe bağlı olarak indirilen dil paketleriyle yönetilir. Dil paketleri, belirli bir dilin sözlüğü gibidir.

  • sourceLanguage: Metnin mevcut dili.
  • targetLanguage: Metnin çevrileceği son dil.

BCP 47 dil kısa kodlarını dize olarak kullanın. Örneğin, İspanyolca için 'es' veya Fransızca için 'fr'.

const translatorCapabilities = await Translator.availability({
  sourceLanguage: 'es',
  targetLanguage: 'fr',
});
// 'available'

downloadprogress etkinliğiyle model indirme ilerleme durumunu dinleyin:

const translator = await Translator.create({
  sourceLanguage: 'es',
  targetLanguage: 'fr',
  monitor(m) {
    m.addEventListener('downloadprogress', (e) => {
      console.log(`Downloaded ${e.loaded * 100}%`);
    });
  },
});

İndirme başarısız olursa downloadprogress etkinlikleri durdurulur ve ready sözü reddedilir.

Çevirici oluşturma ve çalıştırma

Çevirmen oluşturmak için kullanıcı etkinleştirme işlemini kontrol edin ve eşzamansız create() işlevini çağırın. Çevirici create() işlevi, iki alanlı bir seçenek parametresi gerektirir. Bu alanlardan biri sourceLanguage, diğeri ise targetLanguage içindir.

// Create a translator that translates from English to French.
const translator = await Translator.create({
  sourceLanguage: 'en',
  targetLanguage: 'fr',
});

Çevirmeniniz olduğunda eşzamansız translate() işlevini çağırın.

await translator.translate('Where is the next bus stop, please?');
// "Où est le prochain arrêt de bus, s'il vous plaît ?"

Alternatif olarak, daha uzun metinlerle çalışmanız gerekiyorsa API'nin akış sürümünü de kullanabilir ve translateStreaming() çağrısı yapabilirsiniz.

const stream = translator.translateStreaming(longText);
for await (const chunk of stream) {
  console.log(chunk);
}

Sıralı çeviriler

Çeviriler sırayla işlenir. Çevrilmesi için büyük miktarda metin gönderirseniz önceki çeviriler tamamlanana kadar sonraki çeviriler engellenir.

İsteklerinize en iyi yanıtı almak için isteklerinizi birleştirin ve çeviri işleminin devam ettiğini belirtmek üzere döner simge gibi bir yükleme arayüzü ekleyin.

Demo

Language Detector API ile birlikte kullanılan Translator API'yi Translator and Language Detector API playground'da görebilirsiniz.

İzin politikası, iframe'ler ve Web Workers

Çeviri API'si varsayılan olarak yalnızca üst düzey pencerelerde ve aynı kaynaklı iframe'lerde kullanılabilir. API'ye erişim, Permissions Policy allow="" özelliği kullanılarak çapraz kaynak iframe'lere devredilebilir:

<!--
  The host site https://main.example.com can grant a cross-origin iframe
  at https://cross-origin.example.com/ access to the Translator API by
  setting the `allow="translator"` attribute.
-->
<iframe src="https://cross-origin.example.com/" allow="translator"></iframe>

İzin politikası durumunu kontrol etmek için her çalışanla ilgili sorumlu bir belge oluşturmanın karmaşıklığı nedeniyle Translator API, Web Workers'ta kullanılamaz.

Geri bildirim

Geliştirdiğiniz projeleri görmek istiyoruz. Web sitelerinizi ve web uygulamalarınızı X, YouTube ve LinkedIn'de bizimle paylaşın.

Chrome'un uygulamasıyla ilgili geri bildirim için hata raporu veya özellik isteği gönderin.