選取您的 Cookie 偏好設定

我們使用提供自身網站和服務所需的基本 Cookie 和類似工具。我們使用效能 Cookie 收集匿名統計資料,以便了解客戶如何使用我們的網站並進行改進。基本 Cookie 無法停用,但可以按一下「自訂」或「拒絕」以拒絕效能 Cookie。

如果您同意,AWS 與經核准的第三方也會使用 Cookie 提供實用的網站功能、記住您的偏好設定,並顯示相關內容,包括相關廣告。若要接受或拒絕所有非必要 Cookie,請按一下「接受」或「拒絕」。若要進行更詳細的選擇,請按一下「自訂」。

PutBot

焦點模式
PutBot - 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 指南

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

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

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

建立 Amazon Lex 對話式機器人或取代現有的機器人。當您建立或更新機器人時,只需要指定名稱、地區設定,以及機器人是否導向 13 歲以下的子系。您可以使用此項目來稍後新增意圖,或從現有機器人中移除意圖。當您建立具有最少資訊的機器人時,會建立或更新機器人,但 Amazon Lex 會傳回回應 FAILED。您可以在新增一或多個意圖之後建置機器人。如需 Amazon Lex 機器人的詳細資訊,請參閱 Amazon Lex:運作方式

如果您指定現有機器人的名稱,請求中的欄位會取代機器人$LATEST版本中的現有值。Amazon Lex 會移除您在請求中未為 提供值的任何欄位,但 idleTTLInSecondsprivacySettings 欄位除外,這些欄位設定為其預設值。如果您未指定必要欄位的值,Amazon Lex 會擲回例外狀況。

這項操作需要 lex:PutBot 動作的許可。如需詳細資訊,請參閱Amazon Lex 的身分和存取管理

請求語法

PUT /bots/name/versions/$LATEST HTTP/1.1 Content-type: application/json { "abortStatement": { "messages": [ { "content": "string", "contentType": "string", "groupNumber": number } ], "responseCard": "string" }, "checksum": "string", "childDirected": boolean, "clarificationPrompt": { "maxAttempts": number, "messages": [ { "content": "string", "contentType": "string", "groupNumber": number } ], "responseCard": "string" }, "createVersion": boolean, "description": "string", "detectSentiment": boolean, "enableModelImprovements": boolean, "idleSessionTTLInSeconds": number, "intents": [ { "intentName": "string", "intentVersion": "string" } ], "locale": "string", "nluIntentConfidenceThreshold": number, "processBehavior": "string", "tags": [ { "key": "string", "value": "string" } ], "voiceId": "string" }

URI 請求參數

請求會使用下列 URI 參數。

name

機器人的名稱。名稱區分大小寫。

長度限制:長度下限為 2。長度上限為 50。

模式:^([A-Za-z]_?)+$

必要:是

請求主體

請求接受採用 JSON 格式的下列資料。

abortStatement

當 Amazon Lex 無法了解使用者在內容中的輸入時,它會嘗試引出資訊幾次。之後,Amazon Lex 會將 中定義的訊息傳送給abortStatement使用者,然後取消對話。若要設定重試次數,請使用 插槽類型的 valueElicitationPrompt 欄位。

例如,在披薩訂購機器人中,Amazon Lex 可能會詢問使用者「您想要哪種類型的地殼?」 如果使用者的回應不是預期的回應之一 (例如,「薄殼、「深盤」等),Amazon Lex 會嘗試再發出幾次正確的回應。

例如,在披薩訂購應用程式中, OrderPizza 可能是其中一個意圖。此意圖可能需要 CrustType插槽。您可以在建立CrustType槽時指定 valueElicitationPrompt 欄位。

如果您已定義後援意圖,則不會將取消陳述式傳送給使用者,而是改用後援意圖。如需詳細資訊,請參閱 AMAZON.FallbackIntent

類型:Statement 物件

必要:否

checksum

識別$LATEST版本的特定修訂。

當您建立新的機器人時,請將checksum欄位保留空白。如果您指定檢查總和,您會收到BadRequestException例外狀況。

