Alexa Beceri Geliştirme
Yayınlanan: 2021-07-19Bu blogda, AWS'de Alexa Becerileri oluşturmaya kısa bir genel bakış vermeden önce Alexa'nın ne olduğunu ve ses tanıma teknolojisinin önemini açıklayacağım.
Alexa nedir?
Alexa, Amazon tarafından sağlanan bulut tabanlı bir ses tanıma ve yanıtlama hizmetidir. Kullanıcıların cihazlarını kontrol etmelerini ve komutları söyleyerek bilgilere erişmelerini sağlar.
Amazon'un Yankı ve diğer üçüncü taraf üretilmiş cihazlar dahil olmak üzere çeşitli cihazlarla çalışabilir.
Neden Alexa?
Bu tamamen kendi aşinalığıma dayanıyor. Alandaki diğer ana oyuncular, her ikisi de çok benzer ses tanıma hizmetleri olan Google Asistan ve Apple'ın Siri'sidir.
Neden Ses?
Bilgisayar kullanıcı arayüzü tasarımı, çeşitli evrim aşamalarından geçmiştir. Her adım, önceki tasarımları iyileştirmeye çalışır - bazıları diğerlerinden daha başarılıdır. Erişilebilirlik durumunda, bu özellikle önemlidir. Ancak, erişilebilirlikle ilgilenen birine sorarsanız, çoğu kullanıcının ihtiyaçlarını karşılamanın genellikle ne kadar yetersiz kaldığını size söyleyeceklerdir.
Bilgisayar Kullanıcı Arayüzünün (Çok) Kısa Tarihi
Toplu Hesaplama / Delme Kartları
Çok erken "genel kullanım" bilgisayarlar, delikli kartların zahmetli bir şekilde oluşturulmasını gerektiriyordu ve genellikle ortalama çamaşır makinenizden daha az işlem gücüne sahipti.
Komut Satırı Arayüzü (CLI)
Bazı insanlar bunu bilgisayarınızı kontrol etmenin *tek* yolu olarak görse de, genel fikir birliği, kişinin gerçekleştirmek isteyebileceği bazı görevler için biraz zahmetli olabileceğidir. Bu noktada ana giriş yöntemi açıkça klavyeydi. Her ne kadar hala herhangi bir iş istasyonu kurulumunun temel bir unsuru olsa da (ve muhtemelen uzun, uzun bir süre olacak), yazmayı öğrenmek kullanım için zor bir engel olabilir.
Grafik Kullanıcı Arayüzü (GUI)
Grafik kullanıcı arabiriminin ortaya çıkışı, kullanılabilirlik ve UX açısından büyük bir sıçrama olan Windows tabanlı sistemlerin tanıtımını gördü. Ve elbette, bu parlak yeni pencereleri etrafa sürüklemek için fare icat edildi - bilgisayarla etkileşim kurmanın çok sezgisel bir yöntemi.
akıllı telefon
Daha önce masaüstü bilgisayarlarda kullanılmasına rağmen, dokunmatik ekran teknolojisi, akıllı telefonlar ve diğer "akıllı" cihazlar ortaya çıkana kadar hiçbir zaman tam anlamıyla yükselmedi. Anahtarların yüksek sesle şıngırdaması yok!
ses
Sesle çalışan teknolojinin gelişimi, kullanılabilirlik ve UX açısından bir başka büyük atılım oluşturuyor. Yazılımla etkileşim kurmak için ihtiyacınız olan tek yetenek, aynı dilde konuşabilmektir. Arayüz neredeyse tamamen doğal olduğundan, neredeyse hiç öğrenme eğrisi yoktur.
Neden bir önceki cümlede “neredeyse” kullanımı? Yine de, komutlarınızı istediğiniz sonuçları alacak şekilde nasıl oluşturacağınızı öğrenmeniz gerektiği gerçeği var.
İnsanların bu tür bir arabirimi kullanmaya başlama kolaylığının yanı sıra, duruş ve göz yorgunluğu gibi başka faydaları da vardır - her ikisi de uzun süre bilgisayar başında çalışan herkesin kuşkusuz aşina olacağı sorunlardır.

Güç Dengesi
Yıllar içinde gelişen çeşitli kullanıcı arabirimi türlerine bakıldığında ortaya çıkan bir şey, hepsinin ortak bir yanı olduğudur. Sorunu çözmeye ayrılmış birçok kaynağa ve çalışma saatlerine rağmen, bilgisayarların çalışma şekline uyum sağlamak için hepsinin bir dereceye kadar çalışan insanlara ihtiyacı var. Bu anlamda tartışmalı olarak, ses ve jest tanıma gibi (çözülmesi zor problemler) teknolojiler bu dengede bir değişim gösteriyor. Bilgisayarlar, insanların çalışma şekline uyum sağlamak için çalışıyor.
Konuşma Tanıma Zorlukları
1950'lere geri dönersek, konuşma tanıma, yanıltıcı bir şekilde zor olan sorunlardan biridir, çünkü bize ikinci doğa olarak gelir. Örneğin, aşağıdaki cümleyi alın:
Dükkan sahibi : “Ne aradığınızı sorabilir miyim?”
Müşteri : “Dört mum.”
Elbette bunu yazılı olarak gördüğümüzde kişinin ne istediğini tam olarak biliyoruz. Ancak sözlü olarak duyulduğunda, kişi gerçekten “çatal sapları” istemiş olabilir!
Bu oldukça önemsiz ve olası olmayan bir senaryodur, ancak bunun gibi belirsizlik konuşma dilinde son derece yaygındır. Bilgisayarların görevlendirildiği işlem türlerini düşündüğünüzde, sonuçlar muazzamdır.
Bu süre zarfında, Hidden Markov modelleri ve sinir ağları en başarılıları arasında olmak üzere birçok yöntem kullanılmıştır. Daha yakın zamanlarda, derin öğrenme kullanıldı ve bize şu anda mevcut olan sağlam çözümleri veren de bu.

