此篇文章主要帶大家體驗聊天機器人如何建立,並以一個完全不用Coding的問答機器人(QnA Maker)做Demo
雖然軟體機器人(Bots)很早就在發展,但近年來因著大數據、機器學習與人工智慧等技術逐漸成熟,各大廠都兢相投入資源在發展。微軟也不落人後推出一系列的開發工具及平台,包括有Bot Framework、Azure Bot Service等;但因為要Coding對於我實在太麻煩故都只是看看別人的文章而已,直到MS推出QnA Maker後因其幾乎不用Coding引起我的興趣,今天就來試看看吧!
QnA Maker的URL https://qnamaker.ai/ 其主要功能是將網站中的QnA也就是常見問題轉成問與答機器人,而且強調只要幾分鐘就可以完成,真的是如此嗎?讓我們繼續看下去
看到這個網站因為是全部英文第1個問題是....有支援中文嗎?答案是有的喔,在Documentation->FAQ中就有說明程式雖然以UTF-16開發,理論上可以認得多國語言,但測試時只測試英文及相關語系,故中文準不準就要自已試看看囉!
要建立自已的機器人前首先要登入,如何登入就不再詳述,登入後點選Create new service
要建什麼聊天機器人呢?找了一下發現臺北市政府網站常見問題有個YouBike微笑單車常見問題詢問http://www.gov.taipei/ct.asp?xitem=53046618&CtNode=72231&mp=100001於是就先以此來試試看吧!故服務名稱就叫YouBike。
常見問題不用自已一筆一筆輸入,有2種方式可以建立知識庫,第1種就是直接爬網頁資料,只要輸入URL後就可以
若爬網頁資料不順利的話,還有第2種方式就是自已上傳檔案
檔案內容只要符合一問一答格式即可
點選Create後系統就會花點時間開始建立知識庫
很幸運的爬完網頁有成功,其顯示10 QnA pairs要扣除第1個Hi以外有9個問與答,你可以點選右上方的+Add new QnA pair增加新問題
或是點某個問題的右上角增加新的問法
接下來點選左方的Test就可以開始聊天
聊天是不用輸入完整的問題,系統會自動判斷例如輸入"故障了",其回答與"若騎乘的車輛故障了,該如何處理?"相同就表示系統的回答正確。若不正確的話可以點選左邊的正確回答;關於"車輛故障"的問題有很多種,可以在右邊輸入其他問法,例如"車壞了"等
訓練中為了確認不同的問法機器人回答是否正確時,可以點選Save and retrain
此時發現系統對中文語意的認知是不錯的,當我輸入一個沒有問過的問法"車抛描"其回答與"車輛故障"相同,真是利害。
當訓練完成時點選Publish,檢查所做的訓練是否正確後就可以發佈了
發佈成功後接下來告訴你如何用程式呼叫,別急著寫程式下一篇將說明如何利用Azure Bot Service與其串接
如果有興趣可以看一下Documentation中的架構及一段8分鐘的影片