I. Présentation du projet▲
Les assistants personnels sont l'un des principaux cas d'utilisation de la technologie de conversion de la parole en texte. Les « mots du réveil » engagent des dispositifs pour traiter ce qu'ils entendent, comme « Hey Google » ou « Alexa », qui les envoient souvent dans le nuage si une connexion a été établie. Vous pouvez utiliser le service Watson « Speech to Text » de la même manière, selon la façon dont vous écrivez votre application client.
Bien que les bibliothèques et les méthodes puissent différer pour votre plate-forme cible ou votre langage de programmation, les étapes de ce tutoriel vous aident à comprendre comment créer une application qui est toujours à l'écoute, mais qui ne fonctionne qu'après le déclenchement d'un « mot de réveil ».
I-A. Objectifs d’apprentissage▲
Dans ce tutoriel, vous allez apprendre à créer un assistant virtuel dans Node.js qui s'engage avec l'utilisateur seulement après avoir entendu un « mot de réveil ». Il utilise plusieurs services Watson pour gérer le dialogue verbal entre l'utilisateur et l'assistant virtuel.
I-B. Conditions préalables▲
Pour mener à bien ce projet, il vous faudrait :
- Un compte IBM Cloud ;
- Une instance de service Watson Speech to Text ;
- Une instance de service de synthèse vocale Watson Text to Speech ;
- Une instance de service Watson Assistant ;
- Une compréhension de base de Node.js et NPM.
I-C. Temps estimé▲
Ce tutoriel devrait prendre environ 30 minutes. Ce temps suppose que vous avez un compte IBM Cloud et un environnement NPM installé sur votre ordinateur local (Mac OS X ou Linux).
Vous devrez créer plusieurs ressources pour compléter ce tutoriel, c'est donc une bonne idée de commencer par créer un nouveau sous-répertoire local pour les placer toutes.
II. Mise en œuvre du projet▲
II-A. Étape 1 : Créer des services Watson▲
Dans le tableau de bord IBM Cloud, cliquez sur Créer une ressource pour créer les versions « Lite » de chaque service.
-
Configurer les informations d'identification -
Copiez et collez le code suivant dans un fichier local et nommez-le .env.
Sélectionnez# Watson Assistant ASSISTANT_WORKSPACE_ID=<add_assistant_workspace_id> ASSISTANT_IAM_APIKEY=<add_assistant_iam_apikey> # Watson Speech to Text SPEECH_TO_TEXT_URL=<url> SPEECH_TO_TEXT_IAM_APIKEY=<add_speech_to_text_iam_apikey> # Watson Text to Speech TEXT_TO_SPEECH_URL=<url> TEXT_TO_SPEECH_IAM_APIKEY=<add_text_to_speech_iam_apikey>
-
Remplacez les balises <*****> par les valeurs réelles créées pour vos services.
Vous pouvez trouver les informations d'identification en cliquant sur Service credentials, puis affichez les informations d'identification dans la fenêtre du service Watson que vous avez créé, comme le montre l'image suivante.Une valeur WORKSPACE_ID supplémentaire est nécessaire pour accéder au service Watson Assistant. Pour obtenir cette valeur, sélectionnez Gérer, puis lancez l'outil depuis la fenêtre de votre service Watson Assistant. Dans la fenêtre de l'instance de service, sélectionnez Compétences pour afficher les compétences qui existent pour votre service. Pour ce tutoriel, nous utilisons l'exemple de compétence du service à la clientèle qui est fourni avec le service.
- Cliquez sur le bouton d'option (surligné dans l'image précédente) pour afficher tous les détails de vos compétences et vos références de service.
II-B. Étape 2 : Créer votre environnement d'exécution▲
Maintenant, vous devez télécharger les paquets NPM pour exécuter votre application. Le code suivant montre un exemple de fichier package.json que vous pouvez placer dans votre répertoire local.
{
"name"
:
"chatbot-with-voice-activation-wake-word"
,
"version"
:
"1.0.0"
,
"description"
:
"Converse with a virtual assistant."
,
"main"
:
"run.js"
,
"scripts"
:
{
"start"
:
"node run.js"
},
"dependencies"
:
{
"dotenv"
:
"^6.0.0"
,
"ibm-watson"
:
"^4.0.1"
,
"jsonfile"
:
"^4.0.0"
,
"mic"
:
"^2.1.1"
,
"node-ffprobe"
:
"^1.2.2"
,
"play-sound"
:
"^1.1.1"
,
"prompt"
:
"^1.0.0"
}
}
Après avoir créé le fichier, vous pouvez simplement exécuter la commande d'installation pour télécharger les paquets requis.
npm install
- Installer les dépendances liées à l’audio
Vous devrez peut-être installer quelques dépendances audio si elles n'existent pas sur votre système.
Sous OS X
Utilisez la commande brewpour installer le lecteur mplayer, sox et ffmpeg :
<