當您想要更新機器人時,請將 checksum 欄位設定為最新版本的檢查總和$LATEST。如果您未指定 checksum 欄位,或檢查總和與$LATEST版本不相符,您會收到PreconditionFailedException例外狀況。

類型:字串

必要:否

childDirected

對於使用 Amazon Lex Model Building Service 建立的每個 Amazon Lex 機器人,您必須指定您對 Amazon Lex 的使用是否與網站、程式或其他應用程式相關,而該網站、程式或其他應用程式全部或部分針對 13 歲以下的孩童,並在 childDirected false欄位中指定 true 或 以遵守兒童線上隱私權保護法 (COPPA)。透過truechildDirected 欄位中指定 ,您確認 Amazon Lex 的使用網站、程式或其他應用程式相關,而該網站、程式或其他應用程式全部或部分以 13 歲以下的孩童為目標,並受 COPPA 約束。透過falsechildDirected 欄位中指定 ,您確認使用 Amazon Lex 與網站、程式或其他應用程式無關,而該網站、程式或其他應用程式全部或部分針對 13 歲以下的孩童,並受 COPPA 約束。您不可為 childDirected 欄位指定預設值,該值無法準確反映您對 Amazon Lex 的使用是否與網站、程式或其他應用程式相關,而該網站、程式或其他應用程式全部或部分針對或鎖定 13 歲以下的孩童,並受 COPPA 約束。

如果您使用 Amazon Lex 與全部或部分導向至 13 歲以下兒童的網站、程式或其他應用程式相關,您必須根據 COPPA 取得任何必要的可驗證父母同意。如需有關使用 Amazon Lex 與網站、程式或其他應用程式相關的資訊,這些應用程式全部或部分針對 13 歲以下的孩童,請參閱 Amazon Lex 常見問答集。

類型:布林值

必要:是

clarificationPrompt

當 Amazon Lex 不了解使用者的意圖時,會使用此訊息來釐清。若要指定 Amazon Lex 應該重複澄清提示的次數,請使用 maxAttempts 欄位。如果 Amazon Lex 仍然不了解,則會在 abortStatement 欄位中傳送訊息。

當您建立澄清提示時,請確定它建議使用者的正確回應。例如,對於訂購比薩和飲料的機器人,您可以建立此澄清提示:「您想要做什麼? 您可以說「訂購比薩」或「訂購飲料」。

如果您已定義後援意圖,則如果重複說明提示,則會叫用maxAttempts欄位中定義的次數。如需詳細資訊,請參閱 AMAZON.FallbackIntent

如果您未定義釐清提示,Amazon Lex 將在執行時間傳回 400 個錯誤請求例外狀況,在三個情況下:

  • 後續提示 - 當使用者回應後續提示,但未提供意圖時。例如,為了回應後續提示,該提示指出「您今天是否想要其他項目?」 使用者說「是」。Amazon Lex 會傳回 400 錯誤請求例外狀況,因為沒有要傳送給使用者的釐清提示以取得意圖。

  • Lambda 函數 - 使用 Lambda 函數時,您會傳回ElicitIntent對話方塊類型。由於 Amazon Lex 沒有向使用者取得意圖的說明提示,因此會傳回 400 個錯誤請求例外狀況。

  • PutSession 操作 - 使用 PutSession操作時,您會傳送ElicitIntent對話方塊類型。由於 Amazon Lex 沒有向使用者取得意圖的說明提示,因此會傳回 400 個錯誤請求例外狀況。

類型:Prompt 物件

必要:否

createVersion

設定為true新編號版本的機器人時,會建立。這與呼叫 CreateBotVersion操作相同。如果您未指定 createVersion,則預設為 false

類型:布林值

必要:否

description

機器人的描述。

類型:字串

長度限制:長度下限為 0。長度上限為 200。

必要:否

detectSentiment

當設定為true使用者表達用語時,會傳送至 Amazon Comprehend 進行情緒分析。如果您未指定 detectSentiment,則預設為 false

