Yayınlanma tarihi: 13 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 deneyimden yararlanabilir.
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
- Chrome 131 ile 137 arasında çalışan Translator API kaynak denemesine katılın. Kaynak denemeleri, Chrome'da kaynağınızdaki tüm kullanıcılar için bu özelliği etkinleştirir.
- Uygulama sürecimizi ChromeStatus'ta takip edebilirsiniz.
- Translator API önerisi tartışmaya açıktır.
- Yeni yerleşik yapay zeka API'lerine erken bir bakış atmak ve posta listemizdeki tartışmalara erişmek için erken önizleme programına katılın.
Seçilen hedef dil her zaman bilinir ancak bazı durumlarda kaynak dil bilinmeyebilir (ör. kullanıcı tarafından oluşturulan içerik). 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.
Kaynak denemesine kaydolma
Çevirmen API'sini kullanmaya başlamak için aşağıdaki adımları uygulayın:
- Google'ın Üretken Yapay Zeka Yasaklanan Kullanım Politikası'nı kabul edin.
- Translator API kaynak denemesi sayfasına gidin.
- Register'ı (Kaydol) tıklayın ve formu doldurun.
- Web kaynağı alanına kaynağınızı veya uzantı kimliğinizi (
chrome-extension://YOUR_EXTENSION_ID
) girin.
- Web kaynağı alanına kaynağınızı veya uzantı kimliğinizi (
- Göndermek için Kaydol'u tıklayın.
- Sağlanan jetonu kopyalayıp deneme sürümünün etkinleştirilmesini istediğiniz kaynaktaki veya uzantınızın dosyasındaki her web sayfasına ekleyin.
- Uzantı oluşturuyorsanız Uzantılar kaynak deneme talimatlarını uygulayın.
- Translator API'yi kullanmaya başlayın.
Kaynak denemelerini kullanmaya başlama hakkında daha fazla bilgi edinin.
localhost için destek ekleme
Kaynak denemesi sırasında localhost
'te Translator API'ye erişmek için Chrome'u en son sürüme güncellemeniz gerekir. Ardından, aşağıdaki adımları uygulayın:
- Şuraya git:
chrome://flags/#optimization-guide-on-device-model
. - BypassPerfRequirement etkin'i seçin. Bu işlem, performans kontrolleri ve VRAM koşullarını atlar. Bu da Gemini Nano'nun cihazınıza indirilmesini engelleyebilir.
- Şuraya git:
chrome://flags/#translation-api
. - Etkin'i seçin.
- Daha fazla dil çifti denemek için Dil paketi sınırı olmadan etkin'i seçin.
- Yeniden başlat'ı tıklayın veya Chrome'u yeniden başlatın.
Translator API'yi kullanma
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 dil için 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 mevcut dili.targetLanguage
: Metnin çevrilmesi gereken nihai 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ının istenen şekilde çeviri yapması mümkün değildir.readily
: Tarayıcı, istenen şekilde çeviri yapabilir.after-download
: Tarayıcı, çeviriyi ancak ilgili modeli veya dil paketlerini indirdikten sonra yapabilir.
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şlevini kullanarak 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. Çevrilecek çok fazla 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
Language Detector API ile birlikte kullanılan Translator API'yi Translator ve Language Detector API oyun alanında 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 istedi ve Mozilla ile WebKit'ten standartlarla ilgili görüşlerini sordu.
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.