

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

# 步驟 5：查詢 Amazon Kendra 索引
<a name="tutorial-search-metadata-query-kendra"></a>

您的 Amazon Kendra 索引現在已準備好進行自然語言查詢。當您搜尋索引時，Amazon Kendra 會使用您提供的所有資料和中繼資料，將最準確的答案傳回至您的搜尋查詢。

Amazon Kendra 可以回答三種類型的查詢：
+ 事實查詢 (「誰」、「什麼」、「時間」或「哪裡」問題）
+ 描述性查詢 ("how" 問題）
+ 關鍵字搜尋 （意圖和範圍不明確的問題）

**Topics**
+ [查詢 Amazon Kendra 索引](#tutorial-search-metadata-query-kendra-basic)
+ [篩選搜尋結果](#tutorial-search-metadata-query-kendra-filters)

## 查詢 Amazon Kendra 索引
<a name="tutorial-search-metadata-query-kendra-basic"></a>

您可以使用與 Amazon Kendra 支援的三種查詢對應的問題來查詢 Amazon Kendra 索引。如需詳細資訊，請參閱[查詢](https://docs.aws.amazon.com/kendra/latest/dg/searching-example.html)。

本節中的範例問題已根據範例資料集選擇。

### 查詢 Amazon Kendra 索引 （主控台）
<a name="tutorial-search-metadata-query-index-console"></a>

1. 開啟位於 https：//[https://console.aws.amazon.com/kendra/](https://console.aws.amazon.com/kendra/) 的 Amazon Kendra 主控台。

1. 在**索引**清單中，按一下 `kendra-index`。

1. 從左側導覽功能表中，選擇搜尋索引的選項。

1. 若要執行範例事實查詢，**Who is Lewis Hamilton?**請在搜尋方塊中輸入 ，然後按 Enter 鍵。

   第一個傳回的結果是 Amazon Kendra 建議的答案，以及包含答案的資料檔案。其餘結果會形成一組建議的文件。

   

     
![\[Search interface showing query "Who is Lewis Hamilton?" with Formula One driver information results.\]](http://docs.aws.amazon.com/zh_tw/kendra/latest/dg/images/tutorial-query1.png)

1. 若要執行描述性查詢，**How does Formula One work?**請在搜尋方塊中輸入 ，然後按 Enter 鍵。

   您將看到 Amazon Kendra 主控台傳回的另一個結果，這次會反白顯示相關片語。

   

     
![\[Search results for "How does Formula One work?" showing snippets about the racing series.\]](http://docs.aws.amazon.com/zh_tw/kendra/latest/dg/images/tutorial-query2.png)

1. 若要執行關鍵字搜尋，**Formula One**請在搜尋方塊中輸入 ，然後按 Enter 鍵。

   您將看到 Amazon Kendra 主控台傳回的另一個結果，後面接著資料集中所有其他提及片語的結果。

   

     
![\[Search results for "Formula One" showing Amazon Kendra suggested answers with article snippets.\]](http://docs.aws.amazon.com/zh_tw/kendra/latest/dg/images/tutorial-query3.png)

### 查詢 Amazon Kendra 索引 (AWS CLI)
<a name="tutorial-search-metadata-query-index-cli"></a>

1. 若要執行範例事實查詢，請使用[查詢](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kendra/query.html)命令：

------
#### [ Linux ]

   ```
   aws kendra query \
           --index-id kendra-index-id \
           --query-text "Who is Lewis Hamilton?" \
           --region aws-region
   ```

   其中：
   + *kendra-index-id* 是您儲存的 `kendra-index-id`，
   + *aws-region* 是您的 AWS 區域。

------
#### [ macOS ]

   ```
   aws kendra query \
           --index-id kendra-index-id \
           --query-text "Who is Lewis Hamilton?" \
           --region aws-region
   ```

   其中：
   + *kendra-index-id* 是您儲存的 `kendra-index-id`，
   + *aws-region* 是您的 AWS 區域。

------
#### [ Windows ]

   ```
   aws kendra query ^
           --index-id kendra-index-id ^
           --query-text "Who is Lewis Hamilton?" ^
           --region aws-region
   ```

   其中：
   + *kendra-index-id* 是您儲存的 `kendra-index-id`，
   + *aws-region* 是您的 AWS 區域。

------

    AWS CLI 會顯示查詢的結果。

1. 若要執行範例描述性查詢，請使用[查詢](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kendra/query.html)命令：

------
#### [ Linux ]

   ```
   aws kendra query \
           --index-id kendra-index-id \
           --query-text "How does Formula One work?" \
           --region aws-region
   ```

   其中：
   + *kendra-index-id* 是您儲存的 `kendra-index-id`，
   + *aws-region* 是您的 AWS 區域。

------
#### [ macOS ]

   ```
   aws kendra query \
           --index-id kendra-index-id \
           --query-text "How does Formula One work?" \
           --region aws-region
   ```

   其中：
   + *kendra-index-id* 是您儲存的 `kendra-index-id`，
   + *aws-region* 是您的 AWS 區域。

------
#### [ Windows ]

   ```
   aws kendra query ^
           --index-id kendra-index-id ^
           --query-text "How does Formula One work?" ^
           --region aws-region
   ```

   其中：
   + *kendra-index-id* 是您儲存的 `kendra-index-id`，
   + *aws-region* 是您的 AWS 區域。

------

    AWS CLI 會顯示查詢的結果。

1. 若要執行範例關鍵字搜尋，請使用[查詢](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kendra/query.html)命令：

------
#### [ Linux ]

   ```
   aws kendra query \
           --index-id kendra-index-id \
           --query-text "Formula One" \
           --region aws-region
   ```

   其中：
   + *kendra-index-id* 是您儲存的 `kendra-index-id`，
   + *aws-region* 是您的 AWS 區域。

------
#### [ macOS ]

   ```
   aws kendra query \
           --index-id kendra-index-id \
           --query-text "Formula One" \
           --region aws-region
   ```

   其中：
   + *kendra-index-id* 是您儲存的 `kendra-index-id`，
   + *aws-region* 是您的 AWS 區域。

------
#### [ Windows ]

   ```
   aws kendra query ^
           --index-id kendra-index-id ^
           --query-text "Formula One" ^
           --region aws-region
   ```

   其中：
   + *kendra-index-id* 是您儲存的 `kendra-index-id`，
   + *aws-region* 是您的 AWS 區域。

------

    AWS CLI 會顯示查詢傳回的答案。

## 篩選搜尋結果
<a name="tutorial-search-metadata-query-kendra-filters"></a>

您可以在 Amazon Kendra 主控台中使用自訂文件屬性來篩選和排序搜尋結果。如需 Amazon Kendra 如何處理查詢的詳細資訊，請參閱[篩選查詢](https://docs.aws.amazon.com/kendra/latest/dg/filtering.html)。

### 篩選搜尋結果 （主控台）
<a name="tutorial-search-metadata-filter-index-console"></a>

1. 開啟位於 https：//[https://console.aws.amazon.com/kendra/](https://console.aws.amazon.com/kendra/) 的 Amazon Kendra 主控台。

1. 在**索引**清單中，按一下 `kendra-index`。

1. 從左側導覽功能表中，選擇搜尋索引的選項。

1. 在搜尋方塊中，輸入 **Soccer matches**做為查詢，然後按 Enter 鍵。

1. 從左側導覽功能表中，選擇**篩選搜尋結果**，以查看可用來篩選搜尋的面向清單。

1. 選取 **EVENT** 子標題下「冠軍聯盟」的核取方塊，以查看僅由包含「冠軍聯盟」的結果篩選的搜尋結果。

   

     
![\[Search interface for soccer matches with filters and Amazon Kendra suggested answers.\]](http://docs.aws.amazon.com/zh_tw/kendra/latest/dg/images/tutorial-filter.png)

### 篩選搜尋結果 (AWS CLI)
<a name="tutorial-search-metadata-filter-index-cli"></a>

1. 若要查看可用於搜尋的特定類型實體 （例如 `EVENT`)，請使用[查詢](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kendra/query.html)命令：

------
#### [ Linux ]

   ```
   aws kendra query \
           --index-id kendra-index-id \
           --query-text "Soccer matches" \
           --facets '[{"DocumentAttributeKey":"EVENT"}]' \
           --region aws-region
   ```

   其中：
   + *kendra-index-id* 是您儲存的 `kendra-index-id`，
   + *aws-region* 是您的 AWS 區域。

------
#### [ macOS ]

   ```
   aws kendra query \
           --index-id kendra-index-id \
           --query-text "Soccer matches" \
           --facets '[{"DocumentAttributeKey":"EVENT"}]' \
           --region aws-region
   ```

   其中：
   + *kendra-index-id* 是您儲存的 `kendra-index-id`，
   + *aws-region* 是您的 AWS 區域。

------
#### [ Windows ]

   ```
   aws kendra query ^
           --index-id kendra-index-id ^
           --query-text "Soccer matches" ^
           --facets '[{"DocumentAttributeKey":"EVENT"}]' ^
           --region aws-region
   ```

   其中：
   + *kendra-index-id* 是您儲存的 `kendra-index-id`，
   + *aws-region* 是您的 AWS 區域。

------

    AWS CLI 會顯示搜尋結果。若要取得類型 的面向清單`EVENT`，請導覽至 AWS CLI 輸出的「FacetResults」區段，以查看可篩選面向及其計數的清單。例如，其中一個面向是「冠軍聯盟」。
**注意**  
您可以選擇您在 中[建立 Amazon Kendra 索引](tutorial-search-metadata-create-index-ingest.md#tutorial-search-metadata-create-index)為 `DocumentAttributeKey`值建立的任何索引欄位`EVENT`，而不是 。

1. 若要執行相同的搜尋，但只依包含「冠軍聯盟」的結果進行篩選，請使用[查詢](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kendra/query.html)命令：

------
#### [ Linux ]

   ```
   aws kendra query \
           --index-id kendra-index-id \
           --query-text "Soccer matches" \
           --attribute-filter '{"ContainsAny":{"Key":"EVENT","Value":{"StringListValue":["Champions League"]}}}' \
           --region aws-region
   ```

   其中：
   + *kendra-index-id* 是您儲存的 `kendra-index-id`，
   + *aws-region* 是您的 AWS 區域。

------
#### [ macOS ]

   ```
   aws kendra query \
           --index-id kendra-index-id \
           --query-text "Soccer matches" \
           --attribute-filter '{"ContainsAny":{"Key":"EVENT","Value":{"StringListValue":["Champions League"]}}}' \
           --region aws-region
   ```

   其中：
   + *kendra-index-id* 是您儲存的 `kendra-index-id`，
   + *aws-region* 是您的 AWS 區域。

------
#### [ Windows ]

   ```
   aws kendra query ^
           --index-id kendra-index-id ^
           --query-text "Soccer matches" ^
           --attribute-filter '{"ContainsAny":{"Key":"EVENT","Value":{"StringListValue":["Champions League"]}}}' ^
           --region aws-region
   ```

   其中：
   + *kendra-index-id* 是您儲存的 `kendra-index-id`，
   + *aws-region* 是您的 AWS 區域。

------

    AWS CLI 會顯示篩選後的搜尋結果。