

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

# 自訂槽類型
<a name="custom-slot-types"></a>

對於每個意圖，您可以指定參數，指出意圖需要滿足使用者的請求的資訊。這些參數或槽，有一個類型。*槽類型*是 Amazon Lex V2 用來訓練機器學習模型以辨識槽值的值清單。例如，您可以使用「comedy」、「adventure」、「documentary」等`Genres`值來定義名為 的槽類型。您可以定義槽類型值的同義詞。例如，您可以為值「喜劇」定義同義詞「滑稽」和「幽默」。

![建立自訂插槽類型。](http://docs.aws.amazon.com/zh_tw/lexv2/latest/dg/images/slots/custom-slot-type.png)


您可以設定槽類型以展開槽值。槽值將用作訓練資料，而且如果與槽值和這些值的同義詞類似，模型會將槽解析為使用者提供的值。這是預設行為。Amazon Lex V2 會維護插槽可能解析度的清單。清單中的每個項目都會提供*解析值*，Amazon Lex V2 會將其視為插槽的其他可能性。解析的值是比對槽值的最佳方式。該清單最多可包含五個值。

或者，您可以設定槽類型，將解析度限制為槽值。在此情況下，只有當使用者輸入的槽值與該槽值相同或為同義詞時，模型才會將其解析為現有的槽值。例如，如果使用者輸入「滑稽」，它會解析為槽值「喜劇」。

當使用者輸入的值是槽類型值的同義詞時，模型會將該槽類型值傳回為 清單中的第一個項目`resolvedValues`。例如，如果使用者輸入 "funny"，模型會將值 "funny" 填入 `originalValue` 欄位，並將 "comedy" 填入 resolvedValues 欄位中的第一個項目。您可以在使用 [CreateSlotType](https://docs.aws.amazon.com/lexv2/latest/APIReference/API_CreateSlotType.html) 操作建立或更新插槽類型`valueSelectionStrategy`時設定 ，以便將插槽值填入解析清單中的第一個值。

 自訂插槽類型支援使用拼字樣式的輸入。您可以使用spell-by-letter和spell-by-word寫樣式來協助客戶輸入字母。如需詳細資訊，請參閱[在對話期間使用拼寫樣式擷取槽值](spelling-styles.md)。

 如果您使用的是 Lambda 函數，函數的輸入事件會包含稱為 的解析清單`resolvedValues`。下列範例顯示 Lambda 函數的輸入槽區段：

```
   "slots": {
      "MovieGenre": {
         "value": {
            "originalValue": "funny",
            "interpretedValue": "comedy",
            "resolvedValues": [
               "comedy"
            ]
         }
      }
   }
```

對於每個槽類型，您最多可以定義 10,000 個值和同義詞。每個機器人總共可有 50,000 個槽類型值和同義詞。例如，您有 5 個槽類型，每個有 5,000 個值和同義詞，或您有 10 個槽類型，每個有 2,500 個值和同義詞。

自訂插槽類型不應具有與內建插槽類型相同的名稱。例如，自訂槽類型不應以 Date、Number 或 Confirmation 的預留關鍵字命名。這些關鍵字會保留給內建插槽類型。如需所有內建插槽類型的清單，請參閱[內建插槽類型](built-in-slots.md)。