

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

# 管理測試集
<a name="manage-test-sets"></a>

您可以從測試集視窗中下載、更新和刪除測試集。或者，您可以使用可用的測試集清單來編輯或手動註釋您的測試集檔案。然後，由於錯誤或其他輸入問題，請再次上傳以重試驗證。

**若要從測試集記錄下載測試集檔案：**

1. 從測試集清單中選取測試集的名稱。

1. 在測試集記錄視窗中，選取**測試輸入**區段中畫面右側的**下載**按鈕。

1. 如果視窗頂端有任何與測試集相關的驗證錯誤詳細資訊，請選取**下載**按鈕。檔案將儲存至您的下載資料夾。您可以從測試集 CSV 檔案中的錯誤訊息修正測試集中的驗證錯誤。尋找驗證步驟中識別的錯誤、修正該行或將其移除，然後上傳檔案以重試驗證步驟。

1. 如果您成功下載測試集，則會出現綠色橫幅訊息。

**若要從測試集清單中下載測試集：**

1. 從測試集清單中，選取您要下載之測試集項目旁的選項按鈕。

1. 從右上角的動作選單中，選擇**下載**。

1. 綠色橫幅訊息將指出您是否已成功下載測試集。檔案將儲存至您的下載資料夾。

# Test Workbench 支援的測試集資料欄
<a name="file-input-test-sets"></a>

以下是 Test Workbench 支援的測試集資料欄完整清單，以及如何將其與 Amazon Lex V2 搭配使用的說明。


