Mistyのキーフレーズ認識(Wake Word)、Azure Speech to Text(STT)、Azure Text to Speech(TTS)を使用した最初のパス会話スキル
https://github.com/wwlib/misty-azure
Misty II-会話スキル(V2)https://youtu.be/-dte3khrmnq
Misty II -Conversation Skill(V2)w/Console https://youtu.be/hjd_yyee2v8
LUIS NLU https://medium.com/@andrew.rapo/robokit-setting-up-azure-cognitive-services-bing-sepeech-luis-nlu-fbb39f5dc957の使用に関する注意
Azureサービスは、関数アプリとして実装されています
会話スキルV2は、MistyのMisty.sendexternalRequest() on-robot API呼び出しを使用して、audiotintent関数アプリを呼び出します。 FunctionアプリはLuis NLUに電話をかけ、その後、文字列として意図を返します。
次に、会話スキルV2はTextTospeech Functionアプリを呼び出し、返されるオーディオを再生します。
会話スキルV2はMisty.startkeyphraserEcognition()を使用して、「Hey Misty」キーフレーズ(つまりウェイクアップワード)を聞きます
会話V2スキルランニング:
「ねえ、ミスティ」と言う
ミスティは彼女が彼女が聞いていることを示すために青に導いた
「ジョークを知っていますか?」と言います。
ミスティは、「将軍は彼の軍隊をどこに維持するのか?、彼の袖の中で」と言うでしょう。
「ねえ、ミスティ」と言う
ミスティは彼女が彼女が聞いていることを示すために青に導いた
「何時ですか?」と言います。
ミスティは次のように言います:「時間は現在です」。
このフォルダーには、Mistyからオーディオを処理し、意図を返すAzure Fucnactionアプリのコードが含まれています。関数の管理:
try {
const accessToken = await getAccessToken ( ) ;
const utterance = await speechToText ( accessToken , audioBase64 , context ) ;
await textToIntent ( accessToken , utterance , context ) ;
} catch ( err ) {
context . log ( `Something went wrong: ${ err } ` ) ;
}
注:各関数には、 config.json
からのデータが必要です。
{
"Microsoft": {
"AzureSpeechSubscriptionKey": "<YOUR-BING-SUBSCRIPTION-KEY>",
"nluLUIS_endpoint": "https://westus.api.cognitive.microsoft.com/luis/v2.0/apps/",
"nluLUIS_appId": "<YOUR-LUIS-APP-ID>",
"nluLUIS_subscriptionKey": "<YOUR-LUIS-SUBSCRIPTION-KEY>"
}
}
Tools Foldlerには、Azureへの呼び出しをテストするためのノード/JavaScriptツールが含まれています。
注:これらの各ツールには、 config.json
からのデータが必要です。
{
"Microsoft": {
"AudioToTTSFunctionURL": "",
"AudioToIntentFunctionURL": "",
"TextToTTSFunctionURL": ""
}
}