지식 기반 쿼리 및 데이터 검색 - Amazon Bedrock

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

지식 기반 쿼리 및 데이터 검색

중요

가드레일은 입력 및 LLM에서 생성된 응답에만 적용됩니다. 런타임 시 지식 기반에서 검색된 참조에는 적용되지 않습니다.

지식 기반을 설정한 후 Retrieve API 작업을 사용하여 이를 쿼리하고 쿼리와 관련된 소스 데이터에서 청크를 검색할 수 있습니다. 기본 Amazon Bedrock Knowledge Bases 순위 대신 순위 변경 모델을 사용하여 검색 중에 소스 청크의 관련성 순위를 매길 수도 있습니다.

지식 기반을 쿼리하는 방법을 알아보려면 원하는 방법에 해당하는 탭을 선택하고 다음 단계를 따릅니다.

Console
지식 기반을 테스트하려면 다음을 수행하세요.
  1. Amazon Bedrock 콘솔을 사용할 권한이 있는 IAM 자격 증명AWS Management 콘솔으로에 로그인합니다. 그 다음 https://console.aws.amazon.com/bedrock에서 Amazon Bedrock 콘솔을 엽니다.

  2. 왼쪽 탐색 창에서 지식 기반을 선택합니다.

  3. 지식 기반 섹션에서 다음 작업 중 하나를 수행합니다.

    • 테스트하려는 지식 기반 옆의 라디오 버튼을 선택하고 지식 기반 테스트를 선택합니다. 테스트 창이 오른쪽에 펼쳐집니다.

    • 테스트할 지식 기반을 선택합니다. 테스트 창이 오른쪽에 펼쳐집니다.

  4. 테스트 창에서 지식 기반에서 직접 검색한 정보를 반환하려면 쿼리에 대한 응답 생성 기능을 해제합니다.

  5. (선택 사항) 구성 아이콘( Three horizontal sliders with adjustable circular controls for settings or parameters. )을 선택하여 구성을 엽니다. 구성에 대한 자세한 내용은 쿼리와 응답 생성 구성 및 사용자 지정 섹션을 참조하세요.

  6. 채팅 창의 텍스트 상자에 쿼리를 입력하고 실행을 선택하면 지식 기반에서 응답이 반환됩니다.

  7. 소스 청크는 관련성 순서대로 직접 반환됩니다. 데이터 소스에서 추출한 이미지를 소스 청크로 반환할 수도 있습니다.

  8. 반환된 청크에 대한 세부 정보를 보려면 소스 세부 정보 표시를 선택합니다.

    • 쿼리에 대해 설정한 구성을 보려면 쿼리 구성을 펼칩니다.

    • 소스 청크에 대한 세부 정보를 보려면 소스 청크 옆에 있는 오른쪽 화살표( Play button icon with a triangular shape pointing to the right. )를 선택하여 소스 청크를 확장합니다. 다음 정보를 확인할 수 있습니다.

      • 소스 청크의 원시 텍스트입니다. 이 텍스트를 복사하려면 복사 아이콘( Icon representing a crop or resize function, with two overlapping rectangles. )을 선택합니다. Amazon S3를 사용하여 데이터를 저장한 경우, 파일이 포함된 S3 객체로 이동하여 외부 링크 아이콘( Icon of a square with an arrow pointing outward from its top-right corner. )을 선택합니다.

      • Amazon S3를 사용하여 데이터를 저장한 경우 소스 청크와 연결된 메타데이터입니다. 속성/필드 키 및 값은 소스 문서와 연결된 .metadata.json 파일에 정의됩니다. 자세한 내용은 쿼리와 응답 생성 구성 및 사용자 지정메타데이터 및 필터링 섹션을 참조하세요.

채팅 옵션
  • 응답 생성을 켜서 검색된 소스 청크를 기반으로 응답 생성으로 전환합니다. 설정을 변경하면 채팅 창의 텍스트가 완전히 지워집니다.

  • 채팅 창을 지우려면 빗자루 아이콘( Magnifying glass icon with a checkmark inside, symbolizing search or inspection. )을 선택합니다.

  • 채팅 창의 모든 출력을 복사하려면 복사 아이콘( Icon representing a crop or resize function, with two overlapping rectangles. )을 선택합니다.

API

