簡體   English   中英

IBM Watson Assistant - 如何在 Slots 中使用 input.text

[英]IBM Watson Assistant - how to use input.text inside Slots

我正在將 IBM Watson Assistant 用於聊天機器人。 我有一個帶有兩個插槽的對話節點。 第一個插槽工作正常。 節點被觸發並且機器人請求第一個插槽,因為它不存在。

然后我想讓機器人要求第二個插槽。 給出的答案應該存儲在一個 $variable 中。 我試圖用input.text來實現這一點,因為我想存儲那里給出的每一種輸入。

但是,機器人並沒有要求第二個插槽,而是跳過它並將插槽一中給出的答案存儲在插槽二 $variable 中。 我猜這是因為機器人還會檢查input.text是否存在於插槽一中。 為了清楚起見,我沒有激活“提示一切”選項。

我該如何克服呢?

我相信我的測試環境的這些屏幕截圖會讓一切變得更加清晰:

這是因為input.text作為檢查匹配所有輸入,所以無論您輸入什么,您的第二個插槽將始終得到滿足。

插槽的工作方式是,以什么順序給出信息或給出多少信息都無關緊要。

例如:假設我有一個查找“產品”、“數量”和“交貨日期”的訂購系統

請求“我想要 2 月 3 日的勺子”

然后兩個槽“產品”和“交貨日期”得到滿足,output 響應將提示缺少“數量”槽。

在您的情況下,您需要確定您要收集哪些信息。 是否存在將唯一匹配輸入的實體或意圖。 如果是這樣,那么您可以使用插槽。 作為蠻力匹配,您可以使第二個插槽的條件更復雜。

例如,在查找訂單確認時,您可以添加條件,該條件僅在上述所有槽都完成時觸發,並且您正在尋找確認您是否正確收集了指令。

(#yes || #no) && slot_in_focus

如果這種方法不適合您的應用程序,那么您應該在插槽節點之后收集此信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM