

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

# 建立自訂文件欄位
<a name="custom-attributes"></a>

**注意**  
功能支援會因索引類型和正在使用的搜尋 API 而有所不同。若要查看您正在使用的索引類型和搜尋 API 是否支援此功能，請參閱[搜尋索引](https://docs.aws.amazon.com/kendra/latest/dg/hiw-index.html#index-searching)。

您可以在 Amazon Kendra 索引中為文件建立自訂屬性或欄位。例如，您可以建立名為 "Department" 的自訂欄位或屬性，其值為 "HR"、"Sales" 和 "Manufacturing"。如果您將這些自訂欄位或屬性映射到您的 Amazon Kendra 索引，您可以使用它們來篩選搜尋結果，以包含「HR」部門屬性的文件。

您必須先在索引中建立 欄位，才能使用自訂欄位或屬性。使用主控台編輯資料來源欄位映射以新增自訂欄位，或使用 [UpdateIndex](https://docs.aws.amazon.com/kendra/latest/APIReference/API_UpdateIndex.html) API 建立索引欄位。建立欄位後，就無法變更欄位資料類型。

對於大多數資料來源，您可以將外部資料來源中的欄位映射到 中的對應欄位 Amazon Kendra。如需詳細資訊，請參閱[映射資料來源欄位](https://docs.aws.amazon.com/kendra/latest/dg/field-mapping.html)。對於 S3 資料來源，您可以使用 JSON 中繼資料檔案建立自訂欄位或屬性。

您最多可以建立 500 個自訂欄位或屬性。

您也可以使用 Amazon Kendra 預留或通用欄位。如需詳細資訊，請參閱[文件屬性或欄位](https://docs.aws.amazon.com/kendra/latest/dg/hiw-document-attributes.html)。

**Topics**
+ [更新自訂文件欄位](#update-attributes)

## 更新自訂文件欄位
<a name="update-attributes"></a>

使用 `UpdateIndex` API，您可以使用 `DocumentMetadataConfigurationUpdates` 參數新增自訂欄位或屬性。

下列 JSON 範例示範如何使用 `DocumentMetadataConfigurationUpdates` 將名為「部門」的欄位新增至索引。

```
"DocumentmetadataConfigurationUpdates": [
   {
       "Name": "Department",
       "Type": "STRING_VALUE"
   }
]
```

下列各節包含使用 [BatchPutDocument](https://docs.aws.amazon.com/kendra/latest/APIReference/API_BatchPutDocument.html) 為 Amazon S3 資料來源新增自訂屬性或欄位的範例。

**Topics**
+ [使用 BatchPutDocument API 新增自訂屬性或欄位](#custom-attributes-batch)
+ [將自訂屬性或欄位新增至 Amazon S3 資料來源](#custom-attributes-s3)

### 使用 BatchPutDocument API 新增自訂屬性或欄位
<a name="custom-attributes-batch"></a>

當您使用 [BatchPutDocument](https://docs.aws.amazon.com/kendra/latest/APIReference/API_BatchPutDocument.html) API 將文件新增至索引時，您可以指定自訂欄位或屬性做為 的一部分`Attributes`。您可以在呼叫 API 時新增多個欄位或屬性。您最多可以建立 500 個自訂欄位或屬性。下列範例顯示新增「部門」欄位至文件的自訂屬性設定方式。

```
"Attributes": 
    {
        "Department": "HR",
        "_category": "Vacation policy"
    }
```

### 將自訂屬性或欄位新增至 Amazon S3 資料來源
<a name="custom-attributes-s3"></a>

當您使用 S3 儲存貯體做為索引的資料來源時，您可以將中繼資料新增至具有配套中繼資料檔案的文件。中繼資料 JSON 檔案須放置於與文件相對應、層級平行的目錄結構中。如需詳細資訊，請參閱 [S3 文件中繼資料](https://docs.aws.amazon.com/kendra/latest/dg/s3-metadata.html)。

自訂欄位或屬性可在 `Attributes` JSON 結構中進行設定。您最多可以建立 500 個自訂欄位或屬性。例如，下列範例使用 `Attributes` 來定義三個自訂欄位或屬性，以及一個預留欄位。

```
"Attributes": {
        "brand": "Amazon Basics",
        "price": 1595,
        "_category": "sports",
        "subcategories": ["outdoors", "electronics"]
    }
```

下列步驟會逐步引導您將自訂屬性新增至 Amazon S3 資料來源。

**Topics**
+ [步驟 1：建立 Amazon Kendra 索引](#custom-attributes-s3-1)
+ [步驟 2：更新索引以新增自訂文件欄位](#custom-attributes-s3-2)
+ [步驟 3：建立 Amazon S3 資料來源，並將資料來源欄位映射至自訂屬性](#custom-attributes-s3-3)

#### 步驟 1：建立 Amazon Kendra 索引
<a name="custom-attributes-s3-1"></a>

依照中的步驟[建立 索引](create-index.md)建立 Amazon Kendra 索引。

#### 步驟 2：更新索引以新增自訂文件欄位
<a name="custom-attributes-s3-2"></a>

建立索引之後，您可以將欄位新增至索引。下列程序說明如何使用 主控台和 CLI 將欄位新增至索引。

------
#### [ Console ]

**建立索引欄位**

1. 請確定您[已建立索引](https://docs.aws.amazon.com/kendra/latest/dg/create-index.html)。

1. 然後，從左側導覽功能表中，從**資料管理**中選擇**面向定義**。

1. 在**索引欄位設定指南**的**索引欄位中**，選擇**新增欄位**以新增自訂欄位。

1. 在**新增索引欄位**對話方塊中，執行下列動作：
   + **欄位名稱** – 新增欄位名稱。
   + **資料類型** – 選取資料類型，無論是**字串**、**字串清單**或**日期**。
   + **用量類型** – 選取用量類型，無論是 **Facetable**、**Searchable**、**Displayable** 和 **Sortable**。

     然後，選取**新增**。

   針對您要映射的任何其他欄位重複最後一個步驟。

------
#### [ CLI ]

```
aws kendra update-index  \
--region $region \
--endpoint-url $endpoint \
--application-id $applicationId \
--index-id $indexId  \
--document-metadata-configuration-updates \
"[
    {
        "Name": "string",
        "Type": "STRING_VALUE"|"STRING_LIST_VALUE"|"LONG_VALUE"|"DATE_VALUE",
        "Relevance": {
            "Freshness": true|false,
            "Importance": integer,
            "Duration": "string",
            "RankOrder": "ASCENDING"|"DESCENDING",
            "ValueImportanceMap": {"string": integer
            ...}
    },
    "Search": {
        "Facetable": true|false,
        "Searchable": true|false,
        "Displayable": true|false,
        "Sortable": true|false
        }
    }
...
]"
```

------

#### 步驟 3：建立 Amazon S3 資料來源，並將資料來源欄位映射至自訂屬性
<a name="custom-attributes-s3-3"></a>

若要建立 Amazon S3 資料來源並對應欄位，請遵循 中的指示[Amazon S3](data-source-s3.md)。

如果您使用的是 API，請在使用 [CreateDataSource](https://docs.aws.amazon.com/kendra/latest/APIReference/API_CreateDataSource.html) API `configuration`時使用 下的 `fieldMappings` 屬性。

如需資料來源欄位映射方式的概觀，請參閱 [對應資料來源欄位](field-mapping.md)。