類型:布林值

必要:否

enableModelImprovements

將 設定為 true ,以允許存取自然語言理解改進。

當您將 enableModelImprovements 參數設定為 true時,您可以使用 nluIntentConfidenceThreshold 參數來設定可信度分數。如需詳細資訊,請參閱可信度分數

您只能在特定區域中設定 enableModelImprovements 參數。如果您將 參數設定為 true,您的機器人可以存取準確性改進。

您可以將 en-US 地區設定enableModelImprovements參數設定為 false 的區域為:

  • 美國東部 (維吉尼亞北部) (us-east-1)

  • 美國西部 (奧勒岡) (us-west-2)

  • 亞太區域 (雪梨) (ap-southeast-2)

  • 歐洲 (愛爾蘭) (eu-west-1)

在其他區域和地區設定中, enableModelImprovements 參數true預設為 。在這些區域和地區設定 參數以false擲回ValidationException例外狀況。

類型:布林值

必要:否

idleSessionTTLInSeconds

Amazon Lex 保留對話中所收集資料的秒數上限。

使用者互動工作階段在指定的時間內保持作用中。若在此期間沒有發生任何對話,則工作階段會過期,且 Amazon Lex 會刪除逾時之前提供的任何資料。

例如,假設使用者選擇 OrderPizza 意圖,但透過下訂單獲得橫向追蹤。如果使用者未在指定的時間內完成訂單,Amazon Lex 會捨棄其收集的槽資訊,而且使用者必須重新開始。

如果您未在PutBot操作請求中包含 idleSessionTTLInSeconds元素,Amazon Lex 會使用預設值。如果請求取代現有的機器人,也是如此。

預設值為 300 秒 (5 分鐘)。

類型:整數

有效範圍:最小值為 60。最大值為 86400。

必要:否

intents

Intent 物件的陣列。每個意圖代表使用者可以表達的命令。例如,披薩排序機器人可能支援 OrderPizza 意圖。如需詳細資訊,請參閱Amazon Lex:運作方式

類型:Intent 物件陣列

必要:否

locale

指定機器人的目標地區設定。機器人中使用的任何意圖都必須與機器人的地區設定相容。

預設值為 en-US

類型:字串

有效值:de-DE | en-AU | en-GB | en-IN | en-US | es-419 | es-ES | es-US | fr-FR | fr-CA | it-IT | ja-JP | ko-KR

必要:是

nluIntentConfidenceThreshold

決定在 PostContentPostText 回應中傳回替代意圖時AMAZON.KendraSearchIntent,Amazon Lex 將插入 AMAZON.FallbackIntent、 或兩者的閾值。 AMAZON.FallbackIntent 只有在機器人設定好時才AMAZON.KendraSearchIntent插入。

您必須將 enableModelImprovements 參數設定為 true,才能在下列區域中使用可信度分數。

  • 美國東部 (維吉尼亞北部) (us-east-1)

  • 美國西部 (奧勒岡) (us-west-2)

  • 亞太區域 (雪梨) (ap-southeast-2)

  • 歐洲 (愛爾蘭) (eu-west-1)

在其他區域中, enableModelImprovements 參數true預設為 。

例如,假設已設定機器人的可信度閾值為 0.80 和 AMAZON.FallbackIntent。Amazon Lex 傳回三種替代意圖,並具有下列可信度分數:IntentA (0.70)、IntentB (0.60)、IntentC (0.50)。PostText 操作的回應將是:

  • AMAZON.FallbackIntent

  • IntentA

  • IntentB

  • IntentC

類型:Double

有效範圍:最小值為 0。最大值為 1。

必要:否

processBehavior

如果您將 processBehavior元素設定為 BUILD,Amazon Lex 會建置機器人,使其可以執行。如果您將 元素設定為 SAVE Amazon Lex, 會儲存機器人,但不會建置機器人。

如果您未指定此值,預設值為 BUILD

類型:字串

有效值:SAVE | BUILD

必要:否

tags