지식 기반을 쿼리하고 데이터 소스에서 관련 텍스트만 반환하려면 Amazon Bedrock Agents 런타임 엔드포인트를 사용하여 Retrieve 요청을 전송합니다.

필수 필드는 다음과 같습니다.

Field 기본 설명
knowledgeBaseId 쿼리할 지식 기반을 지정합니다.
retrievalQuery 쿼리를 지정하는 text 필드가 포함되어 있습니다.
guardrailsConfiguration 요청과 함께 가드레일을 사용하려면 guardrailsIdguardrailsVersion과 같은 guardrailsConfiguration 필드를 포함합니다

다음 필드는 선택 사항입니다.

Field 사용 사례:
nextToken 다음 응답 배치를 반환하려면(아래 응답 필드 참조).
retrievalConfiguration 벡터 검색을 사용자 지정하기 위한 쿼리 구성을 포함합니다. 자세한 내용은 KnowledgeBaseVectorSearchConfiguration을 참조하세요.

KnowledgeBaseVectorSearchConfigurationrerankingConfiguration 필드를 포함하여 기본 Amazon Bedrock Knowledge Bases 순위 지정 모델보다 순위 변경 모델을 사용할 수 있습니다. rerankingConfiguration 필드는 VectorSearchRerankingConfiguration 객체에 매핑됩니다. 이 객체에서는 사용할 순위 변경 모델, 포함할 추가 요청 필드, 순위 변경 중에 문서를 필터링하기 위한 메타데이터 속성, 순위 변경 후 반환할 결과 수를 지정할 수 있습니다. 자세한 내용은 VectorSearchRerankingConfiguration을 참조하세요.

참고

지정한 numberOfRerankedResults 값이 KnowledgeBaseVectorSearchConfigurationnumberOfResults 값보다 큰 경우 반환될 최대 결과 수는 numberOfResults의 값입니다. 쿼리 분해를 사용하는 경우는 예외입니다(자세한 내용은 쿼리와 응답 생성 구성 및 사용자 지정쿼리 수정 섹션을 참조하세요). 쿼리 분해를 사용하는 경우 numberOfRerankedResultsnumberOfResults의 최대 5배가 될 수 있습니다.

응답은 데이터 소스의 소스 청크를 retrievalResults 필드의 KnowledgeBaseRetrievalResult 객체 배열로 반환합니다. 각 KnowledgeBaseRetrievalResult에는 다음 필드가 포함됩니다.

필드 설명
콘텐츠 text에 텍스트 소스 청크를 포함하거나 byteContent 필드에 이미지 소스 청크를 포함합니다. 콘텐츠가 이미지인 경우 base64 인코딩 콘텐츠의 데이터 URI는 data:image/jpeg;base64,${base64-encoded string} 형식으로 반환됩니다.
metadata 각 메타데이터 속성을 키로 포함하고 메타데이터 값을 키가 매핑되는 JSON 값으로 포함합니다.
location 소스 청크가 속한 문서의 URI 또는 URL을 포함합니다.
점수 문서의 관련성 점수입니다. 이 점수를 사용하여 결과의 순위를 분석할 수 있습니다.

소스 청크 수가 응답에 적합할 수 있는 수를 초과하면 nextToken 필드에 값이 반환됩니다. 다음 결과 배치를 반환하도록 또 다른 요청에서 사용합니다.

검색된 데이터에 이미지가 포함된 경우 응답은 응답에 반환된 소스 청크에 대한 메타데이터가 포함된 다음 응답 헤더도 반환합니다.

  • x-amz-bedrock-kb-byte-content-source - 이미지의 Amazon S3 URI를 포함합니다.

  • x-amz-bedrock-kb-description - 이미지의 base64 인코딩 문자열을 포함합니다.

참고

메타데이터 필터를 구성할 때는 이러한 메타데이터 응답 헤더를 필터링할 수 없습니다.

다중 모달 쿼리

멀티모달 임베딩 모델을 사용하는 지식 기반의 경우 텍스트 외에도 이미지로 쿼리할 수 있습니다. retrievalQuery 필드는 이미지 쿼리에 대한 multimodalInputList 필드를 지원합니다.

참고

Nova 및 BDA 접근 방식 선택 등 멀티모달 지식 기반을 설정하고 사용하는 방법에 대한 포괄적인 지침은 섹션을 참조하세요멀티모달 콘텐츠를 위한 지식 기반 구축.

