歡迎來到微軟機器人編輯器使用教程,從這裡開始,建立一個簡單的機器人。
在該系列文章中,每一篇都將通過新增更多的功能來構建機器人。當完成教程中的全部內容後,你將成功的建立一個天氣機器人(Weather Bot)。在本系列中將學會以下內容:
3)在機器人中增加幫助提示和取消功能
4)使用語言生成功能(LG: Language Generation)
5)把機器人的回覆轉換為卡片
6)新增LUIS功能,理解自然語言
準備條件
- 完成系列(1,2)中的簡單對話機器人建立(https://www.cnblogs.com/lulight/p/14891002.html)與 傳送HTTP請求(https://www.cnblogs.com/lulight/p/14897260.html)
為機器人對話流加入“幫助”和“取消”按鈕功能,哪怕是一個簡單的機器人,提供幫助功能也是最佳體驗。同時,也需要在人機對話流程中隨時“取消”功能。
安裝Help and Cancel包
第一步:啟動Bot Composer,從左邊的導航條中進入“Package Manager”目錄
第二步:與VS 2019的Package介面一樣,在搜尋框中輸入“Help”,選中“Microsoft.Bot.Components.HelpAndCancel”包
第三步:點選右邊的安裝按鈕,可根據需要選擇版本
第四步:安裝過程中,會彈出“安裝須知”。在底部點選OK,進入安裝等待。安裝完成後,回到機器人編輯主區域,編輯器會自動為機器人新增兩個對話元件“ Help ” 和“ Cancel ”。
設定“Cancel”和“Help”對話元件
第一步:在weather_bot的編輯區,點選“...”按鈕並選擇“+ Add new trigger”, 在新建視窗中輸入如下值:
- What is the name of this trigger (RegEx): cancel
- Please input regEx pattern: cancel|stop|quit|取消 , 正規表示式將匹配所設定的這四個關鍵字,並觸發cancel操作。
第二步:點選“Submit”後,在新建的cancel的觸發器中,點選“+”按鈕新增一個開始對話( Dialog Management --> Begin a new dialog)
第三步:在“Dialog name”的下拉選單中選擇“CancelDialog”。即完成了Cancel功能的設定。
第四步:重複以上1,2,3步驟,為Help對話元件進行設定。在weather_bot的編輯區,點選“...”按鈕並選擇“+ Add new trigger”, 在新建視窗中輸入如下值:
- What is the name of this trigger (RegEx): help
- Please input regEx pattern: help|support|advice|幫助 , 正規表示式將匹配所設定的這四個關鍵字,並觸發help操作。
第五步:點選“Submit”後,在新建的help的觸發器中,點選“+”按鈕新增一個開始對話( Dialog Management --> Begin a new dialog)
第六步:在“Dialog name”的下拉選單中選擇“HelpDialog”。即完成了Help功能的設定。
在機器人對話中啟用打斷功能
getWeather對話元件知道如何獲取天氣預報,但是它不知道如何在對話中響應幫助請求。所以為了讓機器人能在進行正常對話的過程中對發出的“Help”請求進行處理,需要對getWeather啟用允許打斷功能(Interruption)。當幫助流程處理完後,它會自動回到天氣預報對話中,無需再使用“天氣”或“weather”關鍵字來進行喚醒。
第一步:再getWeather對話元件中,選擇“BeginDialog”事件
第二步:選中第一個“Prompt for text”任務框,在它的右邊屬性視窗中,選中“Other”選項卡。
第三步:在“Prompt Configurations”中找到“Allow interruptions”並把值設定為 true
注:這一步的目的是告訴 Bot 諮詢父對話方塊的識別器,允許 Bot 也可以在使用者的提示下響應幫助。
請檢視啟用“Help and Cancel”的演示動畫:
測試機器人
第一步:在編輯器的右上角點選 “Start Bot”按鈕,啟動機器人
第二步:啟動後,會彈出一個“Local bot runtime manager”的視窗,選擇“Open Web Chat”,開啟一個頁面聊天視窗
第三步:在對話方塊中輸入“weather” 或者“天氣”來觸發機器人的對話
第四步:輸入“help”,“support”,“advice” 或“幫助”,機器人將提供幫助響應
第五步:輸入“cancel”,“stop”,“quit” 或“取消”,機器人將傳送一個取消的響應,然後等待使用者的Yes/No確認
在下一篇中將演示:使用語言生成功能(LG: Language Generation)
(以上內容均是參考微軟官方的機器人文件進行的中文操作步驟,原文連線見參考資料)
參考資料
Tutorial: Add Help and Cancel to your bot using interruptions:https://docs.microsoft.com/en-us/composer/tutorial/tutorial-add-help?tabs=v2x
[完]