Yayınlanma tarihi: 13 Kasım 2024, Son güncelleme tarihi: 20 Mayıs 2025
Açıklayıcı | Web | Uzantılar | Chrome Durumu | Amaç |
---|---|---|---|---|
MDN | Görünüm | Kargoya verme amacı |
Tarayıcıda sağlanan yapay zeka modelleriyle metin çevirmek için Chrome'daki Translator API'yi kullanın.
Web siteniz, dünya genelindeki kitlelere erişilebilir kılmak için web sitesi içeriğini birden fazla dilde sunuyor olabilir. Translator API ile kullanıcılar, kendi dillerinde katkıda bulunabilir. Örneğin, kullanıcılar destek sohbetlerine kendi ana dillerinde katılabilir ve siteniz, kullanıcı cihazından ayrılmadan önce bu sohbetleri destek temsilcilerinizin kullandığı dile çevirebilir. Bu sayede tüm kullanıcılara sorunsuz, hızlı ve kapsayıcı bir deneyim sunulur.
Web'deki içeriklerin ç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. Çeviriyi istemcide çalıştırarak sunucu gezintileri için gereken zamandan ve çeviri hizmetini barındırma maliyetinden tasarruf edersiniz.
Başlayın
Translator API, Chrome 138 kararlı sürümünden itibaren kullanılabilir. Öncelikle, tarayıcının Çeviri API'sini destekleyip desteklemediğini görmek için özellik algılamayı ç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.
Donanım gereksinimlerini inceleyin
Geliştiriciler ve Chrome'da bu API'leri kullanarak özellikleri çalıştıran kullanıcılar için aşağıdaki şartlar geçerlidir. Diğer tarayıcıların farklı işletim gereksinimleri olabilir.
Dil Algılayıcı ve Çeviri API'leri masaüstündeki Chrome'da çalışır. Bu API'ler mobil cihazlarda çalışmaz. Prompt API, Summarizer API, Writer API ve Rewriter API, aşağıdaki koşullar karşılandığında Chrome'da çalışır:
- İşletim sistemi: Windows 10 veya 11; macOS 13 veya üzeri (Ventura ve sonraki sürümler) ya da Linux. Android, iOS ve ChromeOS için Chrome, Gemini Nano'yu kullanan API'ler tarafından henüz desteklenmemektedir.
- Depolama: Chrome profilinizi içeren birimde en az 22 GB boş alan olmalıdır.
- GPU: Kesinlikle 4 GB'tan fazla VRAM.
- Ağ: Sınırsız veri veya ölçülmeyen bağlantı.
Tarayıcı modeli güncellediğinden Gemini Nano'nun tam boyutu değişebilir. Mevcut boyutu belirlemek için chrome://on-device-internals
adresini ziyaret edin ve Model durumu'na gidin. Model boyutunu belirlemek için listelenen Dosya yolunu açın.
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'
availability()
işlevi, aşağıdaki değerleri içeren bir söz döndürür:
"unavailable"
: Uygulama, belirtilen dillerin çevirisini veya dil algılamasını desteklemiyor."downloadable"
: Uygulama, belirtilen dillerin çevrilmesini veya dilinin algılanmasını destekliyor ancak devam etmek için indirme yapılması gerekiyor. İndirilen dosya, tarayıcı modeli olabilir."downloading"
: Uygulama, belirtilen dillerin çevrilmesini veya dilinin algılanmasını destekler. Tarayıcı, ilişkili nesneyi oluşturma kapsamında devam eden bir indirme işlemini tamamlıyor."available"
: Uygulama, belirtilen dillerin çevrilmesini veya dil algılamayı destekliyor ve gerekli indirmeler tamamlanmış durumda.
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
Çevirici oluşturmak için eşzamansız create()
işlevini çağırın. sourceLanguage
için bir alan ve targetLanguage
için bir alan olmak üzere iki alan içeren bir seçenek parametresi gerektirir.
// 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.
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ışılmak üzere W3C Web Incubator Community Group'a taşındı. Chrome Ekibi, W3C Teknik Mimari Grubu'ndan geri bildirim istedi ve Mozilla ile WebKit'ten standartlar konusundaki görüşlerini paylaşmalarını rica etti.
Web Incubator Community Group'a katılarak standartlar çalışmasına dahil olabilirsiniz.
Geri bildirim
Dil Algılama API'si ile neler geliştirdiğinizi 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.