Développer des compétences privées pour Alice. Ce qui n'est pas enseigné à l'école d'Alice

Chaque fois que je termine le nettoyage de printemps, j'ai l'impression d'avoir oublié quelque chose. La semaine dernière, j'ai noté sur papier toutes les tâches à effectuer pour nettoyer complètement l'appartement - j'ai reçu trois feuilles A4.

liste des œuvres sur trois feuilles A4
Ceci est la liste des tâches de nettoyage d'un appartement d'une pièce.

Je suis un utilisateur actif de Yandex.Stations, j'ai donc décidé de mettre cette énorme liste dans Alice, de sorte que lors du nettoyage de printemps, je demanderais à la «fille dans la boîte» quoi faire ensuite. Les variantes du nom de la compétence tournaient autour des mots contremaître et majordome. J'ai longtemps rêvé d'une maison avec un majordome, alors j'ai choisi le nom "My Butler" et la phrase d'activation: "Alice, demande à mon majordome quoi faire ensuite."

L'école d'Alice - il est important d'arrêter à l'heure


J'avais de vagues idées sur le développement de compétences pour les assistants vocaux, donc la première chose que j'ai faite a été d'ouvrir la documentation de la plateforme Yandex.Dialogs et de regarder toutes les vidéos de la playlist Alice’s School sur la chaîne YouTube Yandex.Dialogs . Quand j'ai regardé, j'ai pris des notes dans un cahier et je n'ai pas remarqué comment derrière les arbres j'ai arrêté de voir la forêt.

L'école d'Alice vous apprend à créer une compétence qui aide l'utilisateur à trouver la mauvaise réponse, à distinguer les synonymes des autres formes de mots; qui dans la phrase de bienvenue explique à l'utilisateur comment travailler avec la compétence, et la phrase de bienvenue se termine par une question qui provoque une réponse et oriente le dialogue avec l'utilisateur dans la bonne direction, etc. Les conseils semblent convaincants, je veux prendre absolument en compte tout, penser aux formes des mots, aux intentions, aux bibliothèques d'analyse morphologique de la langue, etc. Pour cela, il est difficile pour tout le monde de rester concentré sur le problème, pour la solution duquel la compétence a été conçue.

Si vous ne vous arrêtez pas à temps, alors il y a une substitution de concepts et vous voulez faire juste une bonne compétence. Pas une compétence qui résoudra mon problème de la manière la plus confortable pour moi, mais une bonne compétence, pour certaines personnes que je ne connais pas, qui n'en ont peut-être pas du tout besoin. À ce moment, un piège est généralement posé dans l'esprit du développeur, ce qui, avec une forte probabilité, vous décevra. Si vous ne comprenez pas de quel genre de déception nous parlons, alors lisez les commentaires sur le post Le meilleur moment pour sortir un projet animal .

Public cible - personne sauf moi


J'ai pensé, et qui utilisera cette compétence? J'ai lu quelque part que selon les statistiques, seuls le développeur et ses amis utilisent la grande majorité des applications dans les magasins. Je n'ai aucun ami avec Yandex.Station, donc je serai le seul utilisateur de l'application. Bien sûr, je peux évaluer comment je publierai la compétence dans le catalogue de compétences d'Alice, comment tous les habitants de notre pays commenceront à l'utiliser, comment je gagnerai le prix Alice, comment je vais commencer l'expansion internationale et traduire la compétence dans d'autres langues et la publier dans d'autres histoires, le magazine TIME publiera ma photo sur couverture, etc. Cliquez sur. Les statistiques sont une chose tenace, donc je me fais une compétence. Voyons ce que cela change par rapport à certains des conseils d'Alice's School.

Mot de bienvenue et aide non nécessaires


Tout d'abord, j'aime quand ils parlent de manière informelle et professionnelle. J'imagine qu'à chaque fois qu'une compétence est lancée, une assistante vocale me salue et me dit qu'elle peut faire la compétence, ce que j'ai fait. Je pense que cela augmente le risque que ma Yandex.Station tombe en panne en heurtant le mur ou en tombant du sixième étage.

Deuxièmement, avec une forte probabilité, je n'utiliserai pas l'aide / quelles commandes vous pouvez. Je suis un développeur de compétences et je sais comment cela fonctionne. La mise en œuvre de l'aide est une perte de temps. Mais si cela donne du plaisir, alors cela peut être réalisé. Je n'ai pas vu le plaisir de mettre en place l'équipe d'aide.

Le traitement du langage naturel (PNL) est mieux reporté


Dans le scénario, My Butler reconnaît la confirmation et le refus de l'utilisateur, et les intentions YANDEX.CONFIRM et tâches intégrées de la plateforme Yandex.Dialogs le font très bien YANDEX.REJECT, mais j'ai facilité la première version de la compétence. Le système a comparé la commande utilisateur à la ligne oui / non, mais après quelques jours de fonctionnement, je l'ai remplacée par des intentions. Il y a des idées que j'ai notées, mais je ne suis pas pressé de les mettre en œuvre, car la compétence résout donc mon problème.

L'interface vocale pour l'édition de la liste peut être remplacée par un code dur.
J'ai imaginé comment je lis Alice une longue liste de tâches, qui est ensuite enregistrée dans Yandex.Cloud. Je suis venu avec une interface vocale pour insérer une nouvelle tâche au milieu de la liste:
- Ajouter <laver la porte d'entrée> après <le tapis dans le couloir a été nettoyé>.
- Ajout de <laver la porte d'entrée> à la liste des tâches au numéro 34.
Cela semble cool, mais en me souvenant du public cible, j'ai reporté cette aventure. Je suis tellement déformé professionnellement qu'il est plus pratique pour moi de garder une liste de tâches dans le système de contrôle de version. Très probablement, je modifierai très rarement cette liste, et si je le fais, je corrigerai très rapidement les sources et corrigerai les modifications apportées à Yandex.Cloud avec une seule commande. L'implémentation d'une interface vocale pour éditer la liste des tâches prendra beaucoup plus de temps.
just_aiRemarque, je veux un écran prêt à l'emploi pour travailler avec la liste (ajouter au début \ fin \ milieu, supprimer) dans les assistants vocaux

Après quelques jours d'utilisation de la compétence, j'ai réalisé que dans une liste codée en dur, il vaut la peine d'utiliser le balisage TTS au lieu du texte. Cela corrigera le stress et l'intonation dans certaines phrases. Il semble que lors de l'édition de la liste des tâches par la voix, il ne sera pas possible d'obtenir la prononciation correcte de ces phrases par Alice jusqu'à ce qu'Alice soit améliorée. Je peux accepter la prononciation, donc je ne suis pas pressé de refaire le texte sur le balisage TTS dans ma liste de tâches.

Total. L'école d'Alice vous apprend à faire la bonne chose, mais souvenez-vous du public cible de la compétence.

Remerciements


Merci à tous ceux qui développent des gadgets avec interfaces vocales, qui développent des interfaces vocales, des outils pour développer des assistants vocaux et du matériel de formation. Vous améliorez la qualité de vie de personnes comme moi et vous supprimez également la charge supplémentaire des écrans de millions d'yeux.

Un merci spécial aux créateurs et conférenciers d'Alice School pour l'excellente sélection de matériaux. Vos conseils ont été concis et utiles pour moi. Sans vous, je n'aurais pas fait de majordome qui m'aiderait à nettoyer. J'ai écrit ce post parce que je pensais qu'il était important de compléter le matériel Alice School avec des conseils pour les développeurs de compétences privés. J'espère que cela aide quelqu'un à économiser du temps et de l'énergie.

All Articles