設定意圖內容 - Amazon Lex V1

支援終止通知:2025 年 9 月 15 日, AWS 將停止對 Amazon Lex V1 的支援。2025 年 9 月 15 日之後,您將無法再存取 Amazon Lex V1 主控台或 Amazon Lex V1 資源。如果您使用的是 Amazon Lex V2,請改參閱 Amazon Lex V2 指南

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

設定意圖內容

您可以根據內容讓 Amazon Lex 觸發意圖。內容是狀態變數,可在您定義機器人時與意圖建立關聯。

當您使用主控台或使用 PutIntent操作建立意圖時,您可以設定意圖的內容。您只能在英文 (US) (en-US) 地區設定中使用內容,而且只有在您使用 PutBot操作建立機器人true時,才將 enableModelImprovements 參數設定為 。

內容、輸出內容和輸入內容有兩種關係類型。滿足相關聯的意圖時,輸出內容會變成作用中。輸出內容會在來自 PostTextPostContent操作的回應中傳回至您的應用程式,並針對目前工作階段進行設定。啟用內容後,它會在定義內容時設定的轉彎次數或時間限制內保持作用中狀態。

輸入內容會指定可辨識意圖的條件。只有當所有輸入內容都處於作用中狀態時,才能在對話期間辨識意圖。沒有輸入內容的意圖一律符合辨識資格。

Amazon Lex 會透過使用輸出內容滿足意圖,自動管理已啟用內容的生命週期。您也可以在呼叫 PostContentPostText操作時設定作用中內容。

您也可以針對意圖使用 Lambda 函數來設定對話的內容。來自 Amazon Lex 的輸出內容會傳送至 Lambda 函數輸入事件。Lambda 函數可以在回應中傳送內容。如需詳細資訊,請參閱Lambda 函數輸入事件和回應格式

例如,假設您有意預訂已設定為傳回名為 "book_car_fulfilled" 的輸出內容的租車。滿足意圖時,Amazon Lex 會設定輸出內容變數 "book_car_fulfilled"。由於 "book_car_fulfilled" 是作用中內容,只要使用者表達用語被識別為嘗試引出該意圖,「book_car_fulfilled」內容集為輸入內容的意圖現在就會視為辨識。您可以將此用於預訂租車後才有意義的意圖,例如透過電子郵件傳送收據或修改保留。

輸出內容

Amazon Lex 會在滿足意圖時啟用意圖的輸出內容。您可以使用輸出內容來控制符合追蹤目前意圖資格的意圖。

每個內容都有在工作階段中維護的參數清單。這些參數是已滿足意圖的槽值。您可以使用這些參數來預先填入其他意圖的槽值。如需詳細資訊,請參閱 使用預設槽值

當您使用主控台或 PutIntent操作建立意圖時,您可以設定輸出內容。您可以使用多個輸出內容來設定意圖。滿足意圖時,所有輸出內容都會啟用,並在 PostTextPostContent回應中傳回。

以下顯示使用主控台將輸出內容指派給意圖。

輸出標籤標記 order_complete,存留時間為 5 圈或 90 秒。

當您定義輸出內容時,您也會定義其存留時間、內容包含在 Amazon Lex 回應中的時間長度或周轉次數。彎是從您的應用程式到 Amazon Lex 的一個請求。一旦輪換次數或時間過期,內容就不再處於作用中狀態。

您的應用程式可以視需要使用輸出內容。例如,您的應用程式可以使用輸出內容來:

  • 根據內容變更應用程式的行為。例如,旅遊應用程式的內容 "book_car_fulfilled" 可能具有與 "rental_function_fulfilled" 不同的動作。

  • 將輸出內容傳回 Amazon Lex,做為下一個表達式的輸入內容。如果 Amazon Lex 將表達用語視為嘗試引出意圖,則會使用內容來限制可以傳回給具有指定內容的意圖。

輸入內容

您可以設定輸入內容來限制對話中辨識意圖的點。沒有輸入內容的意圖一律符合辨識資格。

您可以使用 主控台或 PutIntent操作來設定意圖回應的輸入內容。意圖可以有多個輸入內容。以下顯示使用主控台將輸入內容指派給意圖。

標記為 order_complete 的輸入標籤。

對於具有多個輸入內容的意圖,所有內容都必須處於作用中狀態,才能觸發意圖。您可以在呼叫 PostTextPostContentPutSession操作時設定輸入內容。

您可以在 中設定槽,以從目前作用中內容取得預設值。當 Amazon Lex 辨識新意圖但未收到槽值時,會使用預設值。當您定義槽#context-name.parameter-name時,請以 形式指定內容名稱和槽名稱。如需詳細資訊,請參閱使用預設槽值