本文是用機器學習打造聊天機器人系列的第五篇,在特性介紹中提到過,咱們採用非侵入式設計,經過幾個簡單的 API 就能夠接入聊天機器人到其餘項目中,下面來看看具體步驟。算法
接入步驟
- 提供符合要求的領域問答語料的 txt 文件,按照意圖類型劃 分紅不一樣的txt文件,替換本引擎自帶的txt語料文件,txt語料文件示例以下:
能夠看到,閒聊的語料文件以QA_talk-開頭,業務類的以QA_sf_開頭,內容的格式就如圖中所示,每一個問題佔一行,每一個回答佔一行。
- 咱們能夠參考接口說明中的接口在本身的項目中開發本身的聊天界面或者直接使用本系列文章提供的聊天Demo頁面。
接口說明
- 回覆接口
用於接收用戶的提問。
POST : replier/ask
參數:
{"q":"你什麼星座呀?"}
響應:
(1)若是隻有一個匹配項,就直接放在"a"中作爲答案:
{
"a": "雙魚🐟~",
"c": "QA_talk"
}
(2)若是有多個匹配項,就放在"q_a_guess"中:
{
"c": "QA_sf_withdrawal_cargo",
"q_a_guess":[
"問題1?","回答1",0.95,
"問題2?","回答2",0.85,
]
}
- 標註接口
本接口會讓 SkyAAE 學習接收到的問答,下次問相似問題的時
候,就會給出這次學到的答案。用戶標註通常分爲添加新答案、
修訂答案、標註最佳答案,這三類均可以調用該接口來實現。
POST : kbqa_sf/qac/record
參數:(q:問題;a:答案;c:類別)
[ {"q": "xxx", "a": "xxx", "c": "xxx"}, {"q": "xx", "a": "xx", "c": "xx"}]
響應:
"success"
- 獲取可選類別
GET : qac/all_classify
參數:無。
響應:
[ {"code": "QA_sf_xx1","text": "xx1"}, {"code": "QA_sf_xx2","text": "xx2"},…]
- 在線學習接口
GET : qac/learn/batch
參數:無。
響應:
學習成功,返回:"success";
沒有須要學習的內容,返回:"nothing"
本篇介紹了聊天機器人的接入方法,下一篇將對代碼中用到的相關算法的原理作一個簡單的介紹,有助於更好的理解聊天機器人的運行機制。機器學習
ok,本篇就這麼多內容啦~,感謝閱讀O(∩_∩)O。學習