本篇要介紹NLP(自然語言處理),以及LUIS如何跟Line bot整合應用,關於Linebot的開發,最終免不了碰到"要如何識別用戶所輸入的語句?"
雖然Linebot也提供了Template Message之類的選單機制,可以幫助我們降低free style對談發生的機會,但終究,還是得讓chat bot面對用戶以文字方式傳來的訊息。
LUIS全名是Language Understanding Intelligent Services,顧名思義,是一個提供語句理解能力的雲端服務。請留意,LUIS並非去分析語句含意,而是去拆解並嘗試依照句型來判斷一個句子,分類歸納出用戶的意圖並抓取出句子當中關鍵的entities。
由於bot的文字輸入介面很自由,用戶往往可以很隨興的打字輸入,你根本無法限制用戶輸入什麼,以什麼句型方式輸入。而且人很有趣,只要沒有限制,就會竭盡所能地嘗試。此外,也非常有可能因為type之類的輸入錯誤,導致一個句子在輸入上就有錯別字或是不完整,使得chat bot無法只是抓取特定關鍵字來識別用戶的企圖與目的。
因此,就對談機器人來說,首要目標之一就是理解用戶輸入的內容,而LUIS是實現這個功能的重點服務。