Interfaces vocales et assistants
1) Qu'est-ce que VUI et quand il est nécessaire
L'interface vocale (VUI) est un moyen d'interagir par la parole : assistants dans l'application/navigateur, haut-parleurs intelligents, IVR/téléphonie, voix dans l'auto et la télévision.
Convient pour : scripts mains occupées (conduite, cuisine), commandes rapides (« allume »..., « appelle »...), disponibilité, navigation dans des menus complexes.
Ne convient pas à : sélection visuelle précise (catalogues, tables), longue saisie de données structurées sans écran.
2) Modèle de dialogue : Intents, entités et contexte
Intent (objectif) : ce que l'utilisateur veut : « Créer _ paiement », « Vérifier _ solde ».
Slots/entités : paramètres de la cible : montant, devise, destinataire, date.
Contexte/dialogue-state : ce que l'on sait déjà, c'est que l'on précise où on va se brancher.
Règles de confirmation : ce que nous confirmons explicitement (argent, données personnelles).
json
{
"intent": "MakeDeposit",
"slots": {
"amount": {"type": "number", "required": true, "confirm": "sensitive"},
"currency": {"type": "currency", "required": true, "default": "UAH"},
"method": {"type": "payment_method", "required": false}
}
}
3) Modèles de dialogue
1. L'équipe en une seule phrase : « Remplis le compte de 500 hryvnias Apple Pay ». → confirmation → l'action.
2. Dialogue de clarification : « Qui traduire ? » → « Pour quelle somme ? » → confirmation.
3. Assistant étape par étape : scripts complexes avec validation des données et marche arrière.
4. Reconnaissance de l'intention + NLU-rephrase : support des formulations variatives.
5. Aide rapide : « Quelles sont les limites de retrait ? » - réponse courte + « Afficher à l'écran ».
4) Formulation : voix et ton
La voix de la marque : confiante, calme, amicale ; sans réducteurs et « blagues » dans les étapes critiques (paiements, sécurité).
Max. longueur de la réplique de l'assistant : 1-2 phrases ; les réponses longues sont de casser et de suggérer « Continuer ? »
Les questions sont spécifiques : « Pour quel montant compléter ? » au lieu de « Que faisons-nous ensuite ? »
5) Confirmation, sécurité et éthique
Confirmation rigoureuse des actions sensibles : indiquer les paramètres clés ("Remplir de 500 hryvnias avec une carte... 4581 ? »)
Double confirmation pour les opérations irréversibles.
Sans parler de données personnelles complètes.
Possibilité d'annuler/annuler : Annuler, Arrêter, Annuler la dernière étape.
6) Erreurs et incompréhension
Types d'échec et réponses :- L'erreur ASR (n'a pas entendu) : "Je n'ai pas entendu le montant. Répétez, s'il vous plaît"
- "Je n'ai pas compris la demande. Je peux compléter le compte ou afficher le solde. Que choisirez-vous ?"
- Aucune donnée/restriction : "Cette méthode n'est pas disponible dans votre région. Nommer d'autres options ?"
- Réseau/service : "Il n'y a pas de lien avec le service de paiement. Le refaire dans une minute ?"
Règle : 2 tentatives d'interrogatoire maximum → proposer une alternative (par écran/personne).
7) Vitesse et barge-in (interruption)
Latence TTFB : cible <300-500 ms ; si plus long est court « em-mm » -signal/earcon.
Barge-in : l'utilisateur peut interrompre l'assistant à tout moment ; nous traitons l'interruption correctement.
Streaming de la réponse : nous commençons à parler avant que tout le texte soit prêt, mais sans une falaise de sens.
8) TTS/ASR et SSML : comment dire « humain »
Prononciation de nombres/monnaies/dates : formats locaux (« p 'yat hryvnia », « 15 feuilles »).
Pauses et accentuations : SSML' <break time = « 300ms »/> ',' <emphasis level =« moderate »> '.
Lecture des abréviations/codes : '<say-as interpret-as = « characters »> IBAN </say-as>'.
Vitesse et timbre : Pas plus vite que 0. 9 × de base pour être lisible.
xml
<speak>
Top up on <say-as interpret-as = "cardinal"> 500 </say-as>
<sub alias = "hryvnia"> UAH </sub>?
<break time="300ms"/>
Please confirm.
</speak>
9) Multimodalité : voix + écran
Indices visuels : carte de confirmation, liste des méthodes, progrès.
Hand-off à l'écran : "J'ai envoyé des options à l'écran. Sélectionnez une méthode
Synchronisation de l'état : la voix s'initie, l'écran se termine (et vice versa).
10) Multilinguisme et localisation
Définition automatique de la langue par session/configuration plutôt que par phrase.
Glossaire des termes : terminologie unique pour RU/UA/TR/EN.
Formats régionaux de nombres/monnaies/dates, prononciation des noms/toponymes.
Basculer dans le dialogue : « Passer à l'Ukraine » est une commande explicite.
11) Disponibilité (A11y) dans la voix
Confirmation de l'action - claire et courte.
Répétition sur demande : « Refaire » traduit la dernière réplique.
Volume/vitesse : « Parle plus lentement/plus silencieux/plus fort ».
Pour les malentendants : sous-titres/transcription à l'écran, signaux vibratoires.
Pour les troubles de la parole : modes alternatifs de saisie (bouton, préréglages).
12) Confidentialité, loging et conformité
Wake-word et indicateur d'enregistrement : état explicite « j'écoute ».
Traitement local, si possible ; sinon, la minimisation des données.
Masquage des fragments sensibles dans les logs (PAN, IBAN, adresse) et auto-édition audio.
Durée de conservation et droit de suppression sur demande ; Paramètres Ne pas enregistrer l'historique.
Limites d'âge/contrôle parental (voix/équipes pour enfants).
Transparence : "J'enregistre cette équipe pour améliorer la reconnaissance. Vous pouvez le désactiver dans les paramètres"
13) La personne de l'assistant
Nom/personne : brève biographie, domaine de compétence qu'il sait/ne sait pas.
Ton par situation : conventionnel (amical), critique (neutre), formateur (soutenant).
Frontières : « Je ne donne pas de conseils financiers, mais je peux montrer une référence ».
14) Métriques de qualité VUI
Taux de reconnaissance Intent (précision NLU).
Slot fill rate и avg. turns to fill.
ASR WER/CER (erreur de reconnaissance de mots/caractères).
Task Success / Completion rate и Time-to-Complete.
Taux d'escalade (par opérateur/écran).
Barge-in usage и Latency p95.
User Satisfaction/CSAT après le script.
Abandonment à l'étape.
15) Test et QA de la voix
Jeux de phrases de test : synonymes, formes parlées, accents, erreurs.
Bruits de l'environnement : rue/auto/cuisine, microphones différents.
Dialogue-relais : scripts jouables, golden-set pour la régression.
Wizard-of-Oz au début.
Scénarios juridiques : comment l'assistant répond aux demandes potentiellement dangereuses.
16) Intégration avec le produit (iGaming Case)
Équilibre/dépôt/retrait : "Quel équilibre ? ", "Remplir à 200 UAH"..., "État de sortie".
Bonus/missions : "Quels sont les bonus disponibles ? ", "Active le cache hebdomadaire".
Jeu responsable : « Fixez une limite de dépôt de 1000 UAH par semaine ».
État des systèmes : « Y a-t-il des travaux techniques ? »
17) Anti-modèles
Les longs monologues de l'assistant sans possibilité d'interrompre.
Confirmations implicites de transactions monétaires.
L'incontesté « n'a pas compris » sans un indice d'options.
Sons/jingles excédentaires qui entravent la perception.
Essayer de « voix » de résoudre des problèmes où vous avez besoin d'un choix visuel détaillé.
18) Modèles de promotions et de réponses
Affinement de la fente (somme) :- « Pour quel montant compléter le compte ? »
- Utilisateur : « Cinq cents ».
- "Ajouter 500 hryvnias ? Confirmez, s'il vous plaît"
- "Confirmez la reconstitution de 500 hryvnias avec la carte... 4581. Dire "je confirmerai" ou "annuler""
- "Je n'ai pas entendu le mode de paiement. Je peux vous suggérer : Apple Pay, carte, cryptocochelec. Que choisirez-vous ?"
- J'ai envoyé les méthodes disponibles à l'écran. Sélectionnez et dites « prêt » pour continuer
19) Exemples de modèles SSML
Nombre/devise et pause :xml
<speak>
Your current balance is
<say-as interpret-as="cardinal">1250</say-as>
<sub alias = "hryvnia"> UAH </sub>.
<break time="250ms"/>
Shall we continue?
</speak>
Accent mis sur un mot important :
xml
<speak>
<emphasis level = "moderate "> Caution </emphasis>: Verification is required for output.
</speak>
Prononciation de abréviation :
xml
<speak>
Recharge with <say-as interpret-as = "characters"> IBAN </say-as>?
</speak>
20) Chèques-feuilles
Dialogue/contenu avant la sortie
- Pour chaque intent, une liste de synonymes/variantes de phrases.
- Pour chaque fente obligatoire est une question claire.
- Actions sensibles - avec confirmation explicite.
- Il existe une alternative courte « par écran « /« opérateur ».
- Répliques ≤ 2 propositions ; long - avec "Continuer ? ».
Technique et qualité
- Soutenu par barge-in et retour au dialogue après l'interruption.
- La latence p95 est normale ; il y a des earcons en cas de retard.
- SSML est configuré : pauses, nombres, accentuations.
- Les logs sont impersonnels/masqués ; la gestion de l'histoire est là.
- Le multilinguisme et les formats locaux ont été testés.
A11y et sécurité
- « Répéter/Parler plus lentement/Plus fort » fonctionnent.
- Les données personnelles/de paiement complètes ne sont pas exprimées.
- Il y a annulation/annulation de l'action par la voix.
- Les limites d'âge et régionales ont été testées.
21) Cadre de la spécification de dialogue (modèle)
Objectif du scénario : (par exemple, « Dépôt ≤ 90 secondes »)
Intents et synonymes : liste d'exemples de phrases.
Слоты: `amount` (req, confirm), `currency` (default=UAH), `method` (enum).
Règles de confirmation : pour quelles valeurs/seuils une répétition est nécessaire.
Options d'erreur : ASR, NLU, pas de service - textes + branches.
Sorties multimodales : quelles cartes/écrans nous montrons.
Logs et vie privée : quoi et comment nous masquons, stockage TTL.
Trempe finale
D'abord intents/slots/règles de confirmation, puis textes.
Parlez court, laissez-moi interrompre et annuler.
Personnalisez le SSML, les formats locaux et le ton par contexte.
Gardez la confidentialité et le logage sous contrôle.
Mesurez les métriques Intent/Slot/ASR, Task Success et Latence.
Toujours avoir une alternative à l'écran et le chemin de la personne.