Apprenez à améliorer des expériences grâce à la voix. Cette page concerne la voix en tant que méthode d’entrée. Vous y découvrirez les avantages et les défis liés à cette méthode, son fonctionnement, des conseils en matière de conception, ainsi que les choses à faire et à éviter.
Utilisation
La saisie vocale permet d’interagir avec des appareils et des applications par le biais du langage parlé. En tirant parti des avancées en reconnaissance vocale et en traitement du langage naturel, la saisie vocale permet des expériences d’utilisation en mains libres, efficaces et accessibles. Cette modalité est particulièrement précieuse pour les personnes en situation de handicap, dans les contextes où la saisie manuelle est difficile, ou encore lors de tâches multiples.
La commande vocale favorise l’inclusivité, réduit la charge cognitive et diminue les frictions dans l’interaction avec les interfaces d’utilisation.
Terminologie
Voici les termes fréquemment utilisés qu’il convient de connaître :
Terme
Définition
Résolution d’anaphores
En NLP et en linguistique, une anaphore est un mot ou une expression (souvent un pronom comme « il », « elle », « ça ») qui fait référence à un élément précédemment mentionné dans le texte. L’objectif de la résolution d’anaphores est d’identifier à quoi renvoie l’expression, ce qui est essentiel pour comprendre le sens d’une phrase ou d’un texte. Exemple : « John a donné son livre à Marie. Elle en était très contente. » Ici, « Elle » fait référence à Marie, et « en » à son livre.
Reconnaissance automatique de la parole
La reconnaissance automatique de la parole permet aux ordinateurs de convertir la parole en texte. Elle repose sur des algorithmes d’apprentissage automatique et des modèles statistiques pour identifier des schémas dans le signal audio pour les transcrire en langage écrit. Les systèmes de reconnaissance automatique de la parole sont entraînés sur de vastes ensembles de données audio avec leurs transcriptions pour améliorer leur précision.
Interruption
Dans les systèmes conversationnels, cela désigne la capacité de l’utilisateur·ice à interrompre la réponse ou l’invite du système en parlant par-dessus. Cette fonctionnalité permet de corriger rapidement une erreur, d’ajouter des informations ou de rediriger la conversation.
Formation de faisceaux
En traitement du signal audio, la formation de faisceaux consiste à améliorer la qualité sonore des signaux capturés en combinant les signaux de plusieurs micros pour créer un micro virtuel orienté dans une direction spécifique. Cette technique réduit le bruit ambiant et renforce le rapport signal/bruit.
Confirmation
Commentaires fournis à l’utilisateur·ice après l’exécution d’une commande vocale, confirmant que l’action a bien été réalisée.
Compréhension contextuelle
Capacité d’un système vocal à interpréter les commandes en tenant compte du contexte, y compris des interactions précédentes et les facteurs environnementaux.
Désambiguïsation
Processus visant à clarifier les commandes vocales ambiguës, généralement à l’aide de questions de suivi ou d’invites complémentaires.
Gestion des erreurs
Ensemble de stratégies destinées à gérer les erreurs d’interprétation ou de reconnaissance dans la saisie vocale, comme l’envoi de commentaires ou de suggestions alternatives.
Grands modèles de langage (LLM)
Les LLM sont des modèles d’intelligence artificielle entraînés sur d’immenses volumes de données textuelles pour apprendre les structures, les relations et les schémas du langage. Ils sont conçus pour traiter et générer du langage de manière naturelle, ce qui leur permet d’exécuter un large éventail de tâches en traitement du langage naturel (NLP).
Latence
Désigne le délai entre le moment où l’utilisateur·ice parle et celui où le système répond à la commande vocale.
Traitement du langage naturel (NLP)
Sous-domaine de l’intelligence artificielle (IA) qui s’intéresse à l’interaction entre les personnes et les machines via le langage naturel. Le NLP repose sur des algorithmes, des modèles statistiques et des techniques de machine learning pour analyser, comprendre et générer un langage naturel.
Reconnaissance vocale
Également appelée reconnaissance de la parole, cette technologie permet aux ordinateurs de transcrire des mots prononcés en texte écrit. Elle repose sur des algorithmes d’apprentissage automatique et des modèles statistiques pour identifier des schémas dans le signal audio et les transcrire en langage écrit.
Transcription de la parole
Capacité d’un système informatique à transcrire automatiquement la parole en texte. Cela inclut différentes approches comme la synthèse concaténative, la synthèse paramétrique ou l’intelligence artificielle générative.
Synthèse vocale
Capacité d’un système informatique à générer de la parole à partir d’un texte. Cela inclut différentes approches comme la synthèse concaténative, la synthèse paramétrique ou l’intelligence artificielle générative.
Interaction en tour de rôle
Mode d’interaction dans lequel l’utilisateur·ice parle, puis attend que le système réponde avant de reprendre la parole.
Interface d’utilisation vocale
Ce type d’interface permet d’interagir avec un système, un appareil ou une application par commandes vocales. Elle utilise la reconnaissance vocale pour interpréter les instructions orales, facilitant ainsi l’exécution de tâches, l’accès aux informations et le contrôle des appareils sans saisie physique (clavier, souris, etc.).
Mot d’activation
Mot ou expression spécifique utilisée pour activer un système de saisie vocale, comme « Hey Meta ».
Technologie et fonctionnement
Cette section présente la technologie de saisie vocale, en abordant son fonctionnement, sa précision, ses limites ainsi que les stratégies pour relever ces défis. De manière générale, la saisie vocale repose sur le SDK Voice, qui utilise les micros intégrés à l’appareil pour capter la parole de l’utilisateur·ice. Le processus s’appuie sur les fonctionnalités suivantes :
Capture audio : la voix des joueurs et joueuses est captée via le micro du casque.
Reconnaissance vocale : l’audio est ensuite traité par des algorithmes de machine learning pour transcrire les paroles en texte.
Reconnaissance d’intention : le texte transcrit est analysé pour identifier l’intention du joueur ou de la joueuse, comme l’exécution d’une commande vocale ou une interaction avec un PNJ.
Modèle d’activation
Les utilisateurs et utilisatrices doivent pouvoir activer et utiliser de manière simple et intuitive les interactions vocales dans votre application. Tout cela dans le respect de l’esthétique et du thème de l’application ou du jeu, ainsi que du modèle d’interaction. Voici plusieurs exemples de méthodes d’activation personnalisées courantes.
Affordance d’UI
Une affordance d’UI est une option de l’interface d’utilisation qui permet d’activer, par exemple, un bouton de micro, un point d’exclamation au-dessus de la tête d’un personnage, etc. Parmi les cas d’utilisation courants, citons les dictées ou les recherches au clavier.
Avantages
Forte visibilité et fiabilité, permettant aux utilisateurs et utilisatrices de repérer et activer facilement les fonctionnalités.
Courbe d’apprentissage réduite, facilitant la prise en main pour les nouveaux utilisateurs et nouvelles utilisatrices.
Forte capacité d’adaptation, permettant aux utilisateurs et utilisatrices de transférer facilement l’affordance à différents appareils de saisie.
Inconvénients
Risque de surcharge du paradigme : un nombre trop important d’icônes ou d’affordances risque d’entraîner une certaine confusion.
Densité visuelle accrue : l’ajout d’éléments visuels peut alourdir l’interface.
Accessibilité non garantie : certains éléments visuels risquent de ne pas être accessibles aux personnes en situation de handicap visuel ou lors de l’utilisation du suivi des mains.
Exemples
Clic sur un bouton de micro via une manette
Clic sur un bouton d’UI via un pincement de la main
Appui direct de la main sur un bouton d’UI
Immersion
La plupart du temps, cette option est très efficace et naturelle lorsqu’elle est utilisée dans le contexte d’un jeu. Quelques exemples courants de ce type de situation : frotter une lampe merveilleuse, se tenir debout devant un miroir magique ou parler à un personnage non jouable (PNJ) L’immersion est principalement utilisée dans les jeux à commandes vocales.
Avantages
Préserve l’immersion en s’intégrant facilement dans l’activité normale du joueur ou de la joueuse, sans perturber le déroulement du jeu.
Améliore les jeux à commandes vocales et les nouvelles interactions, tout en maintenant l’attention de l’utilisateur·ice sur le jeu.
La disponibilité contextuelle garantit que la commande vocale n’est accessible que lorsque c’est pertinent, réduisant ainsi les activations accidentelles.
Inconvénients
La visibilité de la fonctionnalité peut être limitée : il est possible de passer à côté d’une option si on ignore son existence. Par exemple, les utilisateurs·ices pourraient passer à côté d’un personnage non jouable (PNJ) qui, autrement, aurait engendré une interaction.
Il est difficile d’indiquer clairement l’état.
La transparence est essentielle pour instaurer la confiance dans une application ou un jeu, mais l’activation vocale rend cela plus complexe.
Regard
Avec cette option, les joueurs et joueuses jouent à la première personne et le suivi des yeux est utilisé en tant que méthode d’activation. Elle peut être associée à d’autres gestes ou éléments de jeu pour offrir une expérience immersive. Exemple de ce type de situation : regarder un personnage non jouable et lui faire signe pour lui parler ou verrouiller une cible au cours du jeu pour utiliser une commande vocale.
Avantages
Accessible lorsque les mains ne le sont pas, cette fonctionnalité permet d’améliorer l’accessibilité et d’offrir une plus grande flexibilité lors des interactions avec des personnages non jouables.
Elle est particulièrement utile lorsque le suivi des mains est utilisé.
En exigeant plusieurs étapes d’activation, cette méthode combinée à d’autres modes de saisie réduit les activations accidentelles et augmente la précision. Cette forme d’interaction naturelle permet une activation plus rapide et intuitive.
Cette forme d’interaction naturelle permet une activation plus rapide et intuitive.
Inconvénients
Les activations accidentelles sont fréquentes lors de l’utilisation exclusive du regard ou du mouvement de la tête, car ce contrôle manque de précision.
Cela peut réduire la précision et augmenter le risque d’activation non intentionnelle.
Il est essentiel de fournir une indication claire de l’écoute du système. Une activation silencieuse et non confirmée peut poser un risque pour la confidentialité.
Exemples
Regarder une cible verrouillée dans l’univers
Regarder une cible corporelle verrouillée
Gestes
L’activation par des gestes de la main est utile dans le contexte des jeux à commandes vocales. Ces gestes peuvent être associés à une orientation de la tête ou à un regard, ou bien effectués seuls, comme lors de l’utilisation d’une baguette. Exemples de cas d’utilisation : jeux à commandes vocales et activation multiséquence.
Avantages
Ne nécessite pas l’utilisation des manettes : meilleure accessibilité et plus de flexibilité lors des interactions avec les personnages non jouables.
Préserve l’immersion en s’intégrant facilement dans l’activité normale du joueur ou de la joueuse, sans perturber le déroulement du jeu.
Inconvénients
Peut être activé par erreur : les gestes de la main offrent un contrôle plus précis que les mouvements de la tête ou du regard. Cependant, beaucoup d’utilisateurs et utilisatrices ont du mal à garder les mains immobiles, ce qui peut entraîner des mouvements involontaires.
L’activation aléatoire est moins susceptible d’affecter la précision lors du déclenchement, mais augmente le risque d’activation involontaire. Lorsque cette action est activée, il est essentiel de le signaler clairement, car une fausse activation sans indication de l’état du système présente un risque réel de confidentialité. Ce type d’activation peut aussi être affecté par les conditions de luminosité.
Une utilisation répétée peut provoquer de la fatigue et demander du temps pour être reproduite.
Exemple
Activation de la fonctionnalité vocale basée sur la distance et les gestes des mains
Modèle d’interaction
Le modèle d’interaction, qui est au cœur de l’expérience d’utilisation, est mis en œuvre après l’activation. Selon le cas d’utilisation propre à votre application, il peut être basé sur des interactions simples ou complexes. Quelle que soit la forme des interactions, trois principes doivent être pris en compte lors de la conception :
Assurer la transparence : votre application doit en toute transparence informer l’utilisateur ou l’utilisatrice des actions du système. Si certaines surprises sont agréables en cours de jeu, ce n’est pas le cas de celles qui surviennent lors des interactions avec le système.
Préserver l’immersion : l’immersion est l’objectif principal des jeux immersifs et l’un des aspects importants de l’expérience d’utilisation. Ne privez pas l’utilisateur·ice de cette expérience lors de vos interactions avec lui ou elle. Vous pouvez, par exemple, utiliser une voix, un dialogue ou une situation qui renforce le sentiment d’immersion de l’utilisateur·ice lorsqu’il ou elle communique avec le système.
Réduire au minimum les perturbations : assurez-vous de passer avec fluidité du jeu à un modèle d’interaction et inversement. Les joueur·ses peuvent être surpris·es par certaines interactions, mais celles-ci ne doivent pas paraître déplacées dans le cadre du jeu. Lorsque les perturbations liées aux interactions sont réduites à leur minimum, le sentiment d’immersion reste intact chez les joueur·ses, qui apprécient davantage le jeu et auront plus tendance à y revenir par la suite.
Interaction simple
Cette forme d’interaction consiste en une requête unique. En général, une seule réponse est attendue et suffit à conclure l’interaction. Ce type d’interaction est habituellement utilisé pour effectuer une tâche simple, par exemple éteindre la lumière, obtenir des informations sur le stock, régler un minuteur, etc. L’interaction simple peut également être désignée par le terme d’énoncé ou de requête unique.
Interaction complexe
Cette forme d’interaction, généralement axée sur la conversation, consiste en plusieurs échanges. Elle est généralement utilisée pour les scénarios impliquant un véritable dialogue, par exemple pour parler à un personnage non-joueur, commander quelque chose, faire une activité guidée, etc. Lors des interactions complexes, il est important que les utilisateur·ices aient la possibilité d’ignorer l’interaction ou que le système considère que le délai de réaction est dépassé lorsqu’aucune réponse n’a été enregistrée depuis un certain temps.
Modèle d’attention
Les systèmes d’attention offrent à vos utilisateur·ices un moyen simple et intuitif de comprendre ce qui se passe lors de leurs interactions vocales avec une application. Ces systèmes peuvent indiquer clairement les éléments avec lesquels il est possible d’interagir par la voix dans un jeu, ou comment obtenir un retour sur les commandes vocales. Concevoir un système d’attention efficace est crucial pour garantir une expérience d’utilisation de qualité. C’est le moyen le plus efficace de gérer le fait que le jeu est toujours à l’écoute de l’utilisateur·ice.
Qu’est-ce qu’un système d’attention ?
Concevoir un système d’attention est la première étape pour créer une interface vocale efficace pour votre application. L’expérience des utilisateur·ices s’en trouve ainsi améliorée en leur transmettant des signaux audio et visuels qui les informent que le micro est activé. Cela permet également de donner un retour sur la réception des commandes vocales, notamment la gestion des erreurs, la réduction de la perception de latence et même la simple indication de la réception d’une commande. En tant que développeur, cela vous permet d’offrir une expérience encore plus immersive et enrichissante à vos utilisateur·ices.
De plus, les systèmes d’attention sont cruciaux pour informer vos utilisateur·ices quand le micro est « actif » et « à l’écoute ».
Principaux éléments
Des composants de base du système d’attention sont disponibles dans le Voice SDK Toolkit sur GitHub. Ils peuvent être précieux pendant que vous personnalisez l’apparence et le comportement de votre système pour l’adapter au style et à l’expérience de votre application.
Indices d’état du micro (obligatoires)
Les indices d’état, associés aux états du système d’attention, guident visuellement vos utilisateur·ices en leur indiquant quand leur micro est actif et quand le système est prêt à recevoir leurs commandes vocales. Cela évite la frustration et les malentendus sur le moment opportun pour parler.
Des techniques simples peuvent être utilisées pour montrer quand le micro est actif, permettant à vos utilisateur·ices de savoir quand leur entrée audio est captée.
Important : l’état Mic on (Micro activé) doit être affiché précisément à l’écran dès que votre application sollicite une entrée audio et maintenu pendant toute la durée de la captation, jusqu’à la désactivation du micro.
Un système d’attention basique pour l’état du micro peut être ajouté à la vue du casque de l’utilisateur·ice ou à des objets ou personnages spécifiques. Des systèmes plus élaborés existent, mais voici les états de base à communiquer :
Micro activé : cet état englobe les états Écoute (Activé), Inactif, Traitement et Réponse.
Micro désactivé : cet état correspond à l’état Pas d’écoute.
Indices de retour audio
Utiliser un indice visuel ou des icônes pour transmettre un retour audio est un moyen simple d’aider vos utilisateur·ices à évaluer et ajuster le volume de leur micro, assurant ainsi une bonne captation et un traitement adéquat des commandes vocales.
Avant d’utiliser ce type d’indice visuel, testez-le pour vous assurer que l’animation se synchronise correctement avec les appareils d’entrée audio. Testez-le également dans l’environnement où vous pensez que vos utilisateur·ices se serviront de votre application.
Earcons
Vous pouvez aussi utiliser des retours audio pour renforcer un système d’attention visuel montrant les états du micro, ou comme méthode alternative lorsque le micro est actif, pour une meilleure accessibilité et immersion.
Une sélection de sons earcon personnalisés est disponible pour commencer. N’oubliez pas que les earcons d’activation seront joués fréquemment dans une application. Choisissez-en donc un court et agréable à écouter de manière répétée pour une meilleure expérience d’utilisation.
Combiner ces éléments
Les indices d’état et icônes suivants, combinés avec des animations et des earcons, illustrent comment vous pouvez utiliser ces outils ensemble pour montrer efficacement les états d’interaction vocale.
Ces éléments peuvent être observés en action dans la vidéo suivante :
Exemples avancés
En continuant d’explorer les moyens d’intégrer l’interaction vocale dans vos applications, vous pourriez envisager d’incorporer directement les systèmes d’attention dans la conception des personnages et de l’environnement. Par exemple :
Animations de personnage : un personnage adopte des expressions et des gestes spécifiques pour montrer qu’il écoute activement ou qu’il comprend.
Conception de l’environnement : un objet s’illumine et bouge pour indiquer une interaction ou une réponse.
Invites d’action par dialogue : l’utilisateur·ice est invité·e à émettre des commandes vocales par le biais d’un dialogue conversationnel avec un PNJ.
Transcription : afficher la transcription textuelle de l’entrée audio peut fournir une indication supplémentaire sur l’ouverture du micro et la réception de l’entrée. Cela peut aussi servir de guide léger pour montrer à l’utilisateur·ice comment le système entend les commandes vocales, lui permettant ainsi d’ajuster son entrée.
Pour plus d’informations sur l’utilisation des systèmes d’attention avec le SDK Voice, consultez la boîte à outils SDK Voice.
Réponses d’erreur
Les erreurs sont inévitables dans les applications. Elles sont d’autant plus singulières dans les systèmes vocaux. Les utilisateurs·ices peuvent parler trop vite ou marmonner, ce qui entraîne l’incapacité du système à les comprendre. Le système peut également poser une question, mais ne pas recevoir de réponse, faute d’audition, de perception ou de compréhension de l’utilisateur·ice.
Types d’erreurs courants
Erreur sans correspondance. Ces erreurs se produisent lorsque le système ne comprend pas l’énoncé de l’utilisateur ou de l’utilisatrice. Il s’agit de l’erreur la plus fréquente en matière de reconnaissance vocale automatique (ASR). Cependant, cela peut aussi se produire si l’utilisateur·ice est dans un environnement bruyant, que son énoncé ne figure pas dans la grammaire de reconnaissance de l’application, ou lorsque sa réponse n’est pas complète ou assez claire pour permettre au système de la comprendre. Par exemple :
Système (entend) : « Recale le camion ! »Système (répond) : « Désolé capitaine, qu’avez-vous dit ? »Système (entend) : « J’ai dit, recharge le canon ! »Système (répond) : « Oui, capitaine ! Canonniers, rechargez ! »Réponse d’erreur : Une réponse rapide demandant à l’utilisateur·ice de répéter l’énoncé est généralement la meilleure solution en cas d’erreur sans correspondance. Cependant, si l’énoncé figure déjà dans une réponse, il n’est pas nécessaire de répéter la question. Cela paraîtra robotique et compromettra l’immersion de l’utilisateur ou de l’utilisatrice. Il suffira de reformuler la réponse.
Erreur sans entrée. Ces erreurs se produisent lorsque le système attend une réponse, mais n’en reçoit pas. Cela peut arriver pour diverses raisons, notamment lorsque l’énoncé n’est pas assez fort ou lorsque l’utilisateur ou l’utilisatrice ne dit rien alors que le micro est actif. L’utilisateur·ice peut prendre du temps pour répondre, hésiter, être distrait(e) ou faire une pause pour une raison quelconque. Par exemple :
Système (énoncé) : « OK, Joueur 1 ! Où devons-nous aller ? »Système (entend) : « … »Système (répond) : « Joueur 1, dans quelle direction devons-nous aller ? »Système (entend) : « Oh, dirigeons le bataillon vers le sud, vers D1 »Système (répond) : « Bien reçu, direction sud vers D1. En avant ! »Réponse d’erreur : La reformulation de la question en y ajoutant des détails constitue la meilleure option pour ce type d’erreurs. Tout comme pour l’erreur sans correspondance, il faut éviter de répéter la question mot pour mot pour ne pas paraître robotique.
Erreur hors domaine. Cette erreur se produit lorsque le système comprend l’énoncé de l’utilisateur ou de l’utilisatrice, mais ne peut y donner suite pour une raison (liée au jeu) donnée. Elle est parfois appelée erreur d’intention. Cela peut se produire en raison d’une règle du jeu qui empêche la réalisation de l’action demandée, ou d’une fonctionnalité non intégrée dans l’application. Par exemple :
Système (entend) : « Donne-moi cette épée. »Système (répond) : « Désolé, mais je ne peux saisir aucune arme. »Réponse d’erreur : Dans la mesure du possible, vous devez guider l’utilisateur ou l’utilisatrice vers une solution ou lui fournir des informations lui permettant de contextualiser la réponse. La réponse la plus efficace consiste à expliquer ce que l’application ne peut pas faire, par exemple « Je ne peux saisir aucune arme » pour que l’utilisateur·ice ne réessaye pas. Cependant, vous devriez veiller à ce que la réponse du système ne compromette pas l’immersion de l’utilisateur·ice.
Erreur système. Il s’agit d’une catégorie d’erreurs généralisée qui ne relève pas du système ou de l’utilisateur(ice). Cela peut inclure des erreurs de client ou de serveur, ou une tout autre erreur qui pourrait se produire d’une manière inattendue ou dans le backend du système. Par exemple :
Utilisateur·ice (parle) : « Emmène-moi dans la zone de lancement. »\<System error>Système (répond) : « Désolé, une anomalie est survenue. Pouvez-vous répéter ? »Réponse d’erreur : Dans la mesure du possible, vous devriez avoir une ou plusieurs réponses d’erreur disponibles qui peuvent être utilisées pour ce type d’erreurs. Une réponse appropriée devrait être aussi large que possible pour couvrir de nombreuses situations, sans pour autant être trop générique pour ne pas paraître mécanique. Si des informations spécifiques sur l’erreur peuvent permettre aux utilisateurs·ices d’agir, par exemple, « désolé, il n’y a aucune connexion internet », vous pouvez les ajouter dans la réponse. Cependant, veillez autant que possible à ne pas compromettre l’expérience immersive des utilisateurs·ices.
Recommandations
La fréquence des erreurs dépasse largement la conception ou les attentes de nombreux développeurs·ses. L’intégration d’un vaste ensemble de réponses d’erreur dans la conception de votre expérience vocale améliorera considérablement le plaisir des utilisateurs·ices.
Voici quelques recommandations à prendre en compte lors de la conception des réponses d’erreur :
Les meilleures réponses d’erreur sont spécifiques au contexte. Évaluez le contexte de la scène lors de la création de la réponse d’erreur. Considérez l’environnement, les questions précédentes, la position de l’utilisateur·ice et d’autres facteurs. Demandez-vous : « Serait-ce bizarre si un personnage me disait ça ? » avant d’appliquer une réponse d’erreur donnée.
Faites en sorte que l’erreur fasse partie intégrante du jeu. Si l’utilisateur ou l’utilisatrice joue à un jeu d’action, envisagez de créer un signal visuel pour lui demander de se répéter en cas d’une erreur sans correspondance. Lors de la conception du dialogue des PNJ, prévoyez un délai dans la réponse de l’utilisateur·ice, donnez-lui assez de temps pour répondre et préparez des réponses pour les erreurs sans entrée.
Ne répétez pas la même réponse indéfiniment. Les utilisateurs·ices peuvent souvent répéter leur énoncé, mais « avec précaution ». En cas d’erreur sans correspondance ou sans entrée, cela pourrait être acceptable, mais pas dans d’autres cas. Il se peut qu’il y ait vraiment une erreur ASR ou NLU empêchant la compréhension du système. Répéter le même message comme « Désolé, je n’ai pas compris » deviendra vite fatigant pour les utilisateurs·ices. Variez les réponses et les messages d’erreur pour rendre votre application plus dynamique pour les utilisateurs·ices en cas de répétition d’une même erreur.
Examinez vos indicateurs. Les erreurs peuvent servir d’indicateurs d’amélioration de l’expérience vocale des utilisateurs·ices. Par exemple :
Les demandes des utilisateurs·ices sont-elles imprévues ?
Où ces erreurs se produisent-elles le plus souvent ? Essayez de comprendre pourquoi ces erreurs s’y produisent.
Est-ce que les utilisateurs·ices demandent une action possible, mais de façon imprévue ? Consultez les énoncés manqués pour pouvoir traiter les futurs scénarios d’utilisation.
Est-ce que l’application n’arrive pas à comprendre une demande concernant des fonctionnalités prises en charge ?
Réponses de formation des utilisateur·ices
La formation de l’utilisateur·ice au sein d’une application est un défi constant lors du développement d’expériences vocales. L’ensemble de ce qu’un·e utilisateur·ice peut dire dans l’application ne correspond souvent pas à ce qu’il·elle souhaiterait pouvoir dire. Ceci est particulièrement vrai pour les expériences complètement immersives.
Groupes pédagogiques des utilisateur·ices
Les utilisateur·ices d’une application pour la première fois ont des besoins légèrement différents de ceux des utilisateur·ices récurrents. Le mécanisme d’éducation et de découverte pour ces deux types d’utilisateur·ices diffère en fonction des connaissances préalables que possèdent les utilisateur·ices concernant l’expérience.
Utilisateurs et utilisatrices qui jouent pour la première fois (Découverte)
Ces utilisateur·ices se voient parfois offrir une nouvelle expérience d’utilisation au début du jeu. La formation des utilisateur·ices donnée ici doit rester relativement générale. Fournir quelques exemples d’entrée vocale est utile, mais vous devriez vous concentrer sur les catégories et les modèles d’interaction tels que déplacer des objets, ordonner des attaques, jeter des sorts, naviguer ou des actions. Ce sont des catégories de choses que l’utilisateur·ice peut faire, plutôt que des choses dites au jeu lui-même. Vous devriez tenir compte des éléments suivants lors de la conception d’une expérience de première utilisation :
Comment invoquer l’expérience vocale ?
Comment savoir quand parler ?
Comment savoir que le micro est allumé ?
Qu’est-il possible de dire ?
Comment l’utilisateur·ice peut-il·elle en savoir plus sur ce qu’ils peuvent dire ?
Utilisateurs et utilisatrices récurrent·es (Rétention)
Ces utilisateur·ices connaissent déjà certains mécanismes de l’application et doivent maintenant se familiariser avec les mécanismes d’aide et de découverte intégrés, utilisables de manière autonome, comme les astuces contextuelles. Ces suggestions de commandes doivent être aussi contextuelles que possible, sans nuire à l’immersion ni perturber le fonctionnement de l’application.
Types de formation pour utilisateur·ices dans les expériences entièrement immersives
Plusieurs ressources potentielles différentes peuvent aider les utilisateur·ices à apprendre comment utiliser leur voix dans des expériences intégrées.
Utilisateur·ice cible
Objectif éducatif
Ressources potentielles
Nouvel utilisateur ou nouvelle utilisatrice
Découverte
- Parcours guidé - Page de destination de l’application - Astuces intégrées
Utilisateur ou utilisatrice récurrent·e
Rétention
- Astuces non intégrées - Recherche vocale
Parcours guidé
Lorsqu’un·e utilisateur·ice doit naviguer dans une séquence de commandes vocales, un parcours guidé peut lui faciliter la tâche en permettant de combiner des astuces contextuelles de façon à composer un parcours. Ce processus peut aider pour montrer à l’utilisateur·ice les dynamiques ou éléments clés de son expérience dans l’application. Il peut être optimisé avec un indicateur de progression pour les astuces ponctuelles telles qu’une barre de progression ou un texte indiquant « 2 sur 4 complétés ».
Page de destination de l’application
Quand un·e utilisateur·ice démarre une application, il·elle est conduit·e dans un endroit spécifique à l’intérieur de l’application où il·elle peut commencer. Il·elle peut y choisir un niveau de jeu, personnaliser son style de combat ou sélectionner d’autres options. Lorsque les utilisateur·ices se trouvent à cet endroit, vous pouvez aussi leur montrer une liste des choses qu’ils·elles peuvent dire dans l’application en utilisant l’onglet d’un menu, par exemple, ou une entité flottant dans l’espace. Vous pouvez y penser en leur montrant les « réglages de la manette » ou la « disposition des boutons », comme beaucoup d’applications le font. Ces instructions devraient se concentrer sur des catégories plus larges, telles que « déplacer des objets » ou « jeter des sorts ». Il peut également être utile de montrer quelques exemples parmi les commandes spécifiques que les utilisateur·ices peuvent énoncer.
Astuces intégrées
Grâce à leur présentation à l’utilisateur·ice comme faisant visiblement partie ou comme étant une extension de l’environnement naturel, ces astuces pourraient être le moyen le plus immersif de leur apprendre ce qu’ils·elles peuvent faire ou dire. Il faut cependant veiller à empêcher l’astuce de perturber l’expérience immersive. Par exemple, un PNJ pourrait apprendre à l’utilisateur·ice un nouveau sort et lui demander de réciter les mots conjuratoires. Une autre option serait un élément indiquant d’une certaine façon qu’il peut être déclenché par la voix, ou une personne dans le jeu qui fait savoir qu’elle peut interagir avec vous par la voix en vous faisant signe d’approcher pour parler.
Astuces non intégrées
Contrairement aux astuces intégrées, les astuces non intégrées n’apparaîtront pas comme une composante de l’environnement bien qu’elles aient toujours lieu dans le contexte du jeu. Elles apparaissent plutôt à l’utilisateur·ice comme une couche par-dessus le jeu, rappelant davantage un panneau de sortie au-dessus d’une porte. Les utilisateur·ices n’ont pas besoin d’interagir avec ces astuces, et les ignorer ne devrait pas affecter la progression du joueur dans le jeu. Cependant, ils·elles peuvent les utiliser pour obtenir plus d’informations pertinentes pour le jeu. Par exemple, une icône peu intrusive qui peut donner un indice à l’utilisateur·ice s’il·elle la sélectionne, ou peut-être une flèche pointant dans la direction d’un objectif de l’utilisateur·ice.
Recherche vocale
Dans la progression d’un·e utilisateur·ice dans un jeu, il est possible qu’il·elle pose des questions simples, comme “Comment mettre en pause ?” ou “Comment enregistrer ?”, ou encore d’autres questions pratiques sur le fonctionnement du jeu. Le moyen le plus facile et le plus naturel de le faire, pour l’utilisateur·ice, est en parlant normalement au système. La barre de recherche vocale rend cela possible. Elle vous permet également, en tant que développeur·se, de créer des intentions d’aide génériques qui peuvent être utiles.
Règles pour les interactions vocales
Cette section offre des conseils sur les techniques d’interaction vocale utilisées dans la conception d’expérience vocale. Découvrez les primitives d’entrée, les principes de conception, les différents facteurs ergonomiques ainsi que les principales choses à faire et à éviter.
Primitives d’interactions
Découvrez diverses possibilités et méthodes d’interaction qui utilisent la voix comme modalité d’entrée :
Comportement de la reconnaissance vocale
L’unité de base de l’interaction en reconnaissance vocale est un énoncé, c’est-à-dire une phrase ou une expression orale.
Identifier l’intention derrière un énoncé est essentiel pour formuler une réponse adaptée. Les intentions peuvent être classées : informative, transactionnelle, navigationnelle, etc.
Les entités sont les éléments précis qui donnent du contexte à l’énoncé, comme les noms, dates, lieux ou quantités. Leur reconnaissance est cruciale pour l’efficacité de l’interaction vocale.
Le contexte joue un rôle clé dans la compréhension du comportement et des intentions de l’utilisateur·ice. Concevoir des interactions qui tiennent compte du contexte de l’utilisateur·ice donne des réponses plus précises et pertinentes.
Des confirmations sont utilisées pour s’assurer que le système a bien compris l’intention, ou pour demander des précisions. Cette primitive réduit les erreurs et améliore la précision globale.
Les techniques de désambiguïsation, comme les questions de clarification ou les options à choisir, permettent de mieux interpréter les intentions floues ou ambiguës.
Des stratégies efficaces de gestion des erreurs, comme l’explication ou la suggestion d’alternatives, permettent de limiter l’impact des erreurs et de garantir la satisfaction de l’utilisateur·ice.
Application de conception du traitement du langage naturel (NLP)
La tokenisation consiste à découper un texte en unités plus petites (mots ou sous-mots) pour faciliter son analyse et sa compréhension.
L’étiquetage morpho-syntaxique (ou étiquetage grammatical) permet d’identifier la nature des mots (nom, verbe, adjectif, etc.) dans une phrase pour en faciliter l’interprétation.
La reconnaissance d’entités nommées vise à détecter des éléments comme des noms de personnes, d’organisations, de lieux ou des dates, afin d’obtenir du contexte et comprendre le sens.
L’analyse des sentiments évalue le ton émotionnel d’un texte ou l’expression d’une attitude (positif, négatif ou neutre).
L’identification de l’intention permet de déterminer l’objectif du message, comme faire une demande ou fournir une information.
Navigation vocale
Le système doit annoncer clairement les options disponibles dans le menu.
Les utilisateur·ices doivent pouvoir sélectionner une option précise à l’aide de commandes vocales.
Le système doit permettre la navigation dans les sous-menus via des commandes vocales telles que « Et après ? » ou « Retour ».
Le système doit confirmer la saisie vocale de l’utilisateur·ice et vérifier qu’il a bien compris l’option sélectionnée.
Le système doit être capable de gérer les erreurs, comme des saisies incorrectes ou des options indisponibles, et proposer des solutions ou alternatives.
Le système doit regrouper les options liées.
Le système doit proposer des raccourcis pour les actions fréquemment utilisées.
Détection des émotions
Le système doit pouvoir identifier et classer les émotions : joie, tristesse, colère, peur, etc.
Le système doit être capable de détecter l’intensité de l’émotion : légère, modérée ou forte.
Le système doit reconnaître comment les émotions sont exprimées par la voix (intonation, ton, volume, débit, etc.).
Le système doit être continuellement testé et ajusté pour garantir son efficacité et le respect dans les propos énoncés.
Authentification biométrique
Le système doit capturer l’empreinte vocale unique de l’utilisateur·ice (représentation numérique de sa voix).
Le système doit vérifier l’identité vocale de la personne qui parle en comparant l’empreinte vocale à un modèle ou profil enregistré.
Le système doit demander à l’utilisateur·ice de s’authentifier, par exemple en prononçant une phrase spécifique ou en fournissant un échantillon vocal.
Le système doit utiliser des algorithmes de machine learning pour améliorer la précision de la vérification vocale au fil du temps.
Les utilisateur·ices doivent garder le contrôle sur leurs données biométriques et sur la manière dont elles sont utilisées.
Le système doit être accessible à tous, y compris aux personnes en situation de handicap.
Le système doit être continuellement testé et ajusté pour garantir son efficacité et sa sécurité.
Une intégration avec d’autres systèmes (gestion des identités, contrôle d’accès, etc.) est possible pour offrir des fonctionnalités étendues.
Interaction multimodale
Le système doit définir les modalités d’entrée utilisées dans l’interaction : voix, texte, gestes, regard, etc.
Le système doit définir les modalités de sortie utilisées dans l’interaction : parole, texte, images, vidéo, etc.
Les utilisateur·ices doivent pouvoir passer d’une modalité à une autre au cours de l’interaction (ex. : passer de la voix au texte).
Le système doit gérer les erreurs et les exceptions qui se produisent lors des interactions multimodales, en proposant par exemple des méthodes de saisie alternatives.
Le système doit établir des indicateurs pour évaluer l’efficacité des interactions multimodales, comme le taux de satisfaction ou de réussite des tâches.
Fonctionnalités d’accessibilité
Les quatre principes fondamentaux de la conception accessible sont connus sous l’acronyme POUR : perceivable (perceptible), operable (applicable), understandable (compréhensible) et robuste.
Perceptible : fournir du contenu que les utilisateur·ices peuvent percevoir, quelles que soient leurs capacités. Exemples :
Fournir un texte alternatif pour les images (ex. : balises alt).
Utiliser des couleurs à fort contraste pour améliorer la lisibilité.
Proposer des sous-titres ou des transcriptions pour les contenus audio et vidéo.
Opérable : permettre aux utilisateur·ices d’interagir avec le produit par différents moyens. Exemples :
Rendre la navigation et les commandes accessibles au clavier.
Créer des menus de navigation clairs et cohérents.
Permettre aux utilisateur·ices de modifier la taille de police et l’interligne.
Compréhensible : présenter le contenu de manière claire et facile à comprendre. Exemples :
Utiliser un langage clair et concis.
Éviter le jargon et les termes techniques, sauf si nécessaire.
Fournir des définitions pour les concepts complexes.
Robuste : créer des produits compatibles avec divers appareils, navigateurs et technologies d’assistance. Exemples :
Tester le produit sur différents navigateurs et appareils.
Utiliser du HTML sémantique pour garantir une structure correcte et compréhensible.
Suivre les normes du Web et les recommandations en matière de codage et de développement.
Ces capacités de saisie et méthodes d’interaction peuvent être utilisées dans de nombreuses applications, telles que les assistants virtuels, les objets connectés et les outils d’accessibilité. En utilisant la voix comme principale modalité de saisie, ces systèmes peuvent offrir une interaction plus naturelle et intuitive avec la technologie.
Pour une présentation complète de toutes les modalités de saisie et des primitives correspondantes, consultez la page suivante : Primitives d’entrée
Principes de conception
Cette section aborde les concepts fondamentaux qui permettent de créer des interactions conviviales et intuitives pour la modalité de saisie.
Terme
Définition
Garantir une activation transparente
Fournir des indications claires sur l’activation du micro par le biais d’earcons ou d’indices conversationnels.
Offrir des contrôles de confidentialité clairs
Donner aux utilisateur·ices la possibilité de participer à des expériences vocales de capture de voix, dans le respect de leur confidentialité.
Gérer la charge cognitive
Limiter la quantité d’informations que les utilisateur·ices doivent retenir. Utiliser des techniques de fil d’Ariane pour les guider dans les interactions complexes. Le fil d’Ariane désigne le processus qui consiste à offrir aux utilisateur·ices un chemin de navigation clair et cohérent dans une conversation vocale. Cela permet de reconnaître leur position actuelle dans l’interface et contribue à éviter la confusion et l’anxiété.
Exemple : Utilisateur·ice : « Alexa, quel est mon programme aujourd’hui ? » Alexa : « Vous avez une réunion à 14 h. Vous êtes actuellement dans le menu Calendrier. Pour revenir au menu principal, dites Retour.
Donner aux utilisateur·ices la propriété de leurs données
Fournir une vision claire de l’usage et de la protection de leurs données vocales, y compris la possibilité de révoquer ou de supprimer leur consentement.
Concevoir des interactions contextuelles
Adapter les interactions vocales au contexte de l’utilisateur·ice, qu’elles soient visuelles ou uniquement sonores. Optimiser l’expérience grâce à l’immersion ou la caméra réelle ainsi qu’avec des interactions intégrées.
Mettre en place une gestion efficace des erreurs
Créer un système de gestion et de correction des erreurs qui reconnaît les ruptures d’interaction, et propose des solutions de correction. Guider les utilisateurs·ices vers la résolution des erreurs et fournit des instructions claires pour y parvenir. Mettre l’accent sur la compréhension et la résolution dans la conception du système de gestion des erreurs.
Former les utilisateur·ices et faciliter l’intégration
Informer les utilisateurs·ices sur les nouveaux modèles d’interaction, notamment avec les PNJ (personnages non jouables), via une UX pensée pour offrir une nouvelle expérience d’utilisation. Les aider à formuler efficacement leur demande et responsabiliser les créateur·ices à la mis en place d’un système d’invite adapté dans Horizon. Présenter la formation dans le contexte de modèles mentaux en évolution afin d’aider les utilisateur·ices à s’adapter aux nouvelles technologies.
Limites et atténuations
Lors de l’intégration de la voix comme modalité de saisie, il est essentiel de prendre en compte ses limites et les moyens de les atténuer. Pour en savoir plus, consultez les Recommandations pour les interactions vocales.