要新增至機器人的標籤清單。您只能在建立機器人時新增標籤,無法使用 PutBot操作來更新機器人上的標籤。若要更新標籤,請使用 TagResource 操作。

類型:Tag 物件陣列

陣列成員:項目數下限為 0。項目數上限為 200。

必要:否

voiceId

您希望 Amazon Lex 用於與使用者進行語音互動的 Amazon Polly 語音 ID。 Amazon Lex 為語音設定的地區設定必須符合機器人的地區設定。如需詳細資訊,請參閱《Amazon Polly 開發人員指南》中的 Amazon Polly 中的語音Amazon Polly

類型:字串

必要:否

回應語法

HTTP/1.1 200 Content-type: application/json { "abortStatement": { "messages": [ { "content": "string", "contentType": "string", "groupNumber": number } ], "responseCard": "string" }, "checksum": "string", "childDirected": boolean, "clarificationPrompt": { "maxAttempts": number, "messages": [ { "content": "string", "contentType": "string", "groupNumber": number } ], "responseCard": "string" }, "createdDate": number, "createVersion": boolean, "description": "string", "detectSentiment": boolean, "enableModelImprovements": boolean, "failureReason": "string", "idleSessionTTLInSeconds": number, "intents": [ { "intentName": "string", "intentVersion": "string" } ], "lastUpdatedDate": number, "locale": "string", "name": "string", "nluIntentConfidenceThreshold": number, "status": "string", "tags": [ { "key": "string", "value": "string" } ], "version": "string", "voiceId": "string" }

回應元素

如果動作成功,則服務傳回 HTTP 200 回應。

服務會傳回下列 JSON 格式的資料。

abortStatement

Amazon Lex 用來取消對話的訊息。如需詳細資訊,請參閱PutBot

類型:Statement 物件

checksum

您建立之機器人的檢查總和。

類型:字串

childDirected

對於使用 Amazon Lex Model Building Service 建立的每個 Amazon Lex 機器人,您必須指定您對 Amazon Lex 的使用是否與網站、程式或其他應用程式相關,而該網站、程式或其他應用程式全部或部分針對 13 歲以下的孩童,並在 childDirected false欄位中指定 true 或 以遵守兒童線上隱私權保護法 (COPPA)。透過truechildDirected 欄位中指定 ,您確認 Amazon Lex 的使用網站、程式或其他應用程式相關,而該網站、程式或其他應用程式全部或部分以 13 歲以下的孩童為目標,並受 COPPA 的約束。透過falsechildDirected 欄位中指定 ,您確認 Amazon Lex 的使用與網站、程式或其他應用程式無關,該網站、程式或其他應用程式全部或部分針對 13 歲以下的孩童,並受 COPPA 約束。您不可為 childDirected 欄位指定預設值,該值無法準確反映您對 Amazon Lex 的使用是否與網站、程式或其他應用程式相關,而該網站、程式或其他應用程式全部或部分針對或鎖定 13 歲以下的孩童,並受 COPPA 約束。

如果您使用 Amazon Lex 與全部或部分導向至 13 歲以下兒童的網站、程式或其他應用程式相關,您必須根據 COPPA 取得任何必要的可驗證父母同意。如需使用 Amazon Lex 與網站、程式或其他應用程式相關的資訊,這些應用程式全部或部分針對 13 歲以下的孩童,請參閱 Amazon Lex 常見問答集。

類型:布林值

clarificationPrompt

當 Amazon Lex 不了解使用者的意圖時,會使用的提示。如需詳細資訊,請參閱PutBot

類型:Prompt 物件

createdDate

機器人建立的日期。

類型:Timestamp

createVersion

True 如果建立新版本的機器人。如果請求中未指定 createVersion 欄位,則回應中的 createVersion 欄位會設為 false。

類型:布林值

description

機器人的說明。

類型:字串

長度限制:長度下限為 0。長度上限為 200。

detectSentiment

