Yayınlanma tarihi: 13 Kasım 2024, Son güncelleme tarihi: 20 Mayıs 2025
Browser Support
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.