簡體   English   中英

如何使用Dialogflow捕獲用戶文本

[英]How to capture user text with Dialogflow

我正在為谷歌環聊聊天創建一個新的機器人。 看起來使用Dialogflow可能是最好的工具。 (如果我錯了,請另行通知)。 目標是能夠創建一個Q&A機器人,能夠檢索用戶的完整響應作為答案。

我試過谷歌搜索一些不同的搜索詞,但沒有找到答案,我開始認為Dialogflow不適合我。

我想創建的機器人應該可以進行以下對話:(B:Bot,U:用戶)

U: I would like to work remotely today.
B: Ok, please let us know what you will be working on today
U: I will be completing task A, B and C
B: Great, your team has been notified that you will be completing task A, B and C.

要么

U: I will be in the office late today
B: Sure, what time do you think you will be in the office?
U: Before 2pm
B: Great, your team has been notified you will be in the office before 2pm

我一直試圖用Dialogflow做到這一點。 我能夠讓機器人通過提供所需的參數來詢問下一個輸入,然后提示更多信息,問題是對提示的響應要求我通過實體輸入固定的答案。 它無法捕獲完整的用戶響應作為答案。

目前尚不清楚您認為需要“完整回復”的回復。 通常,Dialogflow可以幫助您獲取所需信息的重要部分作為參數,並幫助過濾掉可能不同的用戶輸入的其他部分,但在語義上是相同的。

所以在你的第一個例子中,你可能想要選擇諸如的短語

  • 我將[完成任務A,B和C]
  • 我[正在研究D]
  • 可能[繼續E和F]

我用[括號]標記的部分實際上是你想要的部分,而答復的其他部分在語義上是相同的。 您可以使用@sys.any標記每個部分,這類似於正則表達式.* (但不完全相同)。

對於第二個示例,您可能需要多個與您的回復匹配的Intent。 請記住: 意圖與用戶說的相符,而不是如何處理該回復

一個意圖可以用以下時間收集特定答案:

  • 有時[后] [下午2點]
  • [周圍] [3]
  • [不在之前] [1:30]
  • 可能[不] [今天]

其中每個都有兩個參數 - 一個是時間,另一個是相對於那個時間的短語。

您還可以使用其他類似的短語

  • 這取決於
  • 我不知道

而這些根本不需要參數。 意圖本身應反映用戶想要說的內容。

在所有這些情況下,您將需要為您要求的特定問題設置后備意圖。 您可能只想記錄該答案,或者您可能希望使用后備意圖來提示他們您想要什么類型的消息。

您需要確定用戶可能對您的機器人說什么,並根據您需要在對話框流程代理中創建不同的意圖
當用戶說出某些內容時,對話框流將嘗試通過匹配意圖並從中提取參數來確定用戶的意圖,並且可以基於此配置響應。

例如,你可以讓一個意圖work_remotely與用戶的短語I would like to work remotely todayI would like to work remotely today and will be working on tasks A, B and C
分配參數@sys.any並突出顯示A, B and C 此外,您可以根據需要標記該參數並提供提示Ok, please let us know what you will be working on today用戶將回答他正在處理的任務。 最后,機器人將捕獲參數值並給出響應Great, your team has been notified that you will be completing task $parameter_value.

同樣,您需要設計多個流,制作意圖,用用戶短語訓練,提供參數和響應。

希望能幫助到你。

暫無
暫無

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

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