true 如果機器人設定為將使用者表達用語傳送至 Amazon Comprehend 以進行情緒分析。如果請求中未指定 detectSentiment 欄位,則 detectSentiment 欄位位於回應false中。

類型:布林值

enableModelImprovements

指出機器人是否使用準確性改進。 true 指出機器人正在使用改進,否則是 false

類型:布林值

failureReason

如果 statusFAILED,Amazon Lex 會提供無法建置機器人的原因。

類型:字串

idleSessionTTLInSeconds

Amazon Lex 保留對話中收集的資料的最大時間長度。如需詳細資訊,請參閱PutBot

類型:整數

有效範圍:最小值為 60。最大值為 86400。

intents

Intent 物件的陣列。如需詳細資訊,請參閱PutBot

類型:Intent 物件陣列

lastUpdatedDate

機器人更新的日期。當您建立資源時,建立日期和上次更新日期相同。

類型:Timestamp

locale

機器人的目標地區設定。

類型:字串

有效值:de-DE | en-AU | en-GB | en-IN | en-US | es-419 | es-ES | es-US | fr-FR | fr-CA | it-IT | ja-JP | ko-KR

name

機器人的名稱。

類型:字串

長度限制:長度下限為 2。長度上限為 50。

模式:^([A-Za-z]_?)+$

nluIntentConfidenceThreshold

PostContentPostText 回應中傳回替代意圖時AMAZON.KendraSearchIntent,決定 Amazon Lex 插入 AMAZON.FallbackIntent、 或兩者位置的分數。如果所有意圖的可信度分數都低於此值,AMAZON.FallbackIntent則會插入 。AMAZON.KendraSearchIntent只有在機器人設定時才插入。

類型:Double

有效範圍:最小值為 0。最大值為 1。

status

當您傳送建立機器人的請求,並將 processBehavior 設定為 時BUILD,Amazon Lex 會將status回應元素設定為 BUILDING

READY_BASIC_TESTING 狀態中,您可以使用使用者輸入來測試機器人,該輸入完全符合針對機器人意圖和槽類型中的值所設定的表達式。

如果 Amazon Lex 無法建置機器人,Amazon Lex 會將 status設定為 FAILED。Amazon Lex 傳回failureReason回應元素中失敗的原因。

當您將 processBehavior 設定為 時SAVE,Amazon Lex 會將狀態碼設定為 NOT BUILT

當機器人處於 READY 狀態時,您可以測試和發佈機器人。

類型:字串

有效值:BUILDING | READY | READY_BASIC_TESTING | FAILED | NOT_BUILT

tags

與機器人相關聯的標籤清單。

類型:Tag 物件陣列

陣列成員:項目數下限為 0。項目數上限為 200。

version

機器人的版本。對於新的機器人,版本一律為 $LATEST

類型:字串

長度限制:長度下限為 1。長度上限為 64。

模式:\$LATEST|[0-9]+

voiceId

Amazon Lex 用來與使用者進行語音互動的 Amazon Polly 語音 ID。如需詳細資訊,請參閱PutBot

類型:字串

錯誤

BadRequestException

請求格式不正確。例如,值無效或缺少必要欄位。請檢查欄位值,然後再試一次。

HTTP 狀態碼:400

ConflictException

處理請求時出現衝突。請再次嘗試您的請求。

HTTP 狀態碼:409

InternalFailureException

發生內部 Amazon Lex 錯誤。請再次嘗試您的請求。

HTTP 狀態碼:500

LimitExceededException

請求超過限制。請再次嘗試您的請求。

HTTP 狀態碼:429

PreconditionFailedException

您嘗試變更的資源檢查總和與請求中的檢查總和不相符。請檢查資源的檢查總和,然後再試一次。

HTTP 狀態碼:412

另請參閱

如需在其中一種語言特定 AWS SDKs中使用此 API 的詳細資訊,請參閱以下內容:

下一個主題:

PutBotAlias

上一個主題:

ListTagsForResource
隱私權網站條款Cookie 偏好設定
© 2025, Amazon Web Services, Inc.或其附屬公司。保留所有權利。