{ "knowledgeBaseId": "EXAMPLE123", "retrievalQuery": { "text": "Find similar shoes", "multimodalInputList": [ { "content": { "byteContent": "base64-encoded-image-data" }, "modality": "IMAGE" } ] } }

text 필드를 생략해야만 이미지로 쿼리할 수 있습니다.

{ "knowledgeBaseId": "EXAMPLE123", "retrievalQuery": { "multimodalInputList": [ { "content": { "byteContent": "base64-encoded-image-data" }, "modality": "IMAGE" } ] } }

일반적인 멀티모달 쿼리 패턴

Image-to-image 검색

이미지를 업로드하여 시각적으로 유사한 이미지를 찾습니다. 예: 빨간색 Nike 신발의 사진을 업로드하여 제품 카탈로그에서 유사한 신발을 찾습니다.

텍스트 + 이미지 구체화

텍스트와 이미지를 결합하여 보다 정확한 결과를 얻을 수 있습니다. 예: 업로드된 신발 이미지와 함께 "유사하지만 색상이 다른 신발 찾기".

시각적 문서 검색

문서 내에서 차트, 다이어그램 또는 시각적 요소를 검색합니다. 예: 차트 이미지를 업로드하여 문서 모음에서 유사한 차트를 찾습니다.

멀티모달 콘텐츠에 대해 Nova와 BDA 중에서 선택

멀티모달 콘텐츠로 작업할 때는 콘텐츠 유형 및 쿼리 패턴에 따라 접근 방식을 선택합니다.

Nova와 BDA 결정 매트릭스 비교
콘텐츠 유형 Nova 멀티모달 임베딩 사용 Bedrock Data Automation(BDA) 파서 사용
비디오 콘텐츠 시각적 스토리텔링 포커스(스포츠, 광고, 데모), 시각적 요소에 대한 쿼리, 최소 스피치 콘텐츠 중요한 스피치/나레이션(프레젠테이션, 회의, 자습서), 스피치 콘텐츠에 대한 쿼리, 트랜스크립트 필요
오디오 콘텐츠 음악 또는 사운드 효과 식별, 음성이 아닌 오디오 분석 팟캐스트, 인터뷰, 회의, 트랜스크립션이 필요한 스피치가 포함된 모든 콘텐츠
이미지 콘텐츠 시각적 유사성 검색, image-to-image 검색, 시각적 콘텐츠 분석 이미지에서 텍스트 추출, 문서 처리, OCR 요구 사항
참고

Nova 멀티모달 임베딩은 스피치 콘텐츠를 직접 처리할 수 없습니다. 오디오 또는 비디오 파일에 중요한 음성 정보가 포함된 경우 BDA 구문 분석기를 사용하여 음성을 먼저 텍스트로 변환하거나 대신 텍스트 임베딩 모델을 선택합니다.

다중 모달 쿼리 제한 사항

  • 현재 릴리스에서 쿼리당 최대 하나의 이미지

  • 이미지 쿼리는 멀티모달 임베딩 모델(Titan G1 또는 Cohere Embed v3)에서만 지원됩니다.

  • 멀티모달 임베딩 모델 및 S3 콘텐츠 버킷이 있는 지식 기반에는 RetrieveAndGenerate API가 지원되지 않습니다.

  • 텍스트 전용 임베딩 모델을 사용하여 지식 기반에 이미지 쿼리를 제공하는 경우 4xx 오류가 반환됩니다.

멀티모달 API 응답 구조

멀티모달 콘텐츠에 대한 검색 응답에는 추가 메타데이터가 포함됩니다.

  • 소스 URI: 원래 S3 버킷 위치를 가리킵니다.

  • 보충 URI: 멀티모달 스토리지 버킷의 복사본을 가리킵니다.

  • 타임스탬프 메타데이터: 정확한 재생 위치를 지정할 수 있도록 비디오 및 오디오 청크에 포함

참고

API 또는 SDK를 사용하는 경우 애플리케이션에서 파일 검색 및 타임스탬프 탐색을 처리해야 합니다. 콘솔은 향상된 비디오 재생 및 자동 타임스탬프 탐색을 통해 이를 자동으로 처리합니다.

참고

응답을 생성하는 과정에서 프롬프트가 글자 수 제한을 초과하는 오류가 발생하면 다음과 같은 방법으로 프롬프트를 줄일 수 있습니다.