

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 관리형 지식 기반에 대한 쿼리 구성 및 사용자 지정
<a name="kb-managed-test-config"></a>

검색을 구성하고 사용자 지정하여 결과의 관련성을 더욱 개선할 수 있습니다. 예를 들어, 문서 메타데이터 필드/속성에 필터를 적용하여 가장 최근에 업데이트된 문서나 최근 수정 시간이 있는 문서를 사용하도록 할 수 있습니다.

**참고**  
다음 구성은 모두 비정형 데이터 소스에만 적용됩니다.

콘솔 또는 API에서 이러한 구성이 어떻게 적용되는지 자세히 알아보려면 다음 주제를 살펴보세요.

## 소스 청크 수
<a name="kb-managed-test-config-number"></a>

지식 기반을 쿼리하면 Amazon Bedrock은 기본적으로 최대 5개의 결과를 반환합니다. 각 결과는 소스 청크에 해당합니다.

**참고**  
이 파라미터는 반환할 최대 결과 수를 설정하므로 응답의 실제 결과 수는 지정된 `numberOfResults` 값보다 작을 수 있습니다. 청킹 전략에 대한 계층적 청킹을 구성한 경우 `numberOfResults` 파라미터는 지식 기반에서 검색할 하위 청크 수에 매핑됩니다. 동일한 상위 청크를 공유하는 하위 청크는 최종 응답에서 상위 청크로 대체되므로 반환되는 결과 수는 요청된 양보다 적을 수 있습니다.

반환할 최대 결과 수를 수정하려면 원하는 방법에 해당하는 탭을 선택하고 다음 단계를 따릅니다.

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

[지식 기반 쿼리 및 데이터 검색](kb-test-retrieve.md) 섹션의 콘솔 단계를 따릅니다. **구성** 창에서 **소스 청크** 섹션을 확장하고 반환할 최대 소스 청크 수를 입력합니다.

------
#### [ API ]

[Retrieve](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_Retrieve.html) 또는 [RetrieveAndGenerate](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrieveAndGenerate.html) 요청을 수행할 때 [KnowledgeBaseRetrievalConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_KnowledgeBaseRetrievalConfiguration.html) 객체에 매핑된 `retrievalConfiguration` 필드를 포함합니다. 이 필드의 위치를 확인하려면 API 참조의 [Retrieve](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_Retrieve.html) 및 [RetrieveAndGenerate](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrieveAndGenerate.html) 요청 본문을 참조하세요.

다음 JSON 객체는 반환할 최대 결과 수를 설정하는 데 [KnowledgeBaseRetrievalConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_KnowledgeBaseRetrievalConfiguration.html) 객체에 필요한 최소 필드를 보여줍니다.

```
"retrievalConfiguration": {
    "vectorSearchConfiguration": {
        "numberOfResults": number
    }
}
```

`numberOfResults` 필드에 반환할 검색된 결과의 최대 수를 지정합니다(허용된 값 범위는 [KnowledgeBaseRetrievalConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_KnowledgeBaseRetrievalConfiguration.html)의 `numberOfResults` 필드 참조).

------

## 수동 메타데이터 필터링
<a name="kb-managed-test-config-filters"></a>

필터를 문서 필드/속성에 적용하여 응답의 관련성을 더욱 개선할 수 있습니다. 데이터 소스에는 필터링할 문서 메타데이터 속성/필드가 포함될 수 있으며 임베딩에 포함할 필드를 지정할 수 있습니다.

**관리형 지식 기반 고려 사항**  
관리형 지식 기반에서 메타데이터 필터링을 사용하는 경우:  
`startsWith` 및 `stringContains` 메타데이터 필터는 지원되지 않습니다. 대신 `equals`, `greaterThan`, `lessThan``in`, 또는 `notIn` 연산자를 사용합니다.
범위 연산자(`greaterThan`, `greaterThanOrEquals``lessThan`, 및 `lessThanOrEquals`)는 숫자 또는 날짜-시간 값을 허용합니다. 날짜-시간을 기준으로 필터링하려면 값을 ISO-8601 오프셋 날짜-시간 형식의 문자열로 제공합니다. 와 같은 전체 오프셋 양식을 사용합니다`2026-03-02T19:02:18Z`. 범위 연산자는 관리형 지식 기반에 대해서만 날짜-시간 문자열 값을 지원합니다.
사용자 지정 지식 기반의 경우 접두사가 인 메타데이터 필드는 서비스에 예약`x-amz-bedrock`됩니다. 완전 관리형 지식 기반의 경우 예약된 메타데이터 필드는 밑줄 접두사(예: , `_source_uri``_data_source_id`)를 사용합니다. 두 지식 기반 유형 모두 예약된 메타데이터 필드를 재정의할 수 없습니다.

