我使用亚马逊的LEX制作了一个聊天机器人。
有什么方法可以在我的手机中 使用 Google 的语音助手来使用该应用程序?
如果不是为什么?
是的,可以将 Google 的语音助手应用程序与 Amazon Lex 一起用作 NLP 引擎。
postContent
或函数来postText
调用 Lex 并获取意图名称Nodejs 中的伪代码:
const {actionssdk} = require('actions-on-google');
const express = require('express');
const bodyParser = require('body-parser');
const rp = require('request-promise');
const app = actionssdk({debug: true});
app.intent('actions.intent.MAIN', (conv) => {
conv.ask('Hi!');
});
app.intent('actions.intent.TEXT', (conv, input) => {
// here you will write code to call amazon lex and pass input text
intent_name = lex_library(input)
return rp({
intent_name
})
.then((res) => {
// create an intent-action mapper
const actionMap = {
name: nameIntent,
help: helpIntent,
};
// check the intent name from Lex
if (res.intent_name && res.intent_name !== 'None') {
// Map intents to functions for different responses
actionMap[res['intent_name']](conv);
} else {
conv.ask('Sorry, I don\'t understand what you mean.');
}
})
.catch((e) => {
console.log('Error =>', e);
});
});
function nameIntent(conv) {
conv.ask('My name is noobie. Hope you are fine!');
}
function helpIntent(conv) {
conv.ask('Help response');
}
express().use(bodyParser.json(), app).listen(8888)
请注意,您需要了解 action 的 sdk 和 lex 运行时库,才能根据需要扩展上述代码。
这是实现目标的高级方法。
希望能帮助到你。