本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
AMAZON.FallbackIntent
當使用者對意圖的輸入不是機器人預期的內容時,您可以設定 Amazon Lex V2 叫用後援意圖。例如,如果使用者輸入的「我想訂購糖果」與OrderFlowers
機器人中的意圖不符,Amazon Lex V2 會叫用後援意圖來處理回應。
當您使用主控台建立機器人或使用CreateBotLocale操作將地區設定新增至機器人時,內建的AMAZON.FallbackIntent
意圖類型會自動新增至您的機器人。
呼叫備用意圖需要兩個步驟。在第一個步驟中,備用意圖係根據使用者的輸入進行比對。當備用意圖相符時,機器人的行為方式則取決於為提示設定的重試次數。
在下列情況下,Amazon Lex V2 符合後援意圖:
-
使用者對意圖的輸入不符合機器人預期的輸入
-
音訊輸入為雜訊,或文字輸入無法辨識為文字。
-
使用者的輸入不明確,而且 Amazon Lex V2 無法判斷要叫用的意圖。
以下情況會叫用備用意圖:
-
在設定的嘗試次數之後,意圖不會將使用者輸入識別為槽值。
-
在設定的嘗試次數之後,意圖不會將使用者輸入視為確認提示的回應。
您無法將以下內容新增至備用意圖:
-
表達用語
-
槽
-
一條確認提示
使用具有後援意圖的 Lambda 函數
呼叫後援意圖時,回應取決於fulfillmentCodeHook
參數對CreateIntent作業的設定。機器人會執行下列其中一項操作:
-
將意圖資訊傳回給用戶端應用程式。
-
呼叫別名的驗證和履行 Lambda 函數。它會使用為工作階段設定的工作階段變數來呼叫函數。
如需有關在呼叫後援意圖時設定回應的詳細資訊,請fulfillmentCodeHook
參閱CreateIntent作業參數。
如果您將 Lambda 函數與後援意圖搭配使用,則可以使用此函數呼叫其他意圖或與使用者執行某種形式的通訊,例如收集回呼號碼或與客戶服務代表開啟工作階段。
您可以在相同工作階段中多次叫用備用意圖。例如,假設您的 Lambda 函數使用對ElicitIntent
話方塊動作來提示使用者不同的意圖。如果 Amazon Lex V2 在設定的嘗試次數後無法推斷使用者的意圖,則會再次叫用後援意圖。當使用者在設定的嘗試次數之後仍未回應有效的槽值,它也會叫用備用意圖。
您可以設定 Lambda 函數,以追蹤使用工作階段變數呼叫後援意圖的次數。如果呼叫 Lambda 函數的次數超過您在 Lambda 函數中設定的閾值的次數,則 Lambda 函數可能會採取不同的動作。如需工作階段變數的詳細資訊,請參閱 設定 Lex V2 機器人的工作階段屬性。