javascript开发简易自动问答机器人实例(无插件)
2021-09-19
自动问答机器人常用于客服服务等,减少人力成本,在日常工作中很常见。
javascript开发问答功能的原理很简单,主要是匹配词库。当然,本文讨论的机器人不是人工智能,不涉及语言学习领域。

如图,手动输入内容,系统短暂分析后,回复对应结果。其实就是setTimeout延时,一般设置固定时间即可。此处的时间具体情况具体分析,影响因素有很多,如词库量级等,
界面非常简单,由一个输入框input和显示面板div组成。
javascript编写逻辑,分两个部分:词库和匹配机制。
// 问 - 输入部分
const utterances = [
['你好', '早上好', '嗨', 'hello'],
['hello', 'morning', ...]
...
];
// 答 - 回复部分
const answers = [
['嗨', '早', '你好呀'],
...
];
// 缺省 - 无匹配结果
const alternatives = [
"继续...",
"再试一次",
...
];
匹配机制用两个for循环搞定,从utterances中找出行列,到answers中对应行随机出一列作为答案,如果匹配失败,则去备用的alternatives中随机挑选一个。
这部分可完全自定义,以达到更加人性化效果。
function compare(c, f, g) {
for (var a, e = !1, b = 0; b < c.length; b++) {
for (var d = 0; d < c[b].length; d++) if (c[b][d] === g) {
a = f[b];
a = a[Math.floor(Math.random() * a.length)];
e = !0;
break
}
if (e) break
}
return a
};
使用声明
- 本站所有未指定商用的资源,仅限学习交流请勿用于商业用途。
- 如果资源损害你的权益请联系官方邮箱给予处理。