使用Misty的关键短语识别(Wake Word),对文本的Azure语音(STT)和Azure文本(TTS)的第一个通过对话技能
https://github.com/wwlib/misty-azure
Misty II-对话技能(v2)https://youtu.be/-dte3khrmnq
Misty II-对话技能(v2)W/控制台https://youtu.be/hjd_yyee2v8
关于使用Luis Nlu https://medium.com/@andrew.rapo/robokit-setting-up-azure-cognitive-services-bing-bing-speech-luis-nlu-nlu-fbb39f5dc957
Azure服务是作为功能应用程序实现的
对话技能V2使用Misty的Misty.sendexternalRequest()拨打ADONTENT函数应用程序。该功能应用程序致电Luis NLU,然后返回一个字符串意图。
然后,对话技能V2调用TextTospeech函数应用程序并播放返回的音频。
对话技能v2使用misty.startkeyphraserencognition()听“嘿雾”键短语(即唤醒单词)
通过对话V2技能运行:
说“嘿,迷雾”
米斯蒂(Misty)会把她带到蓝色,表明她正在听
说“你知道有什么笑话吗?”
Misty会说:“将军在他的雪橇中保留他的军队?”
说“嘿,迷雾”
米斯蒂(Misty)会把她带到蓝色,表明她正在听
说“现在几点?”
Misty会说:“时间是当前的时间。”
该文件夹包含一个Azure Fucnction应用程序的代码,该应用程序从Misty处理音频并返回意图。该功能管理:
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>"
}
}
工具文件程序包含节点/JavaScript工具,用于测试对Azure的调用:
注意:这些工具中的每一个都需要config.json
的数据:
{
"Microsoft": {
"AudioToTTSFunctionURL": "",
"AudioToIntentFunctionURL": "",
"TextToTTSFunctionURL": ""
}
}