기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
쿼리 구성
지식 베이스를 쿼리하여 검색 및 응답 생성을 사용자 지정할 때 구성을 수정할 수 있습니다. 구성 및 콘솔 또는 API에서 구성을 수정하는 방법에 대해 자세히 알아보려면 다음 항목 중에서 선택하십시오.
검색 유형은 지식창고의 데이터 소스를 쿼리하는 방법을 정의합니다. 가능한 검색 유형은 다음과 같습니다.
-
기본값 — Amazon Bedrock이 검색 전략을 결정합니다.
-
하이브리드 — 검색 벡터 임베딩 (시맨틱 검색) 과 원시 텍스트 검색을 결합합니다. 하이브리드 검색은 현재 필터링 가능한 텍스트 필드가 포함된 Amazon OpenSearch Serverless 벡터 스토어에서만 지원됩니다. 다른 벡터 스토어를 사용하거나 Amazon OpenSearch Serverless 벡터 스토어에 필터링 가능한 텍스트 필드가 없는 경우 쿼리는 시맨틱 검색을 사용합니다.
-
시맨틱 — 벡터 임베딩만 검색합니다.
검색 유형을 정의하는 방법을 알아보려면 선택한 방법에 해당하는 탭을 선택하고 단계를 따르세요.
쿼리 분해는 복잡한 쿼리를 더 작고 관리하기 쉬운 하위 쿼리로 나누는 데 사용되는 기술입니다. 이 접근 방식은 특히 초기 쿼리가 다각적이거나 너무 광범위할 때 더 정확하고 관련성 높은 정보를 검색하는 데 도움이 될 수 있습니다. 이 옵션을 활성화하면 지식 베이스에 대해 여러 쿼리가 실행되어 최종 응답이 더 정확해질 수 있습니다.
예를 들어, “2022년 FIFA 월드컵에서 누가 더 높은 득점을 기록했나요?” 와 같은 질문의 경우 , Amazon Bedrock 지식 베이스는 최종 답변을 생성하기 전에 먼저 다음과 같은 하위 쿼리를 생성할 수 있습니다.
-
아르헨티나는 2022 FIFA 월드컵 결승전에서 몇 골을 넣었습니까?
-
2022 FIFA 월드컵 결승전에서 프랑스는 몇 골을 넣었나요?
정보 검색을 기반으로 응답을 생성할 때 추론 파라미터를 사용하여 추론 중에 모델의 동작을 더 잘 제어하고 모델의 출력에 영향을 미칠 수 있습니다. 추론 파라미터를 수정하는 방법을 알아보려면 선택한 방법에 해당하는 탭을 선택하고 단계를 따르십시오.
지식 베이스를 쿼리하면 Amazon Bedrock은 기본적으로 응답에 최대 5개의 결과를 반환합니다. 각 결과는 소스 청크에 해당합니다. 반환할 최대 결과 수를 수정하려면 선택한 방법에 해당하는 탭을 선택하고 단계를 따르세요.
데이터 소스에는 필터링 기준으로 사용할 문서 메타데이터 속성/필드 (예: “last_update” 또는 현재 날짜로부터 문서가 마지막으로 업데이트된 이후 경과한 일수) 가 포함될 수 있습니다. 지식창고를 쿼리할 때 필터를 사용하려면 지식창고가 다음 요구사항을 충족하는지 확인하세요.
-
데이터 원본 커넥터를 구성할 때 대부분의 커넥터는 문서의 기본 메타데이터 필드를 크롤링합니다. Amazon S3 버킷을 데이터 원본으로 사용하는 경우, 버킷에는 연결된 원본 문서와 이름이 같은
.metadata.json
파일이 하나 이상 포함되어야 합니다. -
지식창고의 벡터 인덱스가 Amazon OpenSearch Serverless 벡터 스토어에 있는 경우 벡터 인덱스가
faiss
엔진으로 구성되어 있는지 확인하십시오. 벡터 인덱스가nmslib
엔진으로 구성된 경우 다음 중 하나를 수행해야 합니다.-
콘솔에서 새 지식 베이스를 생성하면 Amazon Bedrock이 Amazon OpenSearch 서버리스에서 자동으로 벡터 인덱스를 생성하도록 할 수 있습니다.
-
벡터 저장소에 다른 벡터 인덱스를 생성하고
faiss
엔진으로 선택합니다. 그런 다음 새 지식 베이스를 만들고 새 벡터 색인을 지정합니다.
-
쿼리 시 다음 필터링 연산자를 사용하여 결과를 필터링할 수 있습니다.
필터링 연산자 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
연산자 | 콘솔 | API 필터 이름 | 지원되는 속성 데이터 유형 | 필터링된 결과 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
같음 | = | 같음 | 문자열, 숫자, 부울 | 속성이 입력한 값과 일치합니다. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
같지 않음 | != | 같지 않음 | 문자열, 숫자, 부울 | 속성이 입력한 값과 일치하지 않습니다. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
보다 큼 | > | 보다 큼 | number | 속성이 입력한 값보다 큽니다. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
크거나 같음 | >= | greaterThanOr같음 | number | 속성이 입력한 값보다 크거나 같음 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
보다 작음 | < | 미만 | number | 속성이 입력한 값보다 작습니다. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
작거나 같음 | <= | lessThanOr같음 | number | 속성이 입력한 값보다 작거나 같음 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In | : | 에서 | 문자열 목록 | 입력한 목록에 속성이 있습니다. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
포함되어 있지 않음 | !: | 온인 | 문자열 목록 | 입력한 목록에 속성이 없습니다. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
다음으로 시작 | ^ | 로 시작 | 문자열 | 입력한 문자열로 속성이 시작됩니다 (Amazon OpenSearch 서버리스 벡터 스토어에서만 지원됨). |
필터링 연산자를 조합하려면 다음 논리 연산자를 사용할 수 있습니다.
메타데이터를 사용하여 결과를 필터링하는 방법을 알아보려면 선택한 방법에 해당하는 탭을 선택하고 단계를 따르세요.
지식 베이스를 쿼리하고 응답 생성을 요청하면 Amazon Bedrock은 지침 및 컨텍스트를 사용자 쿼리와 결합한 프롬프트 템플릿을 사용하여 응답 생성을 위해 모델로 전송되는 프롬프트를 구성합니다. 다음 도구를 사용하여 프롬프트 템플릿을 설계할 수 있습니다.
-
프롬프트 플레이스홀더 — Amazon Bedrock용 지식 베이스의 사전 정의된 변수로, 지식 기반 쿼리 중에 런타임에 동적으로 채워집니다. 시스템 프롬프트에서 이러한 자리 표시자가 기호로 둘러싸인 것을 볼 수 있습니다.
$
다음 목록은 사용할 수 있는 플레이스홀더를 설명합니다.변수 로 대체 모델 필수? $쿼리$ 지식창고로 전송된 사용자 쿼리 AnthropicClaude Instant, Anthropic Claude v2.x 예 Anthropic Claude 3 Sonnet 아니요 (모델 입력에 자동으로 포함됨) $검색_결과$ 사용자 쿼리에 대해 검색된 결과. 모두 예 $출력_형식_지침$ 응답 생성 및 인용 형식을 지정하기 위한 기본 지침. 모델별로 다릅니다. 형식 지정 지침을 직접 정의하는 경우 이 자리 표시자를 제거하는 것이 좋습니다. 이 자리 표시자가 없으면 응답에 인용이 포함되지 않습니다. 모두 아니요 $current_time$ 현재 시간. 모두 아니요 -
XML 태그 — Anthropic 모델은 XML 태그를 사용하여 프롬프트를 구조화하고 설명할 수 있도록 지원합니다. 최적의 결과를 얻으려면 설명이 포함된 태그 이름을 사용하세요. 예를 들어, 기본 시스템 프롬프트에는 이전에 질문한 질문의 데이터베이스를 설명하는 데 사용된
<database>
태그가 표시됩니다. 자세한 내용은 사용 Anthropic설명서의XML 태그 사용을 참조하십시오.
일반적인 프롬프트 엔지니어링 지침은 을 참조하십시오 프롬프트 엔지니어링 지침.
선택한 방법에 해당하는 탭을 선택하고 단계를 따르십시오.
사용 사례 및 책임 있는 AI 정책에 맞게 지식창고에 대한 보호 조치를 구현할 수 있습니다. 다양한 사용 사례에 맞게 조정된 여러 개의 가드레일을 만들어 여러 요청 및 응답 조건에 적용하여 일관된 사용자 경험을 제공하고 지식 기반 전반의 안전 제어를 표준화할 수 있습니다. 원하지 않는 주제를 허용하지 않도록 거부된 주제를 구성하고 모델 입력 및 응답에서 유해한 콘텐츠를 차단하도록 콘텐츠 필터를 구성할 수 있습니다. 자세한 정보는 아마존 베드락용 가드레일을 참조하세요.
참고
Claude 3 Sonnet과 Haiku에서는 지식 베이스의 상황에 맞는 기반이 있는 가드레일을 사용하는 것이 현재 지원되지 않습니다.
일반적인 프롬프트 엔지니어링 프롬프트 엔지니어링 지침 지침은 을 참조하십시오.
선택한 방법에 해당하는 탭을 선택하고 단계를 따르십시오.