市場上的機器人平臺
國外 wit.ai
支持Story模式來設置對話,所謂一個Story就是一個一句話無法完成的,可能多條對話組成的一個“故事”。例如,買電影票:
Q:我要買電影票?
A:好的,你要買哪部電影?
Q:南方公園
A:好的,您希望在哪個電影院?
這樣多條對話可能才能完成一個Story,而不是簡單的QA pair。
wit.ai有豐富的實體抽取類型,應該也可以根據抽取類型進行語義匹配。
國外 Pandorabots (chatbots.io)
支持多種語言,號稱AIaaS,支持包括給Java,Node.js,Python,Ruby,PHP,Go等語言。
支持AIML的解析,上傳,提供平臺服務,根據機器人的訪問次數和數量計費。
使用AIML 2.0作爲語言,這東西竟然是2014年才發佈的一份規範!
這個時間竟然有人還在用XML!
然後這羣人竟然希望用戶去自己寫XML!
簡直太可怕了!!!
(☉д⊙)!
(☉д⊙)!
(☉д⊙)!
如果要對AIML有一個基本瞭解可以看這裏
Chatfuel.com
簡單的語義匹配機器人,主要面向FaceBook,功能相對較弱。
Smooch
機器人平臺,可以整合其他機器人服務商資源,例如Motion AI,init.ai,Meya,converse.ai,Dialog Analytic Gupshup。
界面好看。
Motion.ai
機器人平臺,功能比較齊全,裏面是有module的概念,類似wit.ai的story。功能相對比較強大,有各種抽取實體的module。
api.ai
這裏麪包括定義實體,定義intent,測試等幾個步驟
定義實體就是可以抽取的實體,例如一個披薩,披薩的類型,大小,配料,這些都可以定義爲單獨可抽取的實體。
intent的意圖識別分爲模板和機器學習兩類,或者兩類綜合,可以自己設置threshold。不同的intents之間可以設置優先級。
機器人設置可以導入導出,甚至導入導出完整的一個機器人(它稱作agents)的所有內容。然後可以鏈接其他應用,包括Facebook,微軟Cortana等。
整體來說實體編輯,句子模板的部分有點類似wit.ai,號稱的機器學習部分不知道用什麼實現的,真的有train過程。
## yige.ai
恩,抄襲的api.ai,抄襲的好像好像,好像好像好像,好像好像和你在一起哦哦~~
細節裏面還是有點不一樣的~~
調試的時候會給出一些額外信息。
從結果上看,他們至少做了:
- 分詞(segmentation)
- 意圖識別(閒聊)(intent prediction)
- 情感分析(sentiment analysis)
當用戶進入一個場景之後,會一定程度上根據上下文來判斷用戶意圖,應該相當於降低了問題閾值。例如:
- Q 我想要吃飯
- A 飯配紅燒肉嗎
- Q 我不想買鞋
- A 好的,您是什麼腳型呢?(這是機器人放棄治療了是嗎?)
- Q 我想要吃飯
- A 您可以通過這個圖來確認你的腳型哦。[圖片鏈接]
不過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": "場景識別成功"
}
}