| 資料行名稱 | 測試集類型 | 值類型 | 多欄支援 | Description | 
| --- | --- | --- | --- | --- | 
|  行號  |  文字和音訊  | Number | 否 | 這是 Amazon Lex V2 忽略的使用者資料欄。它旨在協助測試集作者排序和篩選測試集資料列。「行號」可以用作替代資料欄名稱。 | 
|  對話號碼  |  文字和音訊  | Number | 否 | 此欄可讓您將對話中的資料列放在一起。「對話 \$1」可以用作替代資料欄名稱。 | 
|  來源  |  文字和音訊  | Enum ("User"、"Agent") | 否 | 此欄中的值指出資料列是針對使用者還是客服人員。「對話參與者」可以用作替代資料欄名稱。 | 
|  Input  |  文字  | String | 否 | 此欄用於新增文字測試集的文字記錄。文字輸入應該用於使用者資料列。客服人員提示應該用於客服人員資料列。 | 
|  預期的轉錄  |  音訊  | String | 否 | 此欄用於新增音訊測試集的文字記錄。音訊檔案的預期轉錄應在具有音訊輸入的使用者資料列中使用。DTMF 輸入可用於具有 DTMF 輸入的使用者資料列。客服人員提示應該用於客服人員資料列。 | 
|  S3 音訊位置  |  音訊  | String | 否 | 此欄用於新增音訊檔案位置，且僅適用於音訊測試集。S3 路徑應搭配音訊輸入用於使用者資料列。此欄位應該在具有 DTMF 輸入的使用者資料列中保留空白。此欄位應該在客服人員資料列中保留空白。 | 
|  輸入內容標籤  |  文字和音訊  | String | 是 | 此欄用於提供輸入內容的名稱，用於在測試集中執行資料列時輸入 Lex。這是指[設定 Lex V2 機器人的意圖內容中的輸入內容](https://docs.aws.amazon.com/lexv2/latest/dg/context-mgmt-active-context.html)。請注意，Test Workbench 僅支援內容名稱。它不支援內容中的參數。可以使用名為 'Input Context Tag 1'、'Input Context Tag 2' 等多個資料欄。 | 
|  請求屬性  |  文字和音訊  | String | 是 | 此欄用於提供請求屬性，用於在測試集中執行資料列時輸入 Lex。欄中的值應以格式 `<request-attribute-name> = <request-attribute-value>` 提供。為了便於閱讀，可以在 '=' 周圍新增空間。例如：request-attribute-foo = 這是虛擬回應 request-attribute-foo = '這是「虛擬回應」' request-attribute-foo =「這是「虛擬回應」。可以使用名為 'Request 屬性 1'、'Request 屬性 2' 等的多個資料欄。 | 
|  工作階段屬性  |  文字和音訊  | String | 是 | 此欄用於提供工作階段屬性，用於在測試集中執行資料列時輸入 Lex。 [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/lexv2/latest/dg/file-input-test-sets.html)  | 
|  RunTime 提示  |  文字和音訊  | String | 是 | 此欄用於為意圖中的插槽提供執行時間提示，在測試集中執行資料列時，該提示將用於 Lex 的輸入。以下是範例： [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/lexv2/latest/dg/file-input-test-sets.html)  | 
|  插斷輸入  |  音訊  | Boolean | 否 | 此欄用於指定 Test Workbench 在將音訊檔案傳送至測試集中資料列的 Lex 執行期時是否應插斷。 [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/lexv2/latest/dg/file-input-test-sets.html)  | 
|  預期的輸出意圖  |  文字和音訊  | String | 否 | 此欄用於指定 Lex 輸出中預期用於測試集中資料列的意圖名稱。 | 
|  預期的輸出插槽  |  文字和音訊  | String | 是 | 此欄用於在測試集中執行資料列時，提供 Lex 輸出中預期的槽值。 [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/lexv2/latest/dg/file-input-test-sets.html)  | 
|  預期的輸出內容標籤  |  文字和音訊  | String | 是 | 此欄用於指定測試集中資料列的 Lex 輸出中預期輸出內容的名稱。 [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/lexv2/latest/dg/file-input-test-sets.html)  | 

# 檢視測試工作台中的測試驗證錯誤
<a name="view-errors-test-sets"></a>

您可以更正報告驗證錯誤的測試集。當測試集尚未準備好進行測試時，就會產生這些驗證錯誤。Test Workbench 可以顯示測試集輸入 CSV 檔案中哪些必要資料欄沒有預期格式的值。

**若要檢視測試驗證錯誤：**

1. 從測試集清單中，選取報告您要檢視之**驗證錯誤**狀態的測試集名稱。測試集的名稱是作用中連結，可讓您查看測試集的詳細資訊。

1. 測試集記錄會在畫面頂端顯示驗證錯誤詳細資訊。選擇**檢視詳細資訊**以查看驗證錯誤的報告。

1. 從錯誤報告視窗中，檢閱行號和錯誤類型，以查看錯誤發生的位置。如需冗長的錯誤清單，您可以選擇**下載**錯誤報告。

1. 將測試集輸入 CSV 檔案中列出的錯誤與原始測試檔案進行比較，以修正任何問題並再次上傳測試集。

下表列出包含案例的輸入 CSV 驗證錯誤訊息。


| 案例 | 錯誤訊息 | 備註 | 
| --- | --- | --- | 
|  超過測試集檔案大小  |  測試集檔案大小大於 200 MB。提供較小的檔案，然後再試一次您的請求。  |  | 
| 測試集超過記錄上限 | 輸入檔案的記錄超過支援的 200，000 上限。 |  | 
| 上傳空測試集 | 匯入的測試集是空的。提供非空的測試集，然後再試一次您的請求。 |  | 
| 空白資料欄標頭名稱 | 資料欄標頭列：在資料欄編號 5 中找到空的資料欄名稱。 |  | 
| 無法辨識的資料欄標頭名稱 | 資料欄標頭列：無法辨識資料欄編號 2 中的資料欄名稱「虛擬」。 |  | 
| 重複的資料欄標頭名稱 | 資料欄標頭列：找到多個資料欄「S3 音訊連結」和相同或同等的「S3 音訊連結」。移除或重新命名其中一個資料欄。 |  | 
| 多值資料欄名稱超過限制 | 資料欄標頭資料列：「預期輸出插槽」超過支援計數上限的資料欄數：6。移除「預期輸出插槽」的某些資料欄，然後再試一次。 | 多值資料欄支援的資料欄數目上限為 6。  | 
| 文字或音訊相關資料欄標頭不存在 | 找不到文字或音訊對話的資料欄。對於文字對話，請使用 \$1'Text input'\$1 欄。對於音訊對話，請使用 \$1'S3 音訊連結'， 'Expected transcription'\$1 欄。 | 音訊強制性資料欄：\$1'S3 音訊連結'， 'Expected transcription'\$1文字強制性資料欄：\$1'Text input'\$1 | 
| 文字和音訊相關的資料欄標頭都存在  | 找到文字和音訊對話的資料欄。您可以使用 \$1'Text input'\$1 欄進行文字對話，或使用 \$1'S3 audio link'， 'Expected transcription'\$1 欄進行音訊對話。 | 音訊強制性資料欄：\$1'S3 音訊連結'， 'Expected transcription'\$1文字強制性資料欄：\$1'Text input'\$1 | 
| 缺少必要資料欄 | 找不到必要資料欄 【「預期輸出意圖」】。 | 必要資料欄：\$1"Line \$1"、"Source"、"Expected Output Intent"\$1 | 
| 在沒有標頭的欄中找到資料 | 在資料欄編號 8 中找到資料欄編號 6，但對應的資料欄沒有資料欄標頭。 |  | 
| 找不到必要資料欄的資料 | Row=12：找不到必要資料欄的值：\$1"Source"， "Expected Output Intent"\$1 |  | 
| 找到重複的對話 ID | 對話號碼 '19' 出現在列號 39 的上一個對話中。」 請確定沒有為兩個對話提供相同的對話號碼，您可以透過確保對話號碼的所有資料列都分組在一起來執行此操作。 |  | 
| 提供的對話 ID 無效 | 在「對話 \$1」欄中找到無效的值 'test\$1conversation'。此資料欄的值必須為數字或使用者資料列的 N/A （即不適用）。 |  | 
| 針對行號提供的非數值 | 在 'Line \$1' 欄中找到非數值 'test\$1line'。其值必須為數值。 |  | 
| 在客服人員資料列中找不到對話 ID | 找不到 'Conversation \$1' 資料欄的值。必須提供給客服人員資料列。 |  | 
| 在客服人員資料列中找到的非數值對話 ID | 在「對話 \$1」欄中找到非數值 'test\$1conversation'。代理程式資料列的值必須為數字。 |  | 
| 無效的 S3 位置 | 提供了無效的值 'bucket/folder'。有效格式為 S3：//<bucketName>/<keyName>。 |  | 
| 無效的 S3 儲存貯體名稱 | 提供了無效的 s3 儲存貯體名稱 'test\$1bucket'。檢查儲存貯體名稱。 |  | 
| S3 音訊位置為 資料夾 | 提供的音訊位置 'S3：//bucket/folder' 無效。它指向 S3 資料夾。 |  | 
| 無效意圖名稱 | 意圖 'intent@name' 中存在無效的字元。檢查意圖名稱。 | Regex 檢查：^(【0-9a-zA-Z】【\$1-】？)\$1\$1 | 
| 無效的槽名稱 | 槽 'Slot@Name' 中存在無效的字元。檢查槽名稱。 | Regex： ^(【0-9a-zA-Z】【\$1-】？)\$1\$1它不應以 dot(.) 開頭或結尾。 | 
| 為父槽提供的插槽值 | 已為子槽 'Address.City' 以及父槽 'Address' 提供槽值。應僅為子插槽提供值。 | CST 中的父槽不應具有槽值 | 
| 內容名稱中的無效字元 | 內容名稱 'context@1' 中存在無效的字元。檢查內容名稱。 | Regex：^(【A-Za-z】\$1？)\$1\$1 | 
| 無效的槽拼寫樣式 | 提供的 'test' 值無效。請確定它們都是大寫。有效值為 【"Default"、"SpellByLetter"、"SpellByWord"】。 | 支援的值 【"Default"、"SpellByLetter"、"SpellByWord" | 
| 參與者或來源必須是客服人員或使用者 | 提供了無效的值 'bot'。有效值為 【「客服人員」、「使用者」】。 | 支援的列舉：「代理程式」、「使用者」 | 
| 行號不應為十進位 | 提供了無效的值 '10.1'。它應該是一個不含任何分數的有效數字。 |  | 
| 對話號碼不應為十進位 | 提供了無效的值 '10.1'。它應該是一個不含任何分數的有效數字。 |  | 
| 行號應該在 範圍內 | 提供了無效的值 '92233720368547758071'。它應該大於或等於 1 且小於或等於 9223372036854775807。 |  | 
| 插斷資料欄僅接受布林值 | 提供的 'test' 值無效。它應該是有效的布林值，例如 'true' 或 'false'。或者，也可以使用「是」和「否」。 | 可能的值："True"， "true"， "T"， "Yes"， "yEs"， "Y"， "1"， "1.0"， "False"， "false"， "F"， "No"， "no"， "N"， "0"， "0.0" | 
| 預期的槽、工作階段屬性、請求屬性應間隔等於 (=) | 值 'slotName：slotValue' 沒有 '='。這類值應以「<key>=<value>」格式的鍵值對提供。 | 例如：slotName = slotType | 
| 預期的槽、工作階段屬性、請求屬性應該有索引鍵值對 | '=slotValue' 在 '=' 之前沒有金鑰。這類值應以「<key>=<value>」格式的鍵值對提供。 | 例如：slotName = slotType | 
| 結尾的引號無效  | 在「Foo 的項目」中發現不正確的引號。它以引號字元 `"` 開頭，但不以相同的引號字元結尾。 | 例如：`"Foo's item"， KFC` | 
| 中間的引號無效 | 在 `"Foo's" Burger 等 中找到不正確的引號。它的內容中包含引號字元 `"`。包含單引號的值應包裝在雙引號內，反之亦然。 | 正確 例如：`"Foo's item"， KFC` | 
| 必要的引號 | `key = Foo 的項目` 包含單引號或雙引號，但尚未在引號內包裝。包含單引號的值應包裝在雙引號內，反之亦然。 |  | 
| 欄中重複的重複金鑰  | 金鑰 `key1` 重複兩欄：`Session Attribute 3` 和 `Session Attribute 1`。 |  | 
| 執行時間提示中的格式無效 | 為執行期提示提供的無效金鑰 `BookFlight.Car."`。對於執行期提示，金鑰的格式應該為 <intentName>.<slotName>。 | 如果 '.' 必須位於金鑰中間，則無法從此類金鑰擷取意圖名稱和槽名稱。這類格式不正確的範例：「BookFlight」、「.BookFlight.Car",「BookFlight.Car." | 
| 執行時間提示金鑰中的無效意圖名稱 | 找到執行期提示的無效意圖 `intent@name`。檢查意圖名稱。 | Regex 檢查：^(【0-9a-zA-Z】【\$1-】？)\$1\$1 | 
| 執行時間提示金鑰中的插槽名稱無效 | 在 `Slot@Name` for Runtime Hints 中找到無效的槽名稱。檢查槽名稱。 | Regex： ^(【0-9a-zA-Z】【\$1-】？)\$1\$1它不應以 dot(.) 開頭或結尾。 | 

# 在 Test Workbench 中刪除測試集
<a name="delete-test-sets"></a>

您可以從測試集清單中輕鬆刪除測試集。

**若要刪除測試集：**

1. 從左側選單移至**測試集**清單，以查看測試集清單。

1. 從測試集清單中，選取您要刪除的測試集。

1. 前往右上角**的動作**下拉式選單，然後選擇**刪除**。

1. 訊息確認已刪除測試集。

# 編輯測試集詳細資訊
<a name="edit-details-test-sets"></a>

您可以在測試集清單中編輯測試集名稱和詳細資訊。稍後可以新增或更新名稱或詳細資訊。不過，您必須先更新測試集，才能使用機器人或轉錄資料執行測試。

**若要編輯測試集詳細資訊：**

1. 從左側選單移至測試集的清單，以查看測試集的清單。

1. 從測試集清單中，選取您要編輯之測試集的核取方塊。

1. 前往右上角**的動作**下拉式選單，然後選擇**編輯詳細資訊**。

1. 訊息確認已成功編輯測試集。

# 更新測試集
<a name="update-test-sets"></a>

您可以更新、更正、修改或刪除測試集中的項目，以最佳化基準結果，或更正測試集中可能發生的其他錯誤

您可以下載測試集，並在上傳更正的測試集之前修正驗證錯誤。請參閱[檢視測試驗證錯誤](https://docs.aws.amazon.com/lexv2/latest/dg/view-errors-test-sets.html)。

**若要更新測試集：**

1. 從測試集記錄中，選擇右上角的**更新測試集**按鈕。

1. 選擇要從 Amazon S3 帳戶上傳的檔案，或從您的電腦上傳 CSV 測試檔案。注意：更新測試集會覆寫現有的資料。

1. 選取**更新**按鈕。

1. 訊息確認已成功更新測試集。注意：此操作可能需要幾分鐘的時間，取決於測試集的複雜性和大小。

1. 訊息確認已成功更新測試集，且**狀態**顯示**準備測試**。