# 第五週 聊天機器人 ## 1. 建立 "Watson Assistent" 服務 step 1: Login IBM Cloud https://cloud.ibm.com/login step 2: 點選 "型錄" , 然後在左邊的選單中, 點選 "服務" 後,再勾選 "AI/機器學習", 就可以看到 watson cognitive 相關的服務. step 3: 點選 "Watson Assistant" 服務. "選取地區" 用預設值 "達拉斯", 將服務名稱取名為 "Watson Assistant-ntust" 後,點選右邊的 "建立" 按鈕. step 4: 開啟 "Watson Assistant" 編輯工具建立 "對話技能" (dialog skill) ## 2. 建立 dialog skill step 1: 在開啟 "Watson Assistant" 編輯工具後,從左邊的 menu,點選"Skills". step 2: 點選"Create Skills"建立一個新的技能 step 3: 點選"Dialog Skill", 然後點選"Next" step 4: 在建立"Dialog Skill"的填表時,記得把"Language"選成 Chinese (Traditional),如此,才能辨識繁體中文. ### 2.1 建立 intent step 1: 點選"Create intent" step 2: 輸入intent name: 營業時間, 點選按鈕create intent step 3: 輸入User example #營業時間 ``` "幾點開門?" "幾點關門?" "幾點可以來?" "最晚幾點要入場?" "幾點打烊?" "請問你們餐廳幾點打烊?" ``` #餐廳訂位 ``` "我想訂下星期三晚上七點" "我想訂星期日中午十二點半" "星期六下午三點" "我想訂位" "下星期三下午三點有沒有空?" "3位" ``` #店家位置 ``` "請問地址是在哪裡?" "請告訴我您的地址?" "你們的店靠哪裡?" ``` ### 2.2 建立 entity step 1: 點選左列選單"entities"的"My entity" step 2: 點選"Create entity" step 3: 輸入entity name,然後點選"Create entity" step 4: 點選 "add value" step 5: 點選左列選單"entities"的"system entities" @地點 ``` 北車店 捷運台北車站 北車 台北車站 南港店 捷運南港站 南港 板橋店 捷運板橋站 板橋 ``` ### 2.3 建立 dialog step 1: 點選左列選單"dialog" 在建立對話(dialog)的時候, 每一個問句, 用一個節點(node) 來代表.也可將相關的問句, 用一個資料夾(folder)來整理. 通常在建立 node 時, 有下列幾種技巧: 1. 直接回應**節點** (Add node) 在每一個新增的節點, assistant 都會重新去辨識 #intent, @entity, $context variable 判斷, 再輸入回應文字的內容. 2. 客製化回應 - Multiple conditioned responses 啟用此功能,您的機器人可以根據其他條件對同一輸入提供不同的回應。 範例: ![](https://i.imgur.com/BRYs5gU.jpg) 3. 客製化回應 - Slots 啟用此功能可收集 "對話" 在單個節點內回應用戶所需的信息。 - [V] Prompt for everything "check" 啟動上面的功能, 可在單個提示中詢問多條信息,因此您的用戶可以一次提供所有信息,並將用戶的回答儲存在變數 $ 當中。 範例: ![](https://i.imgur.com/qGTnyZi.jpg) ![](https://i.imgur.com/VcUSfij.jpg) 這是最後 dialog 的完成圖 ![](https://i.imgur.com/dnFz0Hx.jpg) ## 3. 建立 assistant 參考資料 1. Watson Assistant 入門指導教教學 https://cloud.ibm.com/docs/assistant?topic=assistant-getting-started 2. 建立 assistant https://cloud.ibm.com/docs/assistant?topic=assistant-assistant-add 2. 將 skill 新增至 assistant https://cloud.ibm.com/docs/assistant?topic=assistant-skill-add 3. 建立"動作"結點: https://medium.com/ibm-watson/why-is-it-still-so-hard-to-build-a-useful-chatbot-daa46da6a00e 4. 建置複雜對話 https://cloud.ibm.com/docs/assistant?topic=assistant-tutorial