我正在使用给定的技术堆栈构建机器人:
我们使用瀑布模型来实现匹配的intent Dialog,其中包含一些处理函数和提示。在遵循这个场景之后,我需要识别内部处理函数内的实体,用于用户输入。
例如:
Bot:你想在哪里飞?
用户:新加坡。 (为此我们添加了像SIN - Singapore,SIN(同义词)这样的实体,所以我需要将值解析为SIN)
非常感谢您对此方案的任何帮助。
答案 0 :(得分:0)
这是一篇帖子Using api.ai with microsoft bot framework,您可以参考您的要求,以及https://github.com/GanadiniAkshay/weatherBot/blob/master/api.ai/index.js的样本。此示例中使用的天气API密钥已过期,但瀑布和识别器api密钥仍在运行。
一般来说:
api-ai-recognizer
实例化apiairecognizer
并利用builder.IntentDialog
加入recognizer
:
var recognizer = new apiairecognizer("<api_key>");
var intents = new builder.IntentDialog({
recognizers: [recognizer]
});
IntentDialog
中,使用builder.EntityRecognizer.findEntity(args.entities,'<entity>');
识别意图实体。