deniz.in

Piyasalar

Hava durumu

Hava durumu yükleniyor

· kaynak dev.to (home feed)

TODOforAI, tarayıcıda çalışan bir ses ajanı döngüsü olan voiceloop'u açık kaynak yaptı ve kamuoyuna açık bir benchmark yayınladı

TODOforAI, tam bir ses ajanı döngüsünü tarayıcıda çalıştıran, bağımlılığı olmayan bir JavaScript kütüphanesi olan voiceloop'u açık kaynak yaptı; en hızlı yapılandırması kamuya açık benchmark'ta 862ms medyan yanıt süresi ölçüldü.

TODOforAI, tarayıcıda çalışan bir ses ajanı döngüsü olan voiceloop'u açık kaynak yaptı ve kamuoyuna açık bir benchmark yayınladı

Kütüphane ne yapıyor

TODOforAI ekibinin dev.to'da yayınladığı bir yazıya göre voiceloop, ses ajanı döngüsünün tamamını — ses etkinliği algılama, konuşma tanıma, LLM çağrısı ve metinden sese dönüştürme — tarayıcı içinde tutan, bağımlılığı olmayan bir JavaScript kütüphanesi. Ekip, kütüphaneyi arzu ettikleri yanıt hızına sahip bir yığın bulamayınca geliştirdiğini söylüyor: kapalı API'ler self-host edilemiyordu, denedikleri açık framework'ler ise ya kullanıcıların sözünü kesiyor ya da kendi hoparlörlerden yayılan seslerini duyup yanıtın ortasında kendilerini kesiyordu.

Öne çıkan birkaç tasarım kararı var. Barge-in, ham mikrofon enerjisi yerine yeni transkribe edilen kelimelerle tetikleniyor; böylece ajanın kendi sesinin mikrofona sızması bir kesme olarak algılanmıyor. Kelime eşleştirmeli bir echo filtresi, mikrofonun aldığı sesi ajanın o anda söylediğiyle karşılaştırıyor; geliştiriciler, donanım echo iptali kapalıyken bile 30 echo'e maruz kalan turda sıfır kendini kesme bildiriyor. Yanıt hızı örtüşmeden geliyor: TTS motoru, LLM hâlâ ikinci cümleyi üretirken ilk cümleyi söylemeye başlıyor ve LLM isteği, kullanıcının tur sonu duraklaması sırasında spekülatif olarak gönderiliyor. Silero VAD ve Piper TTS sekmede WebAssembly olarak çalışıyor, böylece tamamen yerel bir yapılandırma bulut round-trip'e ihtiyaç duymuyor; hızlı turlar, araç sonuçları, bekletmeler ve yeniden oynatmalar gibi tur serileştirme durumları ise 178 testle kapsanıyor.

Her aşama takılabilir (pluggable): model için herhangi bir OpenAI uyumlu chat endpoint'i, dört STT sağlayıcısı (Web Speech, ElevenLabs Scribe, Deepgram Flux ve Speechmatics) ve Piper yerel, ElevenLabs bulut veya özel bir motorla değiştirilebilen TTS. Yazıdaki entegrasyon örneği, proxy'lenmiş bir endpoint'i gösteren tek bir VoiceAgent constructor'ı ve ses kilidini açan bir jestten sonra yapılan bir start çağrısından oluşuyor.

Benchmark ve rakamlar

Tüm veriler, geliştiricilerin kütüphanenin yanında yayınladıkları kara kutu bir düzenek olan voice-agent-bench'in kendi çalıştırmalarından geliyor. Betiklenmiş bir arayan, önceden üretilmiş bayt-birebir aynı konuşmayı sanal bir mikrofona çalıyor, ajanın hoparlör çıktısı kaydediliyor ve her metrik yalnızca sesten türetiliyor — böylece ses üreten her sistem, kapalı veya açık olmasına bakılmaksızın, entegrasyon çalışması gerektirmeden ölçülebiliyor. Sistemlere aynı betiklenmiş konuşmalar ve mümkün olduğunda 300ms time-to-first-token sabit mock LLM veriliyor; bu da ses döngüsünü modelden yalıtıyor. Sonuçlar beş altı turluk konuşmayı birleştiriyor (n=30) ve medyan ile p95 raporluyor; geliştiriciler tek çalıştırmaların yaklaşık artı eksi 300ms oynadığını söylediği için.

