

支援終止通知：2025 年 9 月 15 日， AWS 將停止對 Amazon Lex V1 的支援。2025 年 9 月 15 日之後，您將無法再存取 Amazon Lex V1 主控台或 Amazon Lex V1 資源。如果您使用的是 Amazon Lex V2，請改參閱 [Amazon Lex V2 指南](https://docs.aws.amazon.com/lexv2/latest/dg/what-is.html)。

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

# 練習 2：新增表達用語 (AWS CLI)
<a name="gs-cli-update-utterance"></a>

若要改善 Amazon Lex 用來辨識使用者請求的機器學習模型，請將另一個範例表達用語新增至機器人。

新增表達用語包含四個步驟。

1. 使用 [GetIntent](API_GetIntent.md)操作從 Amazon Lex 取得意圖。

1. 更新意圖。

1. 使用 [PutIntent](API_PutIntent.md)操作將更新的意圖傳回 Amazon Lex。

1. 使用 [GetBot](API_GetBot.md) 和 [PutBot](API_PutBot.md) 操作重建使用該意圖的任何機器人。

若要執行本練習中的命令，您必須知道要執行命令的區域。如需區域的列表，請參閱[模型建置配額](gl-limits.md#gl-limits-model-building)。

來自 `GetIntent` 操作的回應包含一個名為 `checksum` 的欄位，可識別意圖的特定修訂版本。使用 [PutIntent](API_PutIntent.md) 操作更新意圖時，您必須提供檢查總和值。若不提供，會得到以下錯誤訊息：

```
            An error occurred (PreconditionFailedException) when calling 
            the PutIntent operation: Intent {{intent name}} already exists. 
            If you are trying to update {{intent name}} you must specify the 
            checksum.
```

**注意**  
下列 AWS CLI 範例已針對 Unix、Linux 和 macOS 格式化。用於 Windows 時，請將 `"\$LATEST"` 變更為 `$LATEST`，並以插入號 (^) 取代每一行結尾處的反斜線 (\\) 接續字元。

**更新 `OrderFlowers` 意圖 (AWS CLI)**

1. 在 中 AWS CLI，從 Amazon Lex 取得意圖。Amazon Lex 會將輸出傳送至名為 的檔案 **OrderFlowers-V2.json.**

   ```
   aws lex-models get-intent \
       --region {{region}} \
       --name OrderFlowers \
       --intent-version "\$LATEST" > OrderFlowers-V2.json
   ```

1. 在文字編輯器中開啟 **OrderFlowers-V2.json**。

   1. 尋找並刪除 `createdDate`、`lastUpdatedDate` 和 `version` 欄位。

   1. 將以下內容新增到 `sampleUtterances` 欄位：

      ```
      I want to order flowers
      ```

   1. 儲存檔案。

1. 使用下列命令將更新後的意圖傳送至 Amazon Lex：

   ```
   aws lex-models put-intent  \
       --region {{region}} \
       --name OrderFlowers \
       --cli-input-json file://OrderFlowers-V2.json
   ```

   Amazon Lex 會傳送下列回應：

更新好意圖之後，重建任何使用它的機器人。

**重建 `OrderFlowersBot` 機器人 (AWS CLI)**

1. 在 中 AWS CLI，取得`OrderFlowersBot`機器人的定義，並使用下列命令將其儲存至 檔案：

   ```
   aws lex-models get-bot \
       --region {{region}} \
       --name OrderFlowersBot \
       --version-or-alias "\$LATEST" > OrderFlowersBot-V2.json
   ```

1. 在文字編輯器中開啟 **OrderFlowersBot-V2.json**。移除 `createdDate`、`lastUpdatedDate`、`status` 和 `version` 欄位。

1. 在文字編輯器中，將下列行新增至機器人定義：

   ```
   "processBehavior": "BUILD",
   ```

1. 在 中 AWS CLI，透過對 執行下列命令來建置機器人的新修訂版：

   ```
   aws lex-models put-bot \
       --region {{region}} \
       --name OrderFlowersBot \
       --cli-input-json file://OrderFlowersBot-V2.json
   ```

   伺服器的回應為：

## 後續步驟
<a name="gs-cli-next-exercise-3"></a>

[練習 3：新增 Lambda 函數 (AWS CLI)](gs-cli-update-lambda.md)