Yayınlanma tarihi: 12 Kasım 2024
Yerel yapay zeka modellerini kullanarak tarayıcıdaki metni çevirmek için Chrome'da Translator API'yi kullanın.
Web siteniz, dünya genelindeki kitlelere erişilebilir olması için web sitesi içeriğini zaten birden fazla dilde sunuyor olabilir. Kullanıcılar, Translator API ile ana dillerinde katkıda bulunabilir. Örneğin, kullanıcılar destek sohbetlerine kendi ana dillerinde katılabilir ve siteniz, kullanıcının cihazından çıkmadan önce bu sohbeti destek temsilcilerinizin kullandığı dile çevirebilir. Bu sayede tüm kullanıcılar sorunsuz, hızlı ve kapsayıcı bir deneyim yaşar.
Web'deki içeriğin çevrilmesi genellikle bir bulut hizmetinin kullanılmasını gerektiriyordu. Öncelikle kaynak içerik, çeviriyi hedef dile çalıştıran bir sunucuya yüklenir. Ardından, ortaya çıkan metin indirilir ve kullanıcıya döndürülür. Çeviriyi istemcide çalıştırarak sunucu gezilerinin gerektirdiği zamandan ve çeviri hizmetinin barındırma maliyetinden tasarruf edersiniz.
Kullanılabilirlik
- API'yi üretim ortamındaki gerçek kullanıcılarla test etmek için Chrome 131 ile 137 arasında çalışan Translator API kaynak deneme sürümüne katılın. Kaynak denemeleri, Chrome'da kaynağınızdaki tüm kullanıcılar için bu özelliği etkinleştirir. Kaynak denemelerini kullanmaya nasıl başlayacağınızı öğrenin.
- ChromeStatus'taki uygulamamızı takip edin.
- Çevirmen API'si teklifi tartışmaya açıktır.
- Yeni yerleşik AI API'lerine önceden göz atmak ve posta listemizdeki tartışmalara erişmek için erken önizleme programına katılın.
Seçilen hedef dil her zaman bilinse de bazı durumlarda (ör. kullanıcı tarafından oluşturulan içerik) kaynak dil bilinmeyebilir. Bu tür durumlarda Translator API teklifi hem Translator API'yi hem de orijinal deneme sürümünde de kullanılabilen Language Detector API'yi içerir. Bu API'leri birlikte kullanmak için her iki kaynak denemesine de kaydolun.
Özellik algılama
Translator API'nin desteklenip desteklenmediğini belirlemek için aşağıdaki özellik algılama snippet'ini çalıştırın.
if ('translation' in self && 'createTranslator' in self.translation) {
// The Translator API is supported.
}
Dil çifti desteğini kontrol etme
Çeviri, isteğe bağlı olarak indirilen dil paketleriyle yönetilir. Dil paketi, belirli bir dile ait bir sözlük gibidir. Bu paketler, bir dil çiftinin desteklenip desteklenmediğini belirlemenize olanak tanıyan asenkron canTranslate()
işleviyle eşlenir.
canTranslate()
işlevi için iki alanı olan bir options
parametresi gerekir:
sourceLanguage
: Metnin geçerli 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'
.
await translation.canTranslate({
sourceLanguage: 'en',
targetLanguage: 'fr',
});
// 'readily'
canTranslate()
işlevi aşağıdaki sonuçlardan herhangi birini döndürebilir:
no
: Bu tarayıcı istendiği şekilde çeviri yapamaz.readily
: Tarayıcı, istenen şekilde çeviri yapabilir.after-download
: Tarayıcı, çeviriyi ancak ilgili modeli veya dil paketlerini indirdikten sonra gerçekleştirebilir.
downloadprogress
etkinliğini kullanarak indirme işleminin ilerleme durumunu dinleyebilirsiniz:
translator.ondownloadprogress = progressEvent => {
updateDownloadProgressBar(progressEvent.loaded, progressEvent.total);
};
İndirme başarısız olursa downloadprogress
etkinlikleri yayınlanmayı durdurur ve ready
sözlüğü reddedilir.
Çevirmeni oluşturma ve çalıştırma
Çevirmen oluşturmak için translation.createTranslator()
işlevini ayarlayın. canTranslate()
gibi, biri sourceLanguage
, diğeri targetLanguage
için olmak üzere iki alan içeren bir seçenekler parametresi gerektirir.
// Create a translator that translates from English to French.
const translator = await self.translation.createTranslator({
sourceLanguage: 'en',
targetLanguage: 'fr',
});
Çevirmeniniz hazır olduğunda metninizi çevirmek için 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 ?"
Kaynak denemesinde sınırlamalar
Kaynak denemesi sırasında aşağıdaki sınırlamalar geçerlidir.
Desteklenen dil çiftleri
Şu anda çeviri için en fazla üç dil paketi indirilebilir.
Kullanıcı gizliliği konusunda yüksek standartları korurken gelecekteki sürümlerde desteklenen dillerin kapsamını genişletmeye kararlıyız. İhtiyacınız olan dil çiftinin desteklenip desteklenmediğini canTranslate()
işleviyle onaylayabilirsiniz.
Daha seyrek kullanılan belirli dil çiftleri parmak izi için kullanılabilir. Örneğin, İngilizce ve İspanyolca arasında çeviri yapmak, Galce ve Katalanca gibi daha az yaygın diller arasında çeviri yapmaktan daha yaygındır. Daha az yaygın bir dil çifti, kullanıcı tanımlama için bir veri noktası olarak kabul edilebilir.
Kaynak denemesi sırasında, kullanıcı gizliliğini korumak için çevrilebilecek dil çiftlerini sınırlıyoruz. Dil çiftleri aşağıdaki ölçütleri karşılamalıdır:
- Hem kaynak hem de hedef dil, Chrome'da tercih edilen diller olarak ayarlanır.
- Alternatif olarak, dillerden biri Chrome'da tercih edilen dil olarak ayarlanmış, diğeri ise aşağıdaki popüler diller arasındadır:
- İngilizce (
en
) - Çince (Mandarin) (
zh
; basitleştirilmiş) veya Tayvan Mandarini (zh-Hant
; geleneksel) - Japonca (
ja
) - Portekizce (
pt
) - Rusça (
ru
) - İspanyolca (
es
) - Türkçe (
tr
) - Hintçe (
hi
) - Vietnamca (
vi
) - Bengalce (
bn
)
- İngilizce (
Yerel test için dil kısıtlamalarını atlama
Yerel prototipleme için Chrome'u --disable-features=TranslationAPIAcceptLanguagesCheck
komut satırı seçeneğiyle çalıştırarak bu kontrolleri atlayabilirsiniz.
Alternatif olarak, chrome://flags/#translation-api
öğesini Dil paketi sınırı olmadan etkinleştir olarak ayarlayın.
Dil paketlerini manuel olarak yüklemek ve kaldırmak için chrome://on-device-translation-internals/
adresini ziyaret edin.
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.
Çeviri isteklerinizin en iyi şekilde yanıtlanması için bunları gruplandırın ve çevirinin devam ettiğini belirtmek üzere döner simge gibi bir yükleme arayüzü gösterin.
Web işçisinin kullanılabilirliği
Kaynak denemesi sırasında Translator API yalnızca ana mesaj dizisinden desteklenir. API yaygın olarak kullanıma sunulduğunda web işçilerinde bu özelliği desteklemeyi planlıyoruz.
Demo
Çevirmen ve Dil Dedektörü API oyun alanında Language Detector API ile birlikte kullanılan Translate API'yi görebilirsiniz.
Standartlaştırma çalışması
Tarayıcılar arası uyumluluğu sağlamak için Translator API'yi standartlaştırmaya çalışıyoruz.
API önerimiz topluluktan destek aldı ve daha fazla tartışma için W3C Web Incubator Topluluğu'na taşındı. Chrome ekibi, W3C Teknik Mimari Grubu'ndan geri bildirim istemiş ve Mozilla ve WebKit'ten standart pozisyonlarını sormuştur.
Katılma ve geri bildirim paylaşma
Kaynak denemesine katılarak Translator API'yi hemen test etmeye başlayın ve geri bildirimlerinizi paylaşın. Geri bildiriminiz, bu API'nin ve tüm yerleşik yapay zeka API'lerinin gelecekteki sürümlerini nasıl oluşturacağımızı ve uygulayacağımızı doğrudan etkileyebilir.
- Chrome'un uygulanmasıyla ilgili geri bildirim için hata raporu veya özellik isteği gönderin.
- Mevcut bir soruna yorum yaparak veya yeni bir sorun açarak GitHub'da Translator API tasarımını tartışın.
- Web Incubator Topluluk Grubu'na katılarak standartlar çalışmalarına katılın.