Yankıdan tanınan metni nasıl yakalar?


13

Bazı becerilerin, yapılacaklar listelerine ve alışveriş listelerine eklerken olduğu gibi konuşulan metni yakalayabildiğini ve üçüncü taraf becerilerinin de bunu yapabileceğini biliyorum. Molly ile SMS .

Peki, bunu nasıl yapıyorlar? Tanınan metni yakalayan ve bir yerde saklayan bir API çağrısı var mı?

Yanıtlar:


8

Özel beceriler metin yakalayabilir ve bunları Beceri API'nıza gönderebilir.

Alexa Skills'in nasıl çalıştığını tam olarak bilmiyorsanız, kısa bir özet:

  • İlk olarak, bir şema ve örnek ifadeler sağlayarak Becerinizi Amazon'a kaydedersiniz . Amaç şeması hangi eylemlerin gerçekleştirilebileceğini ve API'nize gönderilecek özel verilerin alanlarını tanımlar . Örnek ifadeler, bir kullanıcının her bir amacı nasıl tetikleyebileceğine ilişkin örnekler sağlar.

  • Kullanıcı Becerinizi etkinleştirdiğinde, Alexa söylediklerini becerinizin örnek ifadelerinden biriyle eşleştirmeye çalışır. O takdirde yapar maçı, bir cevap istemesi sunucunuza HTTPS isteği gönderir.

  • Sunucunuz bir yanıt verir (her şey yolunda giderse) ve ardından Alexa, yeteneğinizi tetikleyen kullanıcıya geri bildirimde bulunur.

AMAZON.LITERALYuvası dilediğiniz girişi kabul etmesini sağlar. Şu anda yalnızca İngilizce (ABD) bölgede desteklendiğini unutmayın; İngilizce (İngiltere) ve Almanca becerileri kullanılamaz AMAZON.LITERAL.

Niyet şemanız şöyle görünebilir:

{
  "intents": [
    {
      "intent": "SaveTodo",
      "slots": [
        {
          "name": "Todo",
          "type": "AMAZON.LITERAL"
        }
      ]
    }
  ]
}

Ve örnek ifadeleriniz şöyle olabilir:

SaveTodo remind me to {fetch the shopping|Todo}
SaveTodo remind me to {write my English essay|Todo}
SaveTodo remind me to {buy some dog food tomorrow|Todo}

Kullanırken AMAZON.LITERAL, çok sayıda örnek vermeniz gerekir - her olası giriş uzunluğu için en az bir örnek, ancak ideal olarak daha fazla. Amazon belgeleri, çeşitli giriş türlerini kabul edebileceğiniz yuvalar için yüzlerce örneği hedeflemenizi önerir.

Biraz sıkıcı görünüyor, ancak bunu yapmazsanız, becerinizin metni iyi tanıyacağı olası değildir. Belki de müşteri verilerinden örnek ifadeler oluşturabilirsiniz (kişisel bilgiler önceden kaldırıldığı sürece!) Böylece en yaygın ifadeler örneklerinizdedir - Alexa'nın örneklere benzer ifadeleri tanımaya doğru hafifçe önyargılı olacağını düşünüyorum.

Amazon , yuvaları engelliyorAMAZON.LITERAL ve olası girişleri listelemenizi gerektiren özel yuva türlerini kullanmanızı tercih ediyor . Bunu hatırlamak önemlidir:

Özel bir yuva türü, bir numaralandırmaya eşdeğer değildir. Sözlü dil anlama sistemi tarafından tanınırsa, listenin dışındaki değerler yine de döndürülebilir. Özel bir yuva türüne giriş listedeki değerlere göre ağırlıklansa da, yalnızca listedeki öğelerle sınırlı değildir. Kodunuzun, yuva değerlerini kullanırken yine de doğrulama ve hata kontrolü içermesi gerekir.


1
Sanırım Amazon, birçok geliştirici kaybına karşı protesto ettiği gibi gerçek slotları koruyor. Ancak gerçek alanı kullanmak, Amazon'un geliştiricilerin kullanıcıları "dinlemesini" istemediğinden yeteneğinizin yayınlanmasını önleyecektir. Ama yine de özel bir yetenekte kullanabilirsiniz.
Graham Chiu

1
@GrahamChiu: Yayınlanmış becerilerde bile gerçek slotlara hala izin verildiği izlenimini edindim ( bu blog yayınına bakın : "Geliştirici geri bildirimlerine dayanarak LITERAL slot türünü kaldırmayacağız ve işlevselliğini içeren becerileri göndermeye devam edebilirsiniz.") . Yine de kendim denemedim, bu yüzden her iki şekilde onaylayabilirseniz, gelecekteki ziyaretçiler için yararlı olabilir.
Aurora0001
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.