阿里雲智慧客服機器人,自定義函數調用配置
說明:也是沒有段子的一天…..在沒有段子的日子裡….我們來研究下阿里雲的客服機器人….
一、功能調查
官網地址://help.aliyun.com/document_detail/197584.html
SDK、API地址://help.aliyun.com/document_detail/60757.html
功能清單訪問://help.aliyun.com/document_detail/197584.html
智慧機器人有收費版,有體驗版。像wshanshi這種嘗鮮的…..就來個體驗版吧…..
友情提醒:體驗版只可創建一個機器人,提供免費調用次數1000次,超出調用次數,費用自費。
二、創建管理Demo示例
2.1、可創建管理機器人
2.2、可自定義問答詞庫
2.3、可定義機器人綁定FAQ類目庫
綁定了FAQ類目庫後,所有對話答覆從綁定的問答庫中匹配數據。
2.4、可定義對話工廠
2.5、可開啟閑聊模式
三、會話工廠配置自定義數據收集、函數調用
重點來了,來了~
下面示例中,樓主將針對於如何收集用戶輸入的數據,作為參數進行自定義函數介面調用。
3.1、點擊去會話工廠
3.2、新建對話流
3.3、新增意圖
3.4、編輯意圖
輸入流程觸發的話語。當用戶向機器人諮詢包含話語關鍵字時,觸發該流程。
3.5、自定義流程配置
點擊意圖,配置流程。選擇用戶節點,輸入節點名稱,觸發方式選擇意圖觸發。(當用戶輸入數據關鍵字匹配到相應話術時,觸發流程往下走)。
既然用戶有問,那肯定有答。遵循:「顧客是上帝,顧客說啥都對的理念.」….你懂得…..
接下來我們需要定義一個回復節點。(下圖示例中,樓主放的是一個引導語。引導用戶輸入一些關鍵字,方便收集起來,作為我們後面流程中調用自定義介面的參數。)
我們引導客戶輸入,所以還需要定義一個用戶輸入節點。
按照上圖流程,我們引導客戶輸入編號。但是客戶不一定輸入編號….
「讓我往東,我偏偏往西….哎……玩的就是西海岸……..」 那這時候怎麼辦呢?這….
試想下,我們之所以引導用戶去輸入關鍵字(編號),目的是為了收集這個關鍵詞,作為參數請求介面的。所以,一方面要考慮如何收集用戶輸入的數據,另一方面要考慮如何收集我們想要的數據。
辦法嘛,還是有的。你叫我大哥,我告訴你。哈哈哈哈……
方案:用戶輸入數據收集【定義正則表達式,意圖+正則匹配+填槽】。
具體步驟如下:
- 首先,新增一個專門收集用戶輸入資訊的意圖。
- 編輯意圖,填寫相關的資訊。
若上面使用識別能力未定義,是保存不了的。接下來我們說明下這個識別能力是什麼。
所謂識別能力,無非是對用戶輸入的資訊進行辨別。辨別方式有兩種,一種是標準實體匹配,另一種是正則實體匹配。
兩種方法,那區別是什麼呢?
1、新建標準實體
需要把數據維護到實體成員中,使用時默認從某一實體配置的成員變數中進行匹配。說白了就是從固定的圈子中匹配,要想匹配到數據,就得維護進去。
弊端:不是很靈活,需要維護。沒有導入功能,數據量大的話,不好維護。「嘿,兄弟!圈子小了哦……」
2、新建正則實體
可定義正則表達式對數據進行收集,相對來說較為靈活。
由於示例中我自定義的函數所需參數是Integer類型的編號,所以我的正則表達式自然寫的就是收集數字的了,如下圖所示。
再回到上方流程,若用戶輸入了編號,我們需要收集起來。那如何收集用戶輸入的參數呢?
首先,在用戶輸入節點選擇條件觸發。條件就是意圖=自定義收集參數的意圖。
舉個栗子,在回復「輸入編號試試看?」之後,假設用戶輸入77(當然也可能輸入非數值)。
由於我們定義了收集數值的正則表達式,若用戶在此節點輸入的是數值,則符合正則匹配規則,就能收集該數據。
通過填槽節點可以收集數據,如下定義填槽節點。
再回頭看這裡,實質上是拿用戶輸入的資訊與綁定的正則實體進行匹配,若符合規則,則通過填槽收集參數。
當然,如果一開始你選擇的是新建標準實體那種形式,這裡匹配的就是實體內的成員變數嘍!
接著往下走,參數收集到了,那調用介面白。搞!定義一個函數節點,配置我們自定義的介面,將收集到的數據作為參數。(收集到的參數:${收集用戶輸入.用戶輸入.origin})
函數節點變數傳參,參數說明可參考官網文檔。
友情鏈接://help.aliyun.com/document_detail/84657.html
介面調用後當然要返回數據了,所以接下來需要定義一個回復節點,將調用結果進行輸出。
好了,到此為止示例流程定義就結束了。接下來我們測試一下機器人。
可以看到,已經請求了外部函數,成功返回了數據。
至此,完整的流程配置、測試。就結束了…..
散會散會……..嗷嗷,那啥….有小心心點一下哦!