Dil algılayıcı, en küçük bir öksürüğe bile bir yanıt verir. Temiz ya da karışık dilli seslerde algılamayı açık bırakın; gürültü ya da ağır aksan altında tek bir dil konuşuluyorsa dili belirtin.
Her transkripsiyon, okuyucunun hiç görmediği bir soruyla başlar: Bu hangi dil? Yanlış cevap verilirse, hattın geri kalanı akıcı ama anlamsız bir metin üretmek için boşuna çalışır. Bu makale, bir dil algılayıcının neye baktığını, algılamanın canlı ses ve dosyalarda nasıl davrandığını ve dili kendiniz belirtmenin ne zaman daha iyi olduğunu anlatıyor.
Bir dil algılayıcı söylenenleri anlamaz. Sesin kendisine bakar: ünsüz ve ünlü envanterine, hecelerin vurgusuna, cümlelerin ritmine ve her dilin dayandığı kısa, sık kullanılan kelimelere. İspanyolcanın kendine özgü bir ünlü seti ve ritmi vardır; Hollandaca ile Almanca birçok noktada ortaktır ama birkaç sesten sonra ayrılırlar. Birkaç saniyelik net konuşma, bunları ayırt etmek için çoğu zaman yeterlidir.
Birçok tanıyıcı bunu kelimeleri tanımanın bir yan ürünü olarak yapar. Dili, sesin başlangıcına bakarak, bildikleri her dil için bir olasılık olarak belirler. Bu tasarımdan iki sonuç çıkar. Olasılıklar her zaman toplamda bire eşittir, dolayısıyla "dil yok" diye bir cevap yoktur: sessizlik, bir öksürük ya da bir müzik girişi de yüksek bir skorla bir dil alır. İkincisi, karar başlangıçtan verilir ki bu seçebileceğiniz en kötü örnektir. Birçok kayıt selamlaşmalar, isimler ve yer adlarıyla başlar; bunlar çok az dil sinyali taşır: "Günaydın Maria, Berlin'e hoş geldin" cümlesi İngilizce kadar Almancaya da yakındır. Diğer kayıtlar sessizlik ya da öksürükle başlar ve böyle bir başlangıçta karar vermesi istenen algılayıcı, hiçbir şeye dayanmadan yine de karar verir ve bunu güvenle yapar. Gerçek seslerde de böyle olur: oda gürültüsü ve "Bună dimineața" ile başlayan bir Rumence vaaz, tamamen emin bir şekilde İtalyanca "Buona domenica" olarak duyulabilir.
Yanlış bir cevabın bedeli de göründüğünden daha ağırdır. Yanlış dilde çözümleme yapan bir tanıyıcı kelimeleri yanlış yazmaz, yeniden yazar. Rumence olarak çözülen "For God so loved the world" ifadesi "Forgot to love the world" olarak çıktı. İngilizce olarak çözülen Rumence "mândria slujește" ise "Pride serves" oldu; bu, kimsenin çevrilmesini istemediği bir cümlenin doğru bir çevirisidir. Kelimeler akıcıdır ve transkript hiçbir şeyin yanlış olduğunu göstermez; hatayı pahalı yapan da budur.
Algılayıcıları en sık yanıltan beş durum vardır:
Bunlardan hangisinin sizi etkileyeceği, sesin canlı mı geldiğine yoksa zaten bir dosyada mı durduğuna bağlıdır.
Canlı bir transkripsiyonda bakılacak bütün bir kayıt yoktur. Ses konuşulduğu anda gelir ve transkript de onunla birlikte gelmelidir. Bu yüzden dil, konuşmacı konuşurken algılanır ve dil değişirse takip edilir. Panelde canlı bir transkripsiyon başlattığınızda Spoken language anahtarının altındaki not bunu anlatır: konuşmacının dili otomatik olarak algılanır ve konuşmacı istediği zaman dil değiştirebilir.
Bir değişiklik uygulanmadan önce onaylanır; böylece tek bir gürültülü parça transkripti başka bir dile sürüklemez. Zayıf nokta açılıştır: ilk sözcükler gürültülü bir selamlamaysa, ilk satır yanlış dilde çıkabilir. Dili belirtmek bunu önler.
Dosyalar farklı çalışır, çünkü kaydın tamamı zaten oradadır.
Dosya daha iyi bir problemdir: ilk saniyelere güvenmeye gerek yoktur. Bir dosya için dil, kaydın bütünü üzerinden belirlenir; bu nedenle başta gelen gürültülü bir selamlama dili belirleyemez.
Dosyanın dili yine de kesin bir hüküm değil, bir çalışma varsayımıdır. Kayıt ortasında gerçekten dil değiştiriyorsa, örneğin bir röportaj ikinci yarısında İngilizceden Rumenceye geçiyorsa, bu takip edilir, zorlanmaz; baştan sona diller arasında gidip gelen bir kayıt da işlenir.
Bir kez karar verip bir daha dönüp bakmayan bir algılayıcı, yanlış yerde kendinden emindir.
Tüm kayıt gürültülüyse hiçbir algılayıcı pek yardımcı olmaz. Algılama varsayılandır, çünkü çoğu zaman doğrudur ve sizden bir maliyeti yoktur. Ancak bazı kayıtlar için dili belirtmelisiniz ve Panel bunların hangileri olduğunu söyler: konuşulan dilin belirtilmesi gürültülü kayıtlarda ve ağır aksanlarda doğruluğu artırır.
Bunlar algılamanın elinde en az malzeme olduğu durumlardır. Gürültü, bir algılayıcının dayandığı ipuçlarını ortadan kaldırır; ağır bir aksan onları başka bir dile doğru kaydırır; birbirine yakın bir çift zaten az ipucu sunar. Güçlü bir Portekiz aksanıyla İngilizce konuşan biri yankılı bir salonda konuşuyorsa, sesinden nereli olduğunu anlamak zordur; algılayıcı onu yanlış yere koyarsa, transkript hata sürdüğü müddetçe konuşmacının İngilizcesini Portekizceye çevirir. Dili belirtmek soruyu ortadan kaldırır; böylece tüm çaba kelimelere harcanır.
Kısa bir kontrol listesi:
Dili belirtmek, hesabınızın değil transkripsiyonun bir ayarıdır; bu yüzden her kayıt için ayrı karar verebilirsiniz. Yukarıdaki her şey tek bir API seçeneğine iner.
spokenLanguage yoksa algıla; akış sırasında session.updateAPI'de spokenLanguage, en gibi bir dil kodudur; bunu dışarıda bırakırsanız dil algılanır. Dosya ya da bağlantı transkripsiyonunun settings bölümünde ve gerçek zamanlı bir oturumun seçeneklerinde görünür. Algılama ve belirtme aynı 100 dili kapsar. Çeviri ise bunlardan en fazla 10 dile yapılabilir ve bu ayrı bir seçimdir; algılanan ya da belirtilen dile bağlı değildir. Çevirinin konuşmaya nasıl ayak uydurduğu Canlı çeviri gecikmesi, açıklamalı başlığının konusudur.
{ "name": "Board meeting", "settings": { "spokenLanguage": "en", "speakerLabels": "auto" } }
Gerçek zamanlı bir oturum bu seçeneği oluşturulduğunda alır ve ses akarken değiştirebilirsiniz. Yeni bir spokenLanguage içeren bir session.update metin çerçevesi, bundan sonraki konuşmaya uygulanır; değeri "" ya da "auto" yaparsanız oturum yeniden algılamaya döner, desteklenmeyen bir kod ise yok sayılır. Dil düğmesi olan bir altyazı görünümü, operatörün yanlış bir ilk satır gördüğü anda dili belirtmesine izin verebilir; bağlantıyı yeniden kurmaya gerek kalmaz.
{ "type": "session.update", "spokenLanguage": "ro" }
Dil kodlarının listesi, adlarıyla birlikte GET /v1/languages adresinde bulunur ve anahtar gerektirmez. Sunucunuzda bir oturum oluşturmadan taslakları ve kesinleşmiş metinleri okumaya kadar tam gerçek zamanlı akış, WebSocket üzerinden gerçek zamanlı transkripsiyon başlığında anlatılıyor; etkileşimli başvuru ise {{api}}/docs adresinde. Panelde aynı seçim, yeni bir transkripsiyon başlattığınızda Spoken language anahtarıdır ve API anahtarları Geliştiriciler bölümünde bulunur.