2016-08-05 16 views
0

我正在與wit.ai進行基於流的對話的實驗。我以https://wit.ai/l5t/FlowBased_Example爲例,並注意到一件奇怪的事情。如果你從上面的頁面啓動機器人並立即說「不」,機器人會調用answer-tv函數,並說「好的,你在線觀看體育賽事嗎?」。檢查出來,可以清楚地看到,answer-tv功能可以只深的談話稱爲機器人的故事,最短路徑爲:爲什麼wit.ai bot在談話流程中跳躍?

-> I want to take the survey! 
<- Do you watch sports on TV? 
-> No 
<- [answer-tv] 
<- Ok. And do you watch sports online? 

這怎麼可能的機器人已經上漲了第一步,在會話中發現了一個任意點,用戶會回答「否」,並從那裏繼續?如何避免這種行爲?

回答

0

將所有這些故事圖爲連接圖。入口點是任何一個故事。頂點是用戶消息,機器人動作和機器人回覆。邊緣是故事中的書籤鏈接和分支。要了解流程,請自行在圖表上繪製圖表並可視化上述對話。您可以通過適當地構建圖形來調節機器人行爲。

+0

我不確定這是否合理。如果我們有多個分支怎麼辦?它會去哪個分支,爲什麼? – blenddd

+0

它去滿足條件的分支。在機器人分支的情況下,它檢查上下文中更新的參數。在用戶消息分支的情況下,它檢查與故事中定義的消息匹配的用戶消息。 –