예를 들어 'epoch\_modification\_time'은 문서가 마지막으로 업데이트된 1970년 1월 1일(UTC) 이후 초 단위의 시간을 나타냅니다. 'epoch\_modification\_time'이 특정 수*보다 큰* 최신 데이터를 기준으로 필터링할 수 있습니다. 이러한 최신 문서를 쿼리에 사용할 수 있습니다.

지식 기반을 쿼리할 때 필터를 사용하려면 지식 기반이 다음 요구 사항을 충족하는지 확인합니다.
+ 데이터 소스 커넥터를 구성할 때 대부분의 커넥터는 문서의 기본 메타데이터 필드를 크롤링합니다. Amazon S3 버킷을 데이터 소스로 사용하는 경우, 버킷에는 연결된 파일 또는 문서에 대해 하나 이상의 `fileName.extension.metadata.json`이 포함되어야 합니다. 메타데이터 파일 구성에 대한 자세한 내용은 [연결 구성](s3-data-source-connector.md#configuration-s3-connector)의 **문서 메타데이터 필드**를 참조하세요.
+ 지식 베이스의 벡터 인덱스가 Amazon OpenSearch Serverless 벡터 스토어에 있는 경우, 벡터 인덱스가 `faiss` 엔진으로 구성되어 있는지 확인합니다. 벡터 인덱스가 `nmslib` 엔진으로 구성되어 있다면 다음 중 하나를 수행해야 합니다.
  + 콘솔에서 [새 지식 기반을 만들고](knowledge-base-create.md) Amazon Bedrock이 Amazon OpenSearch Serverless에서 벡터 인덱스를 자동으로 만들도록 합니다.
  + 벡터 스토어에서 [또 다른 벡터 인덱스를 만들고](knowledge-base-setup.md) **엔진**으로 `faiss`를 선택합니다. 그런 다음 [새 지식 기반을 만들고](knowledge-base-create.md) 새 벡터 인덱스를 지정합니다.
+ 지식 기반이 S3 벡터 버킷에서 벡터 인덱스를 사용하는 경우 `startsWith` 및 `stringContains` 필터를 사용할 수 없습니다.
+ Amazon Aurora 데이터베이스 클러스터의 기존 벡터 인덱스에 메타데이터를 추가하는 경우 사용자 지정 메타데이터 열의 필드 이름을 제공하여 모든 메타데이터를 단일 열에 저장하는 것이 좋습니다. [데이터 수집](kb-data-source-sync-ingest.md) 중에 이 열은 데이터 소스의 메타데이터 파일에 있는 모든 정보를 채우는 데 사용됩니다. 이 필드를 제공하기로 선택한 경우 이 열에 인덱스를 생성해야 합니다.
  + 콘솔에서 [새 지식 기반을 생성하고](knowledge-base-create.md) Amazon Bedrock이 Amazon Aurora 데이터베이스를 구성하도록 하면 자동으로 단일 열을 생성하고 메타데이터 파일의 정보로 채웁니다.
  + 벡터 스토어에서 [다른 벡터 인덱스를 생성](knowledge-base-setup.md)하도록 선택한 경우 메타데이터 파일의 정보를 저장할 사용자 지정 메타데이터 필드 이름을 제공해야 합니다. 이 필드 이름을 제공하지 않는 경우 파일의 각 메타데이터 속성에 대한 열을 생성하고 데이터 유형(텍스트, 숫자 또는 부울)을 지정해야 합니다. 예를 들어, `genre` 속성이 데이터 소스에 있는 경우 `genre`라는 열을 추가하고 `text`를 데이터 유형으로 지정합니다. 수집 과정에서 이러한 별도의 열은 해당 속성 값으로 채워집니다.

데이터 소스에 PDF 문서가 있고 벡터 스토어에 Amazon OpenSearch Serverless 또는 Amazon Aurora를 사용하는 경우: Amazon Bedrock 지식 기반은 문서 페이지 번호를 생성하고 이를 *x-amz-bedrock-kb-document-page-number*라는 메타데이터 필드/속성에 저장합니다. 문서에 청킹을 선택하지 않으면 메타데이터 필드에 저장된 페이지 번호가 지원되지 않습니다.

다음 필터링 연산자를 사용하여 쿼리에서 결과를 필터링할 수 있습니다.


**필터링 연산자**  

| 연산자 | 콘솔 | API 필터 이름 | 지원되는 속성 데이터 유형 | 필터링 결과 | 
| --- | --- | --- | --- | --- | 
| 같음 | = | [같음](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrievalFilter.html#bedrock-Type-agent-runtime_RetrievalFilter-equals) | 문자열, 숫자, 부울 | 속성이 사용자가 제공한 값과 일치합니다. | 
| 같지 않음 | \!= | [notEquals](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrievalFilter.html#bedrock-Type-agent-runtime_RetrievalFilter-notEquals) | 문자열, 숫자, 부울 | 속성이 사용자가 제공한 값과 일치하지 않습니다. | 
| 보다 큼 | > | [greaterThan](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrievalFilter.html#bedrock-Type-agent-runtime_RetrievalFilter-greaterThan) | number | 속성이 사용자가 제공한 값보다 큽니다. | 
| 크거나 같음 | >= | [greaterThanOrEquals](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrievalFilter.html#bedrock-Type-agent-runtime_RetrievalFilter-greaterThanOrEquals) | number | 속성이 사용자가 제공한 값보다 크거나 같습니다. | 
| 보다 작음 | < | [lessThan](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrievalFilter.html#bedrock-Type-agent-runtime_RetrievalFilter-lessThan) | number | 속성이 사용자가 제공한 값보다 작습니다. | 
| 작거나 같음 | <= | [lessThanOrEquals](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrievalFilter.html#bedrock-Type-agent-runtime_RetrievalFilter-lessThanOrEquals) | number | 속성이 사용자가 제공한 값보다 작거나 같습니다. | 
| 있음 | : | [in](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrievalFilter.html#bedrock-Type-agent-runtime_RetrievalFilter-in) | 문자열 목록 | 속성이 사용자가 제공한 목록에 있습니다(현재 Amazon OpenSearch Serverless 및 Neptune Analytics GraphRAG 벡터 스토어에서 가장 잘 지원됨) | 
| 없음 | \!: | [notIn](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrievalFilter.html#bedrock-Type-agent-runtime_RetrievalFilter-notIn) | 문자열 목록 | 속성이 사용자가 제공한 목록에 없습니다(현재 Amazon OpenSearch Serverless 및 Neptune Analytics GraphRAG 벡터 스토어에서 가장 잘 지원됨) | 
| 문자열 나열 | 사용할 수 없음 | [stringContains](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrievalFilter.html#bedrock-Type-agent-runtime_RetrievalFilter-stringContains) | 문자열 | 속성은 문자열이어야 합니다. 속성 이름은 키와 일치하며 값이 하위 문자열로 제공한 값을 포함하는 문자열이거나 하위 문자열로 제공한 값을 포함하는 멤버가 있는 목록입니다(현재 Amazon OpenSearch Serverless 벡터 스토어에서 가장 잘 지원됨. Neptune Analytics GraphRAG 벡터 스토어는 문자열 변형을 지원하지만 이 필터의 목록 변형은 지원하지 않습니다). | 
| 목록 나열 | 사용할 수 없음 | [listContains](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrievalFilter.html#bedrock-Type-agent-runtime_RetrievalFilter-listContains) | 문자열 | 속성은 반드시 문자열 목록이어야 합니다. 속성 이름은 키와 일치하며 값이 멤버 중 하나로 제공한 값이 포함된 목록입니다(현재 Amazon OpenSearch Serverless 벡터 스토어에서 가장 잘 지원됨). | 

필터링 연산자를 결합하려면 다음 논리 연산자를 사용할 수 있습니다.


**논리 연산자**  

| 연산자 | 콘솔 | API 필터 필드 이름 | 필터링 결과 | 
| --- | --- | --- | --- | 
| 및 | 및 | [andAll](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrievalFilter.html#bedrock-Type-agent-runtime_RetrievalFilter-andAll) | 결과가 그룹의 모든 필터링 표현식을 충족합니다. | 
| 또는 | 또는 | [orAll](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrievalFilter.html#bedrock-Type-agent-runtime_RetrievalFilter-orAll) | 결과가 그룹의 필터링 표현식 중 하나 이상을 충족합니다. | 

메타데이터를 사용하여 결과를 필터링하는 방법을 알아보려면 원하는 방법에 해당하는 탭을 선택하고 다음 단계를 따릅니다.

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

[지식 기반 쿼리 및 데이터 검색](kb-test-retrieve.md) 섹션의 콘솔 단계를 따릅니다. **구성** 창을 열면 **필터 섹션**이 표시됩니다. 다음 절차에서는 다양한 사용 사례를 설명합니다.
+ 필터를 추가하려면 상자에 메타데이터 속성, 필터링 연산자, 값을 입력하여 필터링 표현식을 만듭니다. 표현식의 각 부분은 공백으로 구분합니다. **Enter** 키를 눌러 필터를 추가합니다.

  허용되는 필터링 연산자 목록은 위의 **필터링 연산자** 테이블을 참조하세요. 메타데이터 속성 뒤에 공백을 추가할 때 필터링 연산자 목록을 확인할 수도 있습니다.
**참고**  
문자열은 따옴표로 묶어야 합니다.

  예를 들어, 값이 `"entertainment"`인 `genre` 메타데이터 속성이 포함된 소스 문서의 결과를 필터링하려면 **genre = "entertainment"** 필터를 추가합니다.  
![하나의 필터를 추가합니다.](https://docs.aws.amazon.com/ko_kr/bedrock/latest/userguide/images/kb/filter-one.png)
+ 또 다른 필터를 추가하려면 상자에 다른 필터링 표현식을 입력하고 **Enter** 키를 누릅니다. 그룹에는 최대 5개의 필터를 추가할 수 있습니다.  
![또 다른 필터를 추가합니다.](https://docs.aws.amazon.com/ko_kr/bedrock/latest/userguide/images/kb/filter-more.png)
+ 기본적으로 쿼리는 사용자가 제공하는 모든 필터링 표현식을 충족하는 결과를 반환합니다. 필터링 표현식 중 하나 이상을 충족하는 결과를 반환하려면 두 필터링 연산 사이에 있는 **and** 드롭다운 메뉴를 선택하고 **or**를 선택합니다.  
![필터 사이의 논리 연산을 변경합니다.](https://docs.aws.amazon.com/ko_kr/bedrock/latest/userguide/images/kb/filter-logical.png)
+ 여러 논리 연산자를 결합하려면 **\+ 그룹 추가**를 선택하여 필터 그룹을 추가합니다. 새 그룹에 필터링 표현식을 입력합니다. 최대 5개의 필터 그룹을 추가할 수 있습니다.  
![필터 그룹을 추가하여 여러 논리 연산자를 결합합니다.](https://docs.aws.amazon.com/ko_kr/bedrock/latest/userguide/images/kb/filter-group.png)
+ 모든 필터링 그룹 사이에 사용되는 논리 연산자를 변경하려면 두 필터 그룹 사이의 **AND** 드롭다운 메뉴를 선택하고 **OR**를 선택합니다.  
![필터 그룹 사이의 논리 연산을 변경합니다.](https://docs.aws.amazon.com/ko_kr/bedrock/latest/userguide/images/kb/filter-group-logical.png)
+ 필터를 편집하려면 필터를 선택하고 필터링 연산을 수정한 다음 **적용**을 선택합니다.  
![필터를 편집합니다.](https://docs.aws.amazon.com/ko_kr/bedrock/latest/userguide/images/kb/filter-edit.png)
+ 필터 그룹을 제거하려면 그룹 옆의 휴지통 아이콘(![Trash can icon representing a delete action.](https://docs.aws.amazon.com/ko_kr/bedrock/latest/userguide/images/icons/trash.png))을 선택합니다. 필터를 제거하려면 필터 옆의 삭제 아이콘(![Close or cancel icon represented by an "X" symbol.](https://docs.aws.amazon.com/ko_kr/bedrock/latest/userguide/images/icons/close.png))을 선택합니다.  
![필터 또는 필터 그룹을 삭제합니다.](https://docs.aws.amazon.com/ko_kr/bedrock/latest/userguide/images/kb/filter-delete.png)

다음 이미지는 장르가 **"entertainment"**이고 **2018**년 이후에 작성된 모든 문서와 장르가 **"cooking"** 또는 **"sports"**이고 작성자가 **"C"**로 시작하는 문서를 반환하는 필터 구성의 예제를 보여줍니다.

![필터 구성의 예제입니다.](https://docs.aws.amazon.com/ko_kr/bedrock/latest/userguide/images/kb/filter-example.png)


------
#### [ API ]

[Retrieve](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_Retrieve.html) 또는 [RetrieveAndGenerate](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrieveAndGenerate.html) 요청을 수행할 때 [KnowledgeBaseRetrievalConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_KnowledgeBaseRetrievalConfiguration.html) 객체에 매핑된 `retrievalConfiguration` 필드를 포함합니다. 이 필드의 위치를 확인하려면 API 참조의 [Retrieve](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_Retrieve.html) 및 [RetrieveAndGenerate](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrieveAndGenerate.html) 요청 본문을 참조하세요.

다음 JSON 객체는 다양한 사용 사례에 대한 필터를 설정하는 데 [KnowledgeBaseRetrievalConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_KnowledgeBaseRetrievalConfiguration.html) 객체에 필요한 최소 필드를 보여줍니다.

1. 하나의 필터링 연산자를 사용합니다(위의 **필터링 연산자** 테이블 참조).

   ```
   "retrievalConfiguration": {
       "vectorSearchConfiguration": {
           "filter": {
               "{{<filter-type>}}": {
                   "key": "string",
                   "value": "string" | number | boolean | ["string", "string", ...]
               }
           }
       }
   }
   ```

1. 논리 연산자(위의 **논리 연산자** 테이블 참조)를 사용하여 최대 5개까지 결합합니다.

   ```
   "retrievalConfiguration": {
       "vectorSearchConfiguration": {
           "filter": {
               "{{andAll | orAll}}": [
                   "{{<filter-type>}}": {
                       "key": "string",
                       "value": "string" | number | boolean | ["string", "string", ...]
                   },
                   "{{<filter-type>}}": {
                       "key": "string",
                       "value": "string" | number | boolean | ["string", "string", ...]
                   },
                   ...
               ]
           }
       }
   }
   ```

1. 논리 연산자를 사용하여 최대 5개의 필터링 연산자를 필터 그룹으로 결합하고, 두 번째 논리 연산자를 사용하여 해당 필터 그룹을 다른 필터링 연산자와 결합합니다.

   ```
   "retrievalConfiguration": {
       "vectorSearchConfiguration": {
           "filter": {
               "{{andAll | orAll}}": [
                   "{{andAll | orAll}}": [
                       "{{<filter-type>}}": {
                           "key": "string",
                           "value": "string" | number | boolean | ["string", "string", ...]
                       },
                       "{{<filter-type>}}": {
                           "key": "string",
                           "value": "string" | number | boolean | ["string", "string", ...]
                       },
                       ...
                   ],
                   "{{<filter-type>}}": {
                       "key": "string",
                       "value": "string" | number | boolean | ["string", "string", ...]
                   }
               ]
           }
       }
   }
   ```

1. 최대 5개의 필터 그룹을 다른 논리 연산자 내에 임베딩하여 결합합니다. 한 단계의 임베딩을 생성할 수 있습니다.

   ```
   "retrievalConfiguration": {
       "vectorSearchConfiguration": {
           "filter": {
               "{{andAll | orAll}}": [
                   "{{andAll | orAll}}": [
                       "{{<filter-type>}}": {
                           "key": "string",
                           "value": "string" | number | boolean | ["string", "string", ...]
                       },
                       "{{<filter-type>}}": {
                           "key": "string",
                           "value": "string" | number | boolean | ["string", "string", ...]
                       },
                       ...
                   ],
                   "{{andAll | orAll}}": [
                       "{{<filter-type>}}": {
                           "key": "string",
                           "value": "string" | number | boolean | ["string", "string", ...]
                       },
                       "{{<filter-type>}}": {
                           "key": "string",
                           "value": "string" | number | boolean | ["string", "string", ...]
                       },
                       ...
                   ]
               ]
           }
       }
   }
   ```

다음 테이블은 사용할 수 있는 필터 유형을 설명합니다.



| Field | 지원되는 값 데이터 유형 | 필터링 결과 | 
| --- | --- | --- | 
| equals | 문자열, 숫자, 부울 | 속성이 사용자가 제공한 값과 일치합니다. | 
| notEquals | 문자열, 숫자, 부울 | 속성이 사용자가 제공한 값과 일치하지 않습니다. | 
| greaterThan | number | 속성이 사용자가 제공한 값보다 큽니다. | 
| greaterThanOrEquals | number | 속성이 사용자가 제공한 값보다 크거나 같습니다. | 
| lessThan | number | 속성이 사용자가 제공한 값보다 작습니다. | 
| lessThanOrEquals | number | 속성이 사용자가 제공한 값보다 작거나 같습니다. | 
| in | 문자열 목록 | 속성이 사용자가 제공한 목록에 있습니다. | 
| notIn | 문자열 목록 | 속성이 사용자가 제공한 목록에 없습니다. | 
| startsWith | 문자열 | 속성이 사용자가 제공한 문자열로 시작됩니다(Amazon OpenSearch Serverless 벡터 스토어에 대해서만 지원) | 

필터 유형을 결합하려면 다음 논리 연산자 중 하나를 사용할 수 있습니다.



| Field | 매핑 | 필터링 결과 | 
| --- | --- | --- | 
| andAll | 최대 5개의 필터 유형 목록 | 결과가 그룹의 모든 필터링 표현식을 충족합니다. | 
| orAll | 최대 5개의 필터 유형 목록 | 결과가 그룹의 필터링 표현식 중 하나 이상을 충족합니다. | 

예제는 [쿼리 보내기 및 필터(Retrieve) 포함](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_Retrieve.html#API_agent-runtime_Retrieve_Example_2) 및 [쿼리 보내기 및 필터(RetrieveAndGenerate) 포함](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrieveAndGenerate.html#API_agent-runtime_RetrieveAndGenerate_Example_2)을 참조하세요.

------

## 가드레일
<a name="kb-managed-test-config-guardrails"></a>

사용 사례 및 책임 있는 AI 정책을 위한 지식 기반 보호 장치를 구현할 수 있습니다. 다양한 사용 사례에 맞게 조정된 여러 가드레일을 만들고 이를 여러 요청 및 응답 조건에 적용하여 일관된 사용자 환경을 제공하고 지식 기반 전반에 안전 제어를 표준화할 수 있습니다. 거부된 주제와 콘텐츠 필터를 구성하여 모델 입력 및 응답에서 바람직하지 않은 주제와 유해한 콘텐츠를 차단할 수 있습니다. 자세한 내용은 [Amazon Bedrock Guardrails를 사용하여 유해한 콘텐츠 감지 및 필터링](guardrails.md) 섹션을 참조하세요.

**참고**  
현재 Claude 3 Sonnet 및 Haiku에서는 가드레일을 지식 기반에 대한 컨텍스트 근거와 함께 사용할 수 없습니다.

일반적인 프롬프트 엔지니어링 지침은 [프롬프트 엔지니어링 개념](prompt-engineering-guidelines.md) 섹션을 참조하세요.

원하는 방법의 탭을 선택한 후 다음 단계를 따릅니다.

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

[지식 기반 쿼리 및 데이터 검색](kb-test-retrieve.md) 섹션의 콘솔 단계를 따릅니다. 테스트 창에서 **응답 생성**을 켭니다. 그런 다음 **구성** 창에서 **가드레일** 섹션을 확장합니다.

1. **가드레일** 섹션에서 가드레일의 **이름**과 **버전**을 선택합니다. 선택한 가드레일 및 버전의 세부 정보를 보려면 **보기**를 선택합니다.

   또는 **가드레일** 링크를 선택하여 새 가드레일을 만들 수 있습니다.

1. 편집을 마쳤으면 **변경 사항 저장**을 선택합니다. 저장하지 않고 종료하려면 **변경 사항 취소**를 선택합니다.

------
#### [ API ]

[RetrieveAndGenerate](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrieveAndGenerate.html) 요청을 수행할 때 `generationConfiguration`에 `guardrailConfiguration` 필드를 포함시켜 요청에 가드레일을 사용할 수 있습니다. 이 필드의 위치를 보려면 API 참조의 [RetrieveAndGenerate](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrieveAndGenerate.html) 요청 본문을 참조하세요.

다음 JSON 객체는 [GenerationConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_GenerationConfiguration.html)에서 `guardrailConfiguration`을 설정하는 데 필요한 최소 필드를 보여줍니다.

```
"generationConfiguration": {
    "guardrailConfiguration": {
        "guardrailId": "{{string}}",
        "guardrailVersion": "{{string}}"
    }
}
```

선택한 가드레일의 `guardrailId` 및 `guardrailVersion`을 지정합니다.

------

## 순위 바꾸기
<a name="kb-managed-test-config-rerank"></a>

리랭커 모델을 사용하여 지식 기반 쿼리의 결과 순위를 다시 매길 수 있습니다. [지식 기반 쿼리 및 데이터 검색](kb-test-retrieve.md) 섹션의 콘솔 단계를 따릅니다. **구성** 창을 열 때 **순위 조정** 섹션을 확장합니다. 리랭커 모델을 선택하고, 필요한 경우 권한을 업데이트하고, 추가 옵션을 수정합니다. 프롬프트를 입력하고 **실행**을 선택하여 순위를 다시 매긴 후 결과를 테스트합니다.