理想中的Chatbot應該是可以通過圖靈測試,而目前以深度學習來做chatbot框架的其實不多,我建議選擇Diaglogflow,因為這是Google的項目,嗯,本系列將展示chatbot串外部API後部屬至LINE上。
如何使用Dialogflow建立Chatbot
#1 介紹
#2 建立agent
#3 對話流程設計
#4 使用fulfilment串API
#5 使用fulfilment webhook串API
#6 部屬至 Line bot 上
本文大鋼
為什麼要建立一個聊天機器人?
先決條件
Dialogflow簡介
DialogFlow中的會話流程
設置Dialogflow帳戶
在Google Cloud上授權Dialogflow
為什麼要建立一個聊天機器人?
聊天機器人是一種程式,能夠模仿人類對話,便於人類使用所提供的功能,例如Siri,卡米狗等。
目前不外乎兩大主流的chatbot
基於規則的chatbot:例如很紅的卡米狗;開發框架則以 微軟的 botframework及台灣的新創團隊的 Bottender 較為知名。
使用機器學習技術的chatbot:例如Siri;開發框架則以dialogflow較為知名。
在全面缺工的時代裡,Chatbot的實踐,主要業務方向就是處理第一線客服,如何解決線上70% 以上的客服需求,是Chatbot應用的硬需求。
而現在正是學習及建構chatbot的最佳時機。
先決條件
dialogflow不需要先具備程式能力,操作網站介面便可以訓練出你想要的chatbot。
我們第四章將會串 桃園市政府 https://data.tycg.gov.tw/ 註3,如果你有一些使用javascript / Restful API的經驗,會有所幫助。沒有任何程式經驗,也不用擔心。
Dialogflow簡介
Dialogflow(前身為Api.ai,Speaktoit)該公司以開發人機交互技術而聞名。 [1] Speaktoit還創建了一個自然語言處理引擎,其中包含會話上下文,如對話歷史,位置和用戶首選項等。-Wiki
支持16種以上編程語言的14種語言。
適用於網絡應用,移動應用和可穿戴設備的SDK
支援 Line,messenger,Alexa,Google Home …
DialogFlow中的會話流程
User: 你,我,人類
Text/Voice:人類與facebook messenger / google home等,其於語言或文字的對話互動。
Dialogflow:Bot平台,了解用戶的語義,並且執行相關動作。
Intent:使用者的意圖。意圖由開發人員配置。
Agent:一套module包含dialogflow及自然語言理解使用者的語義後,執行整個動作 action.
Fulfillment:通過設置webhook,串API完整你設置的服務。
設置Dialogflow帳戶
讓我們進入並開始建立我們將創建機器人的環境!
Goto : https://dialogflow.com/
使用Gmail帳戶創建帳戶,並“同意”條款和條件。
如果你想深入研究,請仔細閱讀[here]https://dialogflow.com/docs/getting-started).
在Google Cloud上授權Dialogflow
第一步新增一個agent
這將會新增一個 GCP project , 如果有跳出詢問的對話框,請選同意;如果你還沒有 GCP 帳號,請先新增一個。
本段總結:
使用Google的DialogFlow開發chatbot的好處:
Dialogflow抽像出自然語言處理,機器學習等,然後提供一個簡單的界面,讓我們專注於對話流和chatbot建置。
在下一章中,我們將了解對話流的建構並開始建構我們的chatbot。
註1:圖靈測試
圖靈測試一個標準的模式:C使用問題來判斷A或B是人類還是機械
圖靈測試(英語:Turing test,又譯圖靈試驗)是圖靈於1950年提出的一個關於判斷機器是否能夠思考的著名試驗