Asistan bir belgeyi nasıl okuyor?
Belgeyi neden hem bölüm bölüm hem de bilgi tabanı olarak veriyoruz, altyazı sesle nasıl eşleşiyor ve tercihler nasıl kalıcı oluyor.
· 3 dakikalık okuma
Bir sesli asistana belge vermenin iki yaygın yolu var ve ikisi de görme engelli bir kullanıcı için tek başına yetmiyor. Bu yazıda Hello Narra'nın bir belgeyi nasıl okuduğunu, altyazının sesle nasıl eşlendiğini ve "daha yavaş oku" gibi bir isteğin nasıl kalıcı hale geldiğini anlatıyorum.
İki yol, iki ayrı ihtiyaç
Kullanıcı bir belgeyle iki farklı şey yapmak istiyor:
- Baştan sona dinlemek. Bir mektubu, bir sözleşmeyi, hiçbir şeyi atlamadan, yazıldığı sırayla.
- Bir şey sormak. "Son ödeme tarihi ne?", "Bu yazı kimden?" Bütün belgeyi dinlemeden, kısa bir cevap.
Yapay zekâ asistanlarında belgeyle çalışmanın en yaygın yolu "bilgi tabanı"dır (RAG): belge parçalara bölünür ve soruyla en ilgili parçalar bulunup asistana verilir. Bu, ikinci ihtiyaç için çok iyidir. Ama birinci ihtiyacı karşılamaz: asistan yalnızca ilgili parçaları görür, belgeyi sırasıyla ve eksiksiz okuyamaz.
Belgenin tamamını asistanın talimatlarına koymak da bir çözüm gibi görünür. Ancak uzun belgelerde bu, modelin bağlam sınırını aşar ve her konuşmayı yavaşlatıp pahalılaştırır.
Bizim yaklaşımımız: ikisi birden
Bir belge yüklendiğinde iki şey oluyor:
- Bölüm bölüm okuma. Belgenin metni çıkarılıyor ve paragraf ya da cümle sınırlarından yaklaşık 1.200 karakterlik bölümlere ayrılıyor. Asistan okumaya başlarken bir araçla 1. bölümü istiyor, kelimesi kelimesine okuyor, bitince 2. bölümü istiyor. "Geri dön" ya da "üçüncü bölüme git" dendiğinde aynı araçla ilgili bölüme gidiyor. Sıra hiç bozulmuyor ve belge ne kadar uzun olursa olsun sınır sorun olmuyor.
- Bilgi tabanı. Aynı dosya, soru-cevap için ElevenLabs'in bilgi tabanına da ekleniyor. Kullanıcı bir şey sorduğunda asistan önce oradan cevabı arıyor, emin olamazsa ilgili bölümü okuyup cevabı oradan buluyor.
Asistana açık bir kural daha veriyoruz: belgede olmayan bir şeyi uydurma; bulamazsan söyle. Tıbbi, hukuki ya da mali belgelerde içeriği aynen aktar ve yorum gerektiğinde bir uzmana danışılmasını hatırlat.
Altyazı sesle nasıl eşleşiyor?
Az gören kullanıcılar için asistanın söylediği her kelime ekranda, o kelime söylenirken gösteriliyor. Bunu tahminle yapmıyoruz. ElevenLabs, sesi gönderirken her karakterin ne zaman başlayıp ne kadar sürdüğünü de gönderiyor. Tarayıcı bu zamanlamaları kelimelere çeviriyor ve ses parçası çalmaya başladığı anda her kelimeyi tam zamanında vurguluyor.
Kullanıcı asistanın sözünü kestiğinde altyazı da anında duruyor. Bağlantı bu zamanlamaları göndermezse altyazı, konuşma hızına göre hesaplanan bir tempoya geçiyor; böylece hiçbir durumda boş kalmıyor.
Altyazı ekran okuyuculardan bilerek gizleniyor. Aksi halde ekran okuyucu da aynı metni okur ve iki ses üst üste biner.
"Daha yavaş oku" nasıl kalıcı oluyor?
Her kullanıcının ayrı bir asistanı var. Kullanıcı konuşma sırasında kalıcı bir tercih söylediğinde ("rakamları tek tek oku", "resmi konuşma") asistan bunu bir araçla kaydediyor. Sunucu tercihi kullanıcının profiline ekliyor, asistanın talimatlarını baştan üretiyor ve ElevenLabs'teki asistanı güncelliyor. Hız tercihi doğrudan ses ayarına yazılıyor.
Böylece tercih yalnızca o konuşmada değil, sonraki bütün konuşmalarda da geçerli oluyor. Kullanıcı kaydedilen tercihleri Ayarlar'da görebiliyor ve istediğini silebiliyor.
Ekran da sesle ayarlanıyor
İlk konuşmada asistan kullanıcıya nasıl gördüğünü soruyor ve cevaba göre arayüzü o an değiştiriyor: koyu ekranı göremeyen biri için açık bir tema, küçük yazıyı göremeyen biri için büyük yazı ve dev altyazı, ekranı hiç kullanmayan biri için altyazıyı kapatmak. Bunu da asistanın tarayıcıda çağırdığı bir araçla yapıyoruz. Kullanıcının hiçbir menüde gezinmesi gerekmiyor.
Neden önemli?
Bu yapı, asistanın "her şeyi bilen" ama kullanıcıyı tanımayan bir araç olmasının önüne geçiyor. Belge sırasıyla ve eksiksiz okunuyor, sorular kısa cevaplanıyor, ekran ve üslup kullanıcıya göre şekilleniyor. Hepsi sesle, tek bir konuşma içinde.