Smalltalk senaryosunda, Deepgram Flux STT ve ElevenLabs Flash TTS ile voiceloop, 862ms medyan ses-sese süre ve 1067ms p95 yayınladı — tablodaki en sıkı kuyruk. OpenAI Realtime neredeyse aynı 866ms medyan ölçtü ama p95 1644ms oldu; geliştiriciler Realtime'ın konuşmadan konuşmaya çalıştığını ve sabit mock LLM kullanamadığını belirtip bu satırın tam karşılaştırılabilir olmadığına dikkat çekiyor. Aynı sağlayıcılarla Pipecat 1.8.1, 1046ms medyan ve 3573ms p95 ile geldi; yani yaklaşık yirmi turdan biri üç saniyeden uzun sürdü. ElevenLabs ConvAI 1454ms ölçtü. Ücretsiz, tamamen yerel Piper yapılandırması 974ms'ye ulaştı; hiçbir yerde hesap gerektirmeyen anahtar gerektirmeyen Web Speech artı Piper varsayılanı ise 2113ms sürdü — bir turu kapatmak bulut STT'den yaklaşık 1,2 saniye daha yavaş.

Echo ve tereddüt davranışı

Yazıya göre senaryoların en çok ayrıştığı yer echo senaryosu. Her sisteme kendi sesi, mikrofon üzerinden -15dB seviyesinde, 30ms gecikmeyle ve akustik echo iptali olmadan geri verildi; bu, hoparlörleri açık bir dizüstü bilgisayara yakın bir durum. Pipecat 30 turun 20'sinde kendini kesti, OpenAI Realtime 17'sinde; voiceloop sıfır kendini kesme kaydetti ve echo'e maruz kalan turları 930ms'de bitirdi — temiz ses süresine yakın. Tereddütte — kullanıcının cümlenin ortasında duraklaması — Pipecat dışındaki her yığın geri çekildi ve voiceloop bu turların 30'da 2'sinde girip 420ms içinde geri çekildi.

Erişilebilirlik

Kütüphane MIT lisanslı ve bağımlılığı yok; npm'den @todoforai/voiceloop olarak kurulabiliyor ve bir tarayıcı demosu hiçbir API anahtarı olmadan çalışıyor. VAD eşikleri, tur sonu debounce'ları, barge-in süreleri ve echo eşleşme eşikleri için ayarlama parametreleri bir tuning dosyasında açığa çıkarılmış; varsayılanlar benchmark'ta kazanan değerlere ayarlanmış. Ekip, başkalarını benchmark'a rakip sistemler eklemeye davet ediyor.

Neden önemli

Ses yapay zekasında gecikme iddiaları genellikle kendi kendine raporlanır ve doğrulanması zordur; ölçüm düzenini kütüphanenin yanında sunarak geliştiriciler, başkalarının rakamları olduğu gibi kabul etmek yerine yeniden üretmesine veya itiraz etmesine izin veriyor — yine de bunlar yazarların kendi çalıştırmaları ve bağımsız tekrarlama bekliyor. Echo bulguları, sıradan dizüstü donanımındaki gerçek tarayıcı dağıtımlarını etkileyen bir hata moduna işaret ediyor ve kelime düzeyindeki filtre, doğru sınıflandırdığı sürece bunu gecikme maliyeti olmadan ortadan kaldırıyor gibi görünüyor. Turları bulut TTS olmadan bir saniyeye yakın kapatan yerel-öncelikli bir boru hattı, MIT lisansı ve sıfır bağımlılıkla birleşince, ses eklemek isteyen ürün ekipleri için vendor lock-in veya dakika başına konuşma maliyeti olmadan engeli düşürüyor. Rakipler kamuya açık benchmark'a katılma davetini kabul ederse, sağlayıcıların gecikme pazarlaması denetlenebilir bir şeye dönüşebilir.

  • #open-source
  • #voice-ai
  • #javascript
  • #browser
  • #speech-recognition

İlgili yazılar