Web
支持Story模式来设置对话,所谓一个Story就是一个一句话无法完成的,可能多条对话组成的一个“故事”。例如,买电影票:
Q:我要买电影票?
A:好的,你要买哪部电影?
Q:南方公园
A:好的,您希望在哪个电影院?
这样多条对话可能才能完成一个Story,而不是简单的QA pair。
wit.ai有丰富的实体抽取类型,应该也可以根据抽取类型进行语义匹配。
web
支持多种语言,号称AIaaS,支持包括给Java,Node.js,Python,Ruby,PHP,Go等语言。
支持AIML的解析,上传,提供平台服务,根据机器人的访问次数和数量计费。
使用AIML 2.0作为语言,这东西竟然是2014年才发布的一份规范!
这个时间竟然有人还在用XML!
然后这群人竟然希望用户去自己写XML!
简直太可怕了!!!
(☉д⊙)!
(☉д⊙)!
(☉д⊙)!
如果要对AIML有一个基本了解可以看这里
简单的语义匹配机器人,主要面向FaceBook,功能相对较弱。
Web
机器人平台,可以整合其他机器人服务商资源,例如Motion AI,init.ai,Meya,converse.ai,Dialog Analytic Gupshup。
界面好看。
Web
机器人平台,功能比较齐全,里面是有module的概念,类似wit.ai的story。功能相对比较强大,有各种抽取实体的module。
Web
这里面包括定义实体,定义intent,测试等几个步骤
定义实体就是可以抽取的实体,例如一个披萨,披萨的类型,大小,配料,这些都可以定义为单独可抽取的实体。
intent的意图识别分为模板和机器学习两类,或者两类综合,可以自己设置threshold。不同的intents之间可以设置优先级。
机器人设置可以导入导出,甚至导入导出完整的一个机器人(它称作agents)的所有内容。然后可以链接其他应用,包括Facebook,微软Cortana等。
整体来说实体编辑,句子模板的部分有点类似wit.ai,号称的机器学习部分不知道用什么实现的,真的有train过程。
## yige.ai
世纪佳缘做的哈哈哈
恩,抄袭的api.ai,抄袭的好像好像,好像好像好像,好像好像和你在一起哦哦~~
细节里面还是有点不一样的~~
调试的时候会给出一些额外信息。
从结果上看,他们至少做了:
当用户进入一个场景之后,会一定程度上根据上下文来判断用户意图,应该相当于降低了问题阈值。例如:
不过api.ai还有一个机器学习识别模式,似乎还没抄袭出来
{
"id": "43283078-778E-BA5F-EF6D-BD5F7D8CDDE1",
"session_id": "64182",
"time": "2016-11-20 23:17:31",
"query": "购买链接",
"agent_id": "BA22FB5E-EF6D-B7DE-BA64-DF242134E21E",
"emotion": {
"positive": 0.0064815573227318,
"neutral": 0.98559873739357,
"negative": 0.007919705283701
},
"segmented_query": [
"购买",
"链接"
],
"state": [ ],
"answer": "想,但是没钱怎么办",
"status": {
"code": 201,
"error_type": "闲聊回复成功"
}
}
{
"id": "A80798F0-69AE-50B4-C5B0-9291DB8199DF",
"session_id": "28721",
"time": "2016-11-20 23:23:07",
"query": "买鞋嘤嘤嘤嘤",
"agent_id": "BA22FB5E-EF6D-B7DE-BA64-DF242134E21E",
"emotion": {
"positive": 0.0064815573227318,
"neutral": 0.98559873739357,
"negative": 0.007919705283701
},
"segmented_query": [
"买鞋",
"嘤",
"嘤",
"嘤",
"嘤"
],
"intent_id": "E93DE654-214D-54AD-9F57-A014F218F4F7",
"intent_name": "0-跑鞋推荐",
"confidence": 0.74032078852106,
"action": {
"name": "",
"complete": true,
"parameters": [
{
"type": "yige.address",
"name": "address",
"value": "北京",
"original": "北京"
}
]
},
"state": [
{
"parameters": [
{
"type": "yige.address",
"name": "address",
"value": "北京",
"original": "北京"
}
],
"name": "shoe_first",
"life_count": 5
}
],
"answer": "好的,您是什么脚型呢?",
"parameter_recognize": [
{
"text": "买鞋嘤嘤嘤嘤"
}
],
"status": {
"code": "200",
"error_type": "场景识别成功"
}
}