rasa對話系統(tǒng)踩坑記(五)

上篇談到增加了第三方閑聊的功能,避免了對話的時候遇到能識別意圖之外的問題而回答“不好意思,我聽不懂”這樣的默認(rèn)設(shè)置回答。最近在優(yōu)化方面又增加了button的功能。效果如下:


button.jpg

這樣做的原因是在優(yōu)化識別名字、年齡、職業(yè)的時候總會有些問題,后面干脆做成button讓用戶選擇和輸入,意圖和槽都很明確,這樣用戶體驗方面會更好(最主要的是老板喜歡這個交互,我咋感覺越做越像平安醫(yī)生的交互方式的,(⊙o⊙)…)。

界面方面是前端的工作,這里不做過多說明。這篇要說的是作為接口提供方的我們,如何在rasa-core這個框架上實現(xiàn)前端需要的數(shù)據(jù)。其實rasa-core提供了很多http-api的接口,現(xiàn)有的需求幾乎全部實現(xiàn),不需要你重復(fù)造輪子。

這里有button的詳細(xì)用法,而我們做的改進(jìn)是單選和多選的問題。在domain.yml文件中:

utter_ask_gender:
    - text: "請選擇患者性別:"
      buttons:
      - mulplity: "0"
        intent: 'enter_data'
      - title: "男"
        prop: 'slots'
        payload: '{"gender": "男"}'
      - title: "女"
        prop: 'slots'
        payload: '{"gender": "女"}'
      - title: "保密"
        prop: 'intent'
        payload: 'deny'

我們加了mulplity這個字段來告訴前端是否是單選,以及前端需要自己拼接/intent{payload}傳遞給接口,這樣意圖和槽就十分明確。

汗~~
說了一通,好像沒什么技術(shù)含量。

后面還增加了/conversations/{id}/tracker/eventspost的接口。業(yè)務(wù)中我們允許用戶返回去修改按鈕操作,但是只能允許最近的一個。所以在每次修改的時候需要調(diào)用一下新增的接口push一個undo操作,這樣的話對話才不會亂。

emmm,有點像流水賬,主要想講的就是多看看rasa-core的http-api文檔,里面提供了不少直接修改意圖和槽的方法,在項目優(yōu)化的時候有很大幫助。

這一系列的文章就寫到這兒吧,后續(xù)要在知識圖譜這塊花時間,等有點收獲再寫點圖譜的學(xué)習(xí)心得吧。原創(chuàng)文章,轉(zhuǎn)載請說明出處

Recommand

liveportrait
novelling

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容