說明:也是沒有段子的一天.....在沒有段子的日子里....我們來研究下阿里雲的客服機器人....
一、功能調查
官網地址:https://help.aliyun.com/document_detail/197584.html
SDK、API地址:https://help.aliyun.com/document_detail/60757.html
功能清單訪問:https://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})
函數節點變量傳參,參數說明可參考官網文檔。
友情鏈接:https://help.aliyun.com/document_detail/84657.html
接口調用后當然要返回數據了,所以接下來需要定義一個回復節點,將調用結果進行輸出。
好了,到此為止示例流程定義就結束了。接下來我們測試一下機器人。
可以看到,已經請求了外部函數,成功返回了數據。
至此,完整的流程配置、測試。就結束了.....
散會散會........嗷嗷,那啥....有小心心點一下哦!