Alice obtient des compétences

Yandex Alice

Cet article se concentrera sur l'interface utilisateur vocale (VUI) et montrera également comment créer une application sur Node.js (une compétence - dans la terminologie de la plate-forme Yandex.Dialogs) pour l'assistant vocal d'Alice. À l'aide d'une API tierce, notre application recevra des devis de personnes célèbres et les transmettra à Alice, qui, à son tour, les lira aux utilisateurs. Considérez également l'une des rares façons de monétiser de telles applications - la création d'un bouton de don (don). En général, tout le monde devrait être satisfait.

Alors, quelles sont les interfaces vocales en leur sein? Le fait est qu'il y a plusieurs années, les technologies ont atteint un niveau de développement auquel il est devenu possible d'utiliser massivement la manière la plus naturelle et naturelle d'interaction humaine avec un ordinateur - par la voix. Un certain nombre de grandes sociétés informatiques ont fourni l'opportunité de développer des «applications vocales» pour des développeurs tiers en créant les plateformes appropriées: Alexa (Amazon) , Action on Google , Bixby (Samsung) , Alice (Yandex) . Désormais, ces plateformes génèrent un puissant élan pour la diffusion à grande échelle des interfaces vocales - des ordinateurs et smartphones aux appareils électroménagers. Il semble que dans les prochaines années, il y aura un changement radical dans le paradigme habituel de l'interaction homme-machine: au lieu des boutons et des interrupteurs à bascule, tous ces réfrigérateurs, cafetières, fours à micro-ondes et fers à repasser seront contrôlés par une voix humaine.

Aujourd'hui, nous allons nous concentrer sur Alice, initialement axée sur le soutien de la langue russe, et disposant déjà d'un synthétiseur de très haute qualité de la voix humaine. Alice peut être appelée depuis: Yandex.Browser ; Application mobile Yandex avec Alice pour Android et iOS ; Application mobile Yandex.Navigator pour Android et iOS ; Yandex.Stations . Pour les compétences, Alice a un catalogue spécial où les développeurs indépendants tels que vous pouvez publier leurs applications. Et vous savez, malgré le fait que la plate-forme soit encore très jeune - Alice est déjà beaucoup. Elle devient littéralement omniprésente sous nos yeux! Par exemple, les téléchargements de l'application Yandex avec Alice pour Android ont dépassé les 100 millions, et selon StatCounter , en juillet 2019, la part de Yandex.Browser sur le marché russe s'élevait à plus de 13%. Et ce ne sont que quelques exemples à des fins d'illustration.

Statistiques de la part de Yandex.Browser sur le marché russe

Par conséquent, pour les programmeurs qui se tiennent au courant de l'innovation, il est temps de développer des interfaces vocales! Commençons, et nous créerons une compétence qui enverra des demandes à l'API forismatic.com , extraira des citations de la réponse et les noms de leurs auteurs, formatera le tout sous une forme appropriée et l'enverra à Alice. Ce dernier, à son tour (et déjà sans notre participation) prononcera et montrera ces déclarations à son public. De plus, nous demanderons à Alice d'autoriser les utilisateurs disposant d'un écran à afficher le bouton " Support project ", lorsque l'utilisateur cliquera dessus, l'utilisateur sera redirigé vers la page du service Yandex.Money . Ainsi, des personnes de bon cœur et un peu d'argent peuvent vous aider à développer votre projet.

Tout d'abord, vous devez avoir Node.js installé sur votre ordinateur avec npm , et également (facultativement, pour les tests uniquement) ngrok (voir également le spoiler À propos de ngrok ci-dessous ), et / ou vous devez avoir un compte ZEIT gratuit ou payant (pour les tests) et déploiements; Vous devez également installer Now CLI ).

À propos de ngrok
ngrok "rompt le tunnel" de votre ordinateur vers Internet, donc pour le moment de tester l'ordinateur local devient un serveur sur le World Wide Web - c'est la commodité et le but principal de ngrok . Pour installer ngrok : créez un compte gratuit sur ngrok.com , téléchargez l'archive zip et décompressez-la sur une machine locale, par exemple dans C: \ Program Files \ ngrok et définissez le chemin d'accès à ce dossier dans le chemin de la variable d'environnement. Sur la ligne de commande ou le terminal, exécutez la commande ngrok -v pour vous assurer que tout fonctionne. Ensuite, pour associer la machine locale à votre compte dans ngrok , nous exécutons la commande une fois: ngrok authtoken YOUR_TOKENYOUR_TOKEN est votre jeton unique que vous trouverez dans votre compte ngrok .

Ensuite, sur GitHub, clonez (ou téléchargez puis décompressez) le référentiel alice-tutorial-skill , qui fait partie intégrante de cet article. Le code avec des commentaires détaillés se trouve dans le fichier /api/index.js - vous pouvez le lire comme un musicien.

Après cela, entrez dans le répertoire: cd alice-tutorial-skill et installez les packages nécessaires: npm install

Pour tester avec ngrok :

  • À une invite de commande ou un terminal, dans le répertoire alice-tutorial-skill , exécutez la commande: npm start
  • Dans une autre instance de la ligne de commande ou du terminal, exécutez la commande: ngrok http 3000
  • Copiez l'URL https générée par ngrok comme indiqué dans la capture d'écran ci-dessous.

Terminal de Ngrok

Pour déployer ou tester sur ZEIT : sur la ligne de commande ou le terminal, dans le répertoire alice-tutorial-skill , exécutez la commande: now
Attendez quelques secondes que le code soit téléchargé sur le serveur, puis copiez l'URL dans la console ZEIT et ajoutez le chemin d'accès au répertoire api (/ api /) à la fin de cette URL.

Accédez maintenant à votre compte Yandex , accédez à la console Yandex.Dialogs , cliquez sur la vignette " Créer un dialogue " et dans la fenêtre contextuelle, sélectionnez la vignette " Skill in Alice ", comme indiqué dans la capture d'écran:

Créer une nouvelle compétence dans Alice

Dans l'onglet Paramètres , remplissez tous les champs obligatoires et dans le champ " URL du Webhook ", insérez l'URL générée par ngrok (indiquée dans l'exemple ci-dessous) ou l'URL obtenue dans la console ZEIT (avec / api / ajouté à la fin):

Webhook

Maintenant, allez dans l'onglet Test , où vous devriez voir quelque chose comme ceci:

Test

C'est tout, en fait! C'est ainsi que la compétence Smart Thoughts publiée dans le catalogue d'Alice est créée et fonctionne, que vous pouvez essayer. Sur un smartphone, cela ressemblera à ceci:

Pensées intelligentes

J'ai l'intention d'écrire un certain nombre d'articles sur ce sujet, et le prochain sera un article sur l'intégration d'Alice avec Bitrix24 CRM , ce qui créera des compétences commerciales pour passer des commandes à l'aide de la voix. Alors, qui sont intéressés à s'abonner, pour ne pas rater. Vous pouvez vous abonner ici ou en télégramme . Et j'en prends congé.

Mise à jour du 14/10/2019. Un article sur l'intégration d'Alice avec Bitrix24 CRM a été publié: " Alice dans Bitrix Country ".

Beignets


Donat

Source: https://habr.com/ru/post/fr465275/


All Articles