Formulaires conversationnels
Dans cette section
Les formulaires conversationnels sont un outil indispensable d'Algho pour profiler en détail une demande spécifique de l'utilisateur.
Pour l'entreprise, il s'agit d'un outil de lead generation utile pour recueillir des informations sur la personne ou l'entreprise qui interagit avec l'assistant. Pour l'utilisateur, il s'agit d'un outil nécessaire pour soumettre une demande et obtenir un service spécifique.
Lors de la conception d'un formulaire, on rédige une série de questions que l'assistant posera à l'utilisateur. En fonction des réponses fournies, la conversation se déploie sur des flux de communication verticaux dédiés à un sujet spécifique.
Pour terminer le formulaire avec succès, l'utilisateur doit répondre à toutes les questions qui lui sont posées.
Il s'agit en résumé de créer et de remplir un formulaire par voie numérique, en dialoguant avec un assistant capable d'expliquer à l'utilisateur pourquoi cette donnée est nécessaire, à quoi elle sert et comment elle doit être fournie.
Toutes les options qui impliquent l'utilisation de l'IA Générative sont disponibles uniquement pour les comptes dont cette fonctionnalité est activée.
Accéder aux formulaires
La section des formulaires se trouve dans le menu principal sur la colonne de gauche :
Une fois l'option "Forms" sélectionnée, pour créer un nouveau formulaire, il faut cliquer sur le bouton "Ajouter" :
S'ouvre alors le premier écran avec tous les paramètres à configurer pour les options préliminaires du formulaire.
Paramètres généraux du formulaire
L'écran de création du formulaire contient toutes les options préliminaires à configurer. Les champs marqués d'un astérisque (*) sont obligatoires.
Paramètres de base
- "Nom du formulaire" : c'est le nom qui identifie la fonctionnalité du formulaire en cours de construction. Il est important que le nom soit "parlant" afin de pouvoir le reconnaître parmi tous les autres.
- "Catégorie" : attribuer une catégorie peut être utile pour créer un filtrage supplémentaire.
- "Langue" : il est possible de sélectionner parmi 8 langues différentes.
- "Prompt pour le remplissage automatique du formulaire avec AI GEN" : pour activer l'utilisation de l'IA GEN sur le formulaire, il faut rédiger dans cette section un prompt préliminaire expliquant quelles données seront demandées à l'utilisateur et les finalités de l'ensemble du formulaire (voir IA Générative dans les formulaires)
- "Message de bienvenue" : c'est une phrase que l'assistant prononcera. On insère généralement une phrase courte pour expliquer à l'utilisateur pourquoi il est obligatoire de répondre aux questions et quel type de données est requis. Ce message se déclenche immédiatement après la réponse de l'intent auquel le formulaire est rattaché.
- "Message d'échec" : pour chaque champ, un nombre de tentatives peut être défini manuellement, au-delà duquel le formulaire s'interrompt automatiquement. Le message d'échec, même s'il n'est pas personnalisé, se déclenchera avec une phrase prédéfinie.
- "Message de remerciement" : c'est le message final qui fermera le formulaire après que l'utilisateur aura répondu à toutes les questions. Il n'existe pas de message par défaut.
Consentements et interruption manuelle
- "Consentement à la vie privée" : si des données sensibles sont demandées, en activant cette option, il est possible de choisir les consentements à activer (marketing, communication des données à des tiers, consentement newsletter, événements et webinaires). L'utilisateur les sélectionnera lui-même.
- "Désactiver l'interruption manuelle du formulaire" : à tout moment dans un formulaire, on peut décider d'afficher ou non l'option "Annuler" qui permettrait à l'utilisateur d'interrompre le formulaire à tout moment.
Options AI GEN et auto-remplissage
- "Utiliser AI GEN pour reformuler les textes" : l'assistant utilise l'IA GEN pour reformuler tous les textes du formulaire. Par exemple, si la question est "Donne-moi ton nom et prénom", l'assistant avec cette option activée pourrait la reformuler en disant "J'ai besoin de tes coordonnées".
- "Remplissage automatique du formulaire" : l'assistant extrait de la demande initiale les informations nécessaires pour remplir les champs du formulaire. Si un utilisateur dit dans sa demande initiale "Je suis Mario Rossi, j'habite à Rome et je voudrais réserver une chambre" et que le formulaire prévoit les champs "Nom et Prénom" et "Ville", l'assistant ne demandera pas ces informations mais les remplira automatiquement.
- "Remplissage automatique après chaque champ" : l'assistant extrait de la réponse à chaque champ des informations utiles pour remplir également les champs suivants. Pour activer cette option, il est nécessaire d'activer également "Remplissage automatique du formulaire" et "Utiliser AI Gen pour reformuler les textes".
- "Remplir automatiquement les champs déjà remplis par le passé" : cette option permet à l'utilisateur de ne pas avoir à fournir plusieurs fois la même donnée lorsqu'il se trouve dans des formulaires différents mais avec certaines questions en commun. Si l'utilisateur a déjà fourni son code fiscal dans le formulaire "Réservation de chambre", lorsqu'il se trouve dans le formulaire "Location de voiture", le code fiscal ne lui sera pas demandé.
Recherche dans la base de connaissances
- "Chercher dans les sources du bot en cas d'échec de validation du champ" : les formulaires sont des structures rigides qui obligent l'utilisateur à fournir l'information demandée. En activant cette option, les formulaires conversationnels deviennent plus flexibles. Si l'utilisateur répond à la question du formulaire par une autre question, l'assistant cherche dans la base de connaissances l'intent correspondant, répond à l'utilisateur, puis repose la question du formulaire.
Proposons un exemple pour faciliter la compréhension :
- ASSISTANT : Donne-moi l'adresse où nous devons venir livrer le produit.
- UTILISATEUR : Mais vous livrez à l'étage ?
- ASSISTANT : [cherche dans la base de connaissances (voir Base de connaissances et Smart Document Access), fournit une réponse puis repose la question du formulaire].
Condition essentielle pour que cette option soit fonctionnelle : disposer d'une base de connaissances configurée.
Texte pour sauter et interrompre
- "Texte pour sauter la question" : lors de la configuration des champs, il est possible de décider quelles questions rendre obligatoires. Lorsqu'une question n'est pas obligatoire, l'option "Suivant" apparaîtra, au cas où l'utilisateur ne souhaite pas fournir la donnée.
Le texte de cette option peut être personnalisé et des alias peuvent être ajoutés, afin d'intercepter également d'éventuelles reformulations. Si l'utilisateur, au lieu de taper "Suivant", utilise le micro et dit "Skip" ou "Passer", l'assistant comprend quand même et passe à la question suivante.
- "Texte pour interrompre la saisie" : même fonctionnement que le précédent. Il concerne la personnalisation du bouton pour interrompre la saisie du formulaire. Il est possible d'ajouter des synonymes de "Annuler" comme "stop", "assez", "quitter".
- "Message d'interruption du formulaire" : si l'utilisateur interrompt le formulaire, il est possible d'écrire un message que l'assistant prononcera pour l'avertir de la non-finalisation du service.
Paramètres email et web service
- "E-mail" : pour que les réponses complétées arrivent à destination, il est nécessaire de saisir une adresse email. Il peut s'agir d'une adresse cumulative contenant plusieurs adresses. Si ce champ est laissé vide, l'utilisateur remplit le formulaire mais personne ne le recevra. Il n'est pas obligatoire, car en cas d'intégration directe avec une base de données d'entreprise, les données seront transmises via un web service.
- "Envoyer la conversation par e-mail" : il est possible d'envoyer également la conversation entière par email et de voir l'intégralité des échanges entre l'utilisateur et l'assistant.
- "Joindre les fichiers téléchargés par les utilisateurs à l'email de notification" : si activée, les fichiers téléchargés par les utilisateurs seront joints directement à l'email de notification (jusqu'à 20 Mo au total).
Les fonctionnalités suivantes sont purement techniques et utilisées pour des intégrations plus avancées nécessitant des connaissances informatiques.
- "URL Web Service" : indique l'adresse du service externe auquel Algho envoie les données collectées lors de la saisie du formulaire. Lorsque l'utilisateur répond aux questions, les informations sont sauvegardées et transmises à cette URL en temps réel.
- "URL Web Service Asynchrone" : indique l'adresse du service externe auquel Algho envoie les données du formulaire en mode asynchrone. L'envoi ne nécessite pas de réponse immédiate du système externe.
- "Web service metadata" : JSON qui est transmis aux web services configurés dans les champs et lors de la soumission des formulaires.
Commande
En cliquant sur la barre de recherche "Commande", un sous-menu s'ouvre avec les options suivantes :
- "DEMANDE OPÉRATEUR" : en activant cette option, juste après la conclusion du formulaire, l'utilisateur se voit proposer de lancer une Live Chat (voir Live Chat). Condition essentielle : l'utilisateur doit aller jusqu'au bout du formulaire en répondant à toutes les questions.
- "DÉMARRER NOUVELLE CONVERSATION" : la conversation reprend depuis le début. L'assistant se recharge et repart du message de bienvenue. L'utilisateur est considéré comme nouveau. Dans l'historique des conversations, on trouvera deux conversations distinctes.
- "REDÉMARRER NOUVELLE CONVERSATION" : la conversation reprend depuis le début, mais l'ID de l'utilisateur reste le même. On aura toujours deux conversations distinctes dans l'historique, mais avec deux ID identiques identifiant le même utilisateur.
- "STANDBY" : après la saisie du formulaire, la conversation s'interrompt, sans donner à l'utilisateur l'opportunité de dialoguer avec l'assistant. Dans le cas du VoIP, l'appel est terminé. Utile lorsque l'assistant est conçu uniquement pour recueillir des informations et non pour en fournir.
Action
- "EXECUTE SCRIPT" : permet d'exécuter un JavaScript personnalisé à la fin du formulaire (pour l'automatisation de navigateur).
- "OPEN URL" : permet d'ouvrir une URL via JSON.
Construction des champs du formulaire
Une fois les paramètres généraux configurés, il est nécessaire de construire la série de questions. Pour accéder à cette section, il suffit d'appuyer sur le bouton "Modifier les champs" en haut à droite.
On se trouve alors dans l'écran d'édition des champs.
Appuyer sur le bouton "Ajouter un nouveau champ" pour commencer à rédiger le flux conversationnel.
Configuration du champ
- "Nom du champ" : identifie le sujet de la question. Lorsque l'email récapitulatif arrivera, les noms des champs représenteront les intitulés des données à côté desquels se trouveront les réponses de l'utilisateur.
- "Type de champ" : indique le type de contrôle que l'assistant exercera sur la réponse. Le type "Nom complet" attend au moins deux termes séparés. "Email" nécessite un format d'email valide. "Numéro de téléphone" attend un certain nombre de chiffres.
- "Description" : champ dans lequel saisir le prompt au cas où la GEN AI est activée pour valider le champ (voir IA Générative dans les formulaires).
- "ID Externe" : identifiant optionnel qui permet de relier le champ du formulaire à un système externe (CRM, logiciel de gestion, base de données). Par exemple, si dans le formulaire le champ s'appelle "Nom et Prénom", dans le système externe il pourrait être identifié comme "full_name".
- "Question" : la question qui sera énoncée par l'assistant.
- "Champ obligatoire" : il est possible de décider si cette question est obligatoire. Si elle ne l'est pas, l'option "Passer" apparaîtra, permettant à l'utilisateur de ne pas répondre.
Options de remplissage automatique
- "Remplir automatiquement le champ s'il a déjà été rempli par le passé" : permet de ne pas répéter cette question si le champ existe déjà dans un autre formulaire du même assistant auquel l'utilisateur a déjà répondu.
- "Utiliser AI GEN pour l'auto-remplissage du champ" : l'assistant, grâce à la GEN AI, extrait de la demande initiale l'information nécessaire pour remplir ce champ (voir IA Générative dans les formulaires)
Pour activer "Utiliser AI GEN pour l'auto-remplissage du champ", il est nécessaire de saisir le prompt dans la section dédiée "Prompt pour remplissage automatique du formulaire avec AI GEN" dans les paramètres généraux du formulaire.
Messages et tentatives
- "Texte de succès" : texte que l'assistant prononcera immédiatement après que l'utilisateur a répondu à la question. Il n'est pas obligatoire.
- "Texte d'erreur" : si la réponse de l'utilisateur n'est pas validée, un message d'erreur se déclenche. S'il n'est pas saisi, un message par défaut s'affichera.
- "Tentatives d'interruption du formulaire" : après un certain nombre de tentatives, si la réponse n'est pas correctement validée, le formulaire s'interrompt et le message d'échec se déclenche. Le nombre par défaut de tentatives est 3 (il est possible de définir une valeur de 0 à 99).
Fonctions avancées du champ
Les fonctions avancées concernent principalement la gestion des valeurs admissibles (voir Valeurs admissibles).
Mode d'affichage des valeurs admissibles :
- "CACHER" : les valeurs admissibles sont présentes mais non visibles pour l'utilisateur. Utile lorsqu'elles sont nombreuses et que la réponse de l'utilisateur doit correspondre à l'une d'elles. Exemple : "De quelle région d'Italie nous appelles-tu ?".
- "DÉFILABLES" : si les valeurs admissibles sont nombreuses, au lieu de les afficher en plein écran, il est possible de les rendre visibles une par une via le défilement.
- "PLEIN ÉCRAN" : l'assistant affichera un nombre prédéfini de valeurs. Si elles sont nombreuses, on peut décider de les "déployer" en les affichant toutes en plein écran.
Options de correspondance :
- "CORRESPONDANCE SÉMANTIQUE" : si l'utilisateur utilise le micro ou est sur le canal VoIP, la prononciation peut ne pas être précise. En activant cette fonction, Algho associe la prononciation à la valeur réelle écrite.
- "CORRESPONDANCE AVEC SYNONYMES" : si l'utilisateur utilise un terme différent, l'assistant cherche dans les synonymes le terme similaire. Exemple : valeur admissible "CEO" et l'utilisateur dit "Head". Si "Head" est saisi comme synonyme, la réponse est validée.
- "IGNORER LA SÉMANTIQUE" : strictement liée à la correspondance sémantique. Elle indique à l'assistant de ne pas intercepter les variations de prononciation. La valeur admissible doit être prononcée ou écrite exactement comme indiqué.
Autres options avancées :
- "VALIDER AVEC AI GEN" : permet d'extraire de la réponse de l'utilisateur les informations valides pour remplir le champ. Remplace les options de correspondance décrites ci-dessus (voir IA Générative dans les formulaires)
- "VALEURS SÉLECTIONNABLES" : détermine combien de valeurs admissibles l'utilisateur peut sélectionner (multi-réponse).
- "LIMITER LES VALEURS AFFICHÉES" : décide combien de valeurs admissibles afficher. Si seulement une partie, le bouton "Afficher plus" apparaîtra.
- "TOUJOURS AFFICHER LE TEXTE DE SUCCÈS ET LE MESSAGE DE REMERCIEMENT" : en cas de remplissage automatique de certains champs, d'éventuels messages de remerciement et de succès ne seraient pas énoncés. Avec cette option, ils sont toujours affichés.
- "NE PAS RÉPÉTER LA QUESTION EN CAS D'ERREUR" : on peut décider de faire répéter ou non la question par l'assistant après une erreur. Le meilleur cas est de construire un message d'erreur qui explique à l'utilisateur comment fournir la donnée, sans avoir besoin de répéter la question.
Écran récapitulatif
Une fois les paramètres confirmés, on obtient l'écran récapitulatif :
Cet écran affiche :
- Nom du champ (ex. "Région")
- Question associée (ex. "Dans quelle région se trouve ton entreprise ?") avec le type de champ
- Astérisque rouge : champ obligatoire
- Nombre de valeurs admissibles saisies (ex. "21")
Voici, dans l'ordre, les options disponibles :
- Modifier : modifier les paramètres du champ
- Dupliquer : dupliquer le champ créé
- Web Service : connecter un système externe de valeurs admissibles via API
- Valeurs admissibles : insérer des options multiples parmi lesquelles l'utilisateur peut choisir
- Regex : expression régulière pour contrôler que la réponse respecte un format précis
- Supprimer : supprimer le champ
Valeurs admissibles
Il est nécessaire de saisir des valeurs admissibles lorsqu'une question du formulaire prévoit comme réponse un choix multiple d'options.
Proposons un exemple : une question du type "Dans quel secteur opère ton entreprise ?" avec les alternatives Marketing, IT, Food & Beverage parmi lesquelles l'utilisateur doit choisir.
Comment saisir les valeurs admissibles
Tout d'abord, il est nécessaire de construire le champ (voir Construction des champs du formulaire). Une fois la question confirmée, on se trouve dans l'écran récapitulatif :
Pour saisir les valeurs admissibles, il faut cliquer sur l'icône "Valeurs admissibles".
L'écran suivant s'ouvre :
Appuyer sur le bouton "Ajouter" pour ajouter les valeurs admissibles.
- "Nom" : la valeur admissible, exactement comme elle doit apparaître à l'écran.
- "Alias" : il est possible d'ajouter des alias pour que, si l'utilisateur écrit un terme différent mais apparenté, l'assistant l'intercepte quand même.
Différence entre correspondance sémantique et alias
- La correspondance sémantique permet d'intercepter les variations sémantiques de la valeur admissible (ex. variations de prononciation).
- Les alias permettent d'intercepter les synonymes de la valeur admissible (ce que la correspondance sémantique ne pourrait pas faire).
La différence principale est qu'avec l'alias, l'algorithme valide la valeur admissible uniquement s'il y a une correspondance exacte et parfaite entre ce que dit ou écrit l'utilisateur et l'alias indiqué. Si l'utilisateur disait "business development" et que l'alias n'est pas présent, la réponse ne serait pas validée.
Une fois toutes les valeurs admissibles saisies, on sauvegarde et on obtient l'écran récapitulatif :
Appuyer sur "Confirmer". Le champ complété apparaîtra avec l'icône des valeurs admissibles allumée en vert, indiquant que des options de choix sont présentes.
Définir des déclencheurs pour un formulaire
Une fois créé, le formulaire ne s'active pas automatiquement. Il doit être "lié" au concept auquel il est étroitement connecté.
Il existe deux façons de créer ce lien.
Via la Base de Connaissances
Si l'assistant utilise une base de connaissances, il est nécessaire de lier le formulaire à l'intent.
Entrer dans la base de connaissances et accéder à la modification de l'intent.
Une fois dans l'intent, descendre jusqu'à l'option "Sélectionner le formulaire à lier" :
Cliquer sur la flèche à l'extrême droite et sélectionner le formulaire à rattacher :
Sauvegarder. À côté de l'intent apparaîtra une bulle de couleur verte, indiquant que le formulaire a été lié :
En cliquant sur la bulle, il est possible d'entrer directement dans le formulaire.
Via SDA ou Gen AI
La deuxième façon de déclencher un formulaire est via un prompt, en utilisant l'IA Générative. Dans ce cas, le formulaire n'est pas lié à un intent, dépassant ainsi la logique des intents et de la KB statique.
Voir Connecter un assistant à la documentation et IA Générative pour la Base de Connaissances pour plus d'informations.
IA Générative dans les formulaires
L'activation de la GEN AI sur les formulaires agit sur deux éléments de la communication, écrite et verbale : la question et la réponse de l'utilisateur. L'intégration de la GEN AI sert à intercepter des structures grammaticales et sémantiques complexes et à favoriser une interaction plus fluide et dynamique.
L'IA générative peut être employée pour deux niveaux d'analyse :
- L'IA GEN de premier niveau analyse la demande de l'utilisateur en extrayant les informations pour remplir les champs du formulaire.
- L'IA GEN de deuxième niveau analyse uniquement les réponses que l'utilisateur fournit aux différentes questions du formulaire.
Les deux niveaux peuvent être actifs simultanément.
Premier niveau : analyse de la demande de l'utilisateur
La GEN AI agit sur la demande de l'utilisateur. L'algorithme extrait les informations de la demande initiale pour remplir automatiquement les champs du formulaire, évitant ainsi de demander des informations que l'utilisateur a déjà exprimées.
Prenons comme exemple un formulaire pour un entretien préliminaire.
Le formulaire présente les champs suivants :
Champ 1. Laisse-moi tes coordonnées. Nom et prénom.
Champ 2. Donne-moi une adresse email valide pour te recontacter.
Champ 3. Combien de langues parles-tu ?
Si l'utilisateur dans la demande initiale exprime une demande structurée du type :
UTILISATEUR : Bonjour, je suis Mario Rossi, je voudrais passer un entretien d'embauche avec vous. Je parle deux langues couramment : l'italien et l'anglais.
Algho extrait les informations relatives aux champs 1 et 3 et demande seulement :
ASSISTANT : Donne-moi une adresse email valide pour te recontacter.
Deuxième niveau : analyse de la réponse de l'utilisateur
La GEN AI agit sur la réponse de l'utilisateur en aidant l'assistant à mieux comprendre l'information reçue et à la valider.
En imaginant une interaction comme celle-ci :
ASSISTANT : Combien de langues parles-tu ? Indique aussi le niveau de connaissance de chacune.
UTILISATEUR : Je parle anglais et français
Le prompt saisi et l'option "Valider avec AI GEN" aident l'assistant à comprendre que la réponse ne doit pas être validée car le candidat n'a pas spécifié le niveau de connaissance.
Comment activer la GEN AI sur les formulaires
Tout d'abord, il est nécessaire de créer le formulaire et de définir le titre et la langue, puis de saisir le premier prompt :
Ce prompt doit être très générique. Il sert à donner une instruction préliminaire à l'assistant.
Ce prompt est nécessaire pour les deux niveaux d'analyse.
En cas d'analyse de 1er niveau, activer l'option "Remplissage automatique du formulaire".
Cette option n'est pas nécessaire si l'on souhaite activer uniquement l'analyse de 2e niveau.
Construire les champs du formulaire avec la structure suivante :
Dans le champ "Description", saisir un deuxième prompt, spécifique à la question créée. On explique à la GEN AI quand valider la réponse et quand ne pas le faire. Selon le niveau d'analyse actif, en cas de non-validation :
- 1er niveau : la question sera posée
- 2e niveau : le message d'erreur se déclenchera et la question sera posée à nouveau.
Activer l'option "Utiliser AI GEN pour l'auto-remplissage du champ" pour l'analyse de 1er niveau.
Activer "Valider avec AI Gen" sous "Fonctions avancées" pour l'analyse de 2e niveau.
Formulaires imbriqués
Les formulaires doivent être conçus comme des diagrammes de flux où, selon les réponses fournies par l'utilisateur, la communication peut varier et prendre des chemins différents.
Proposons un exemple : un formulaire pour profiler l'identité d'une entreprise. La première question est le secteur dans lequel l'entreprise opère et, selon le secteur, on souhaite poser des questions dédiées en créant un flux spécifique. Cela est possible grâce aux formulaires imbriqués.
Formulaire parent
Voici le formulaire de départ (appelé "parent") :
Avec les valeurs admissibles suivantes :
Créer un formulaire imbriqué
Créer un autre formulaire à partir de zéro, par exemple "Imbriqué Food and Beverage", avec les questions spécifiques à ce secteur :
Imbriquer le formulaire dans la valeur admissible
Revenir dans le formulaire parent, entrer dans la valeur admissible "Food & Beverage" et imbriquer le formulaire créé :
La même opération peut être répétée pour toutes les autres valeurs admissibles.
Visualiser la structure
Pour visualiser la structure finale du formulaire, entrer dans le formulaire parent et cliquer sur le bouton "Afficher la structure du formulaire" :
Un écran récapitulatif s'ouvrira avec l'ensemble de la structure :
En cliquant sur les crayons, il est possible d'accéder à chaque formulaire et d'effectuer des modifications.
Comportement du flux
À la fin de chaque formulaire, indépendamment du nombre de formulaires imbriqués, le flux revient toujours au formulaire parent.
Cela signifie que si l'on insère un message de remerciement dans le formulaire parent et un autre message de remerciement dans le formulaire imbriqué, l'assistant les prononcera tous les deux. Il en va de même pour les champs : si l'on ajoute des champs dans le formulaire parent, à la fin des formulaires imbriqués, le flux revient au formulaire initial en proposant également les questions ajoutées.