Gerekli Adımların Karşılaştırılması
"Çok çalışmanın yerini hiçbir şey tutamaz." ~ Thomas A. Edison
… Yoksa var mı? Nispeten modern teknoloji bile, ek adımların ek yüküyle birlikte gelir, bu da bizi teknolojiye çalışır, tersi değil.
İşte farkında bile olmadan ne kadar çok iş yaptığımızı göstermek için "algoritmik olarak" ortaya konan bazı temel görevler:
TV'yi açın/kapatın:
Geleneksel yöntem
- Uzaktan kumandayı bul
- uzaktan kumandayı al
- Doğru düğmeyi bul
- butona basın
Ses Yöntemi
- "Alexa, TV'yi aç/kapat"
Yapılacaklar listesine öğe ekleyin:
Geleneksel yöntem
- Telefonu bul (ve aç)
- Telefonun kilidini aç
- Uygulama bul
- Uygulamayı aç
Ses Yöntemi
- “Alexa, yapılacaklar listeme “ekmek al” ekle”
Gördüğünüz gibi, cihazları sesinizle kontrol etme becerisine sahip olmak çok daha az adım gerektirir.
Metrikler
Sesle etkinleştirilen hizmetlerin genel durumunu gösteren bazı grafikler. Uygulama mağazası indirmelerine kıyasla sayılar küçük olsa da, alan hızla büyüyor:



Kredi: https://www.voicebot.ai/amazon-echo-alexa-stats
Amazon Skills API'ye Giriş
Amazon Alexa Skills API, bir cihaz aracılığıyla alınan sesli komutların alınması, tanınması, işlenmesi ve yanıtlanması için çerçeve sağlar.
Genel adımlar aşağıdaki gibidir:
Gerekli Adımlara Genel Bakış
Becerinizi Adlandırın
Komutunuza yanıt verebilmesi için Alexa'yı etkinleştirmek için kullanılacak olan beceriniz için bir çağrı adı seçin.
Niyetinizi Tanımlayın
Amazon Skills'de "niyet" veya "niyetler", bir kullanıcının komutlarıyla ilişkili istekler veya eylemlerdir.
Örneğin, “Alexa, 1729'da bu gün ne oldu?” cümlesinde, “1729'da bu gün ne oldu?” Komutu. Uygulamanın yanıtı alması için doğru anahtar kelimeleri sağlayarak önceden tanımlanmış bir amaca eşlenir.
Becerinizi daha esnek hale getirmek için, esasen belirli veri türleri için yer tutucular olan “yuvalar” adı verilen bir şey kullanıyoruz.
Modeli Oluştur
Burada, daha fazla bilgi ve olası yanıt kalıpları için istemler de dahil olmak üzere Alexa ile etkileşimin genel yapısını belirledik.
Bir Uç Nokta Tanımlayın
Bu, uygulamanızın mantığını işleyecek kodun fiziksel konumuna işaret eder. İnternette herhangi bir yere yerleştirilebilir, ancak en basit seçenek, yeteneğinizle uzaktan çağrılabilecek bir AWS Lambda oluşturmaktır.
Lambda İşlevi Oluşturun
Bunu AWS'de oluşturmak oldukça basittir. Biraz kurulum ve haritalama yapmanız gerekiyor, ancak neyin gerekli olduğuna dair iyi bir fikir veren planlar sağlandı.
Bir Alexa Skill'den komutlar alındığında, buradaki kodunuz doğru yanıtı işleyecek ve izlenmesi gereken tüm modelleri güncelleyecektir.
Sonuç
Bu, sesle etkinleştirilen hizmetlerin ne yaptığına ve Alexa Skills Kit'i kullanarak nasıl oluşturulacağına dair (çok) kısa bir genel bakış olmuştur. Alexa becerilerinin geliştirilmesiyle ilgili bir sonraki gönderide, aslında küçük bir beceri oluşturmayı ve onu Amazon Skills'te yayınlamayı ele alacağız! Alternatif olarak, web tasarımınız ve geliştirmeniz konusunda yardım için bugün bizimle iletişime geçin.
Sizinle ilgili yardıma ihtiyacınız varsa, bizimle iletişime geçmekten çekinmeyin.
