本文是用機器學習打造聊天機器人系列的第五篇,在特性介紹中提到過,我們采用非侵入式設計,通過幾個簡單的 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,

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/57326.html
標籤:其他
