벡터 인덱스 설정

벡터 인덱스를 생성하려면 문서의 기반 데이터와 호환되는 벡터 데이터 저장소를 선택하고, 문서가 임베딩 모델로 전송되기 전에 더 작은 세그먼트로 분할되는 방식을 제어하는 설정을 지정해야 합니다.

벡터 데이터 저장소에서 임베딩을 생성하고 검색하기 위해 벡터 인덱스를 생성할 때 다음 옵션 및 설정에 대해 선택하십시오:

벡터 저장소의 유형

다음 벡터 데이터 저장소 중 하나를 사용하여 접지 문서를 저장할 수 있습니다:

  • 메모리 : 프로젝트와 연결되어 임시 벡터 저장 공간을 제공하는 크로마 데이터베이스 벡터 인덱스. 임베딩 모델이 클러스터에 설치되어야 메모리 내 벡터 저장소에 접근할 수 있습니다.

    참고: 메모리 내 벡터 인덱스 자산은 자동으로 생성되므로 벡터 저장소를 설정할 필요가 없습니다.
  • Elasticsearch 프로젝트에 설정하고 연결하는 외부 제3자 벡터 인덱스.

  • Milvus 설정하여 프로젝트에 연결할 수 있는 타사 벡터 인덱스.

외부 벡터 저장소를 사용하려면 벡터 인덱스를 생성하기 전에 데이터 저장소와의 연결을 설정해야 합니다. 자세한 내용은 Elasticsearch vector store 설정watsonx.data Milvus vector store 설정을 참조하십시오.

벡터 저장소 선택

사용 사례에 적합한 벡터 저장소를 결정하려면 다음 요소를 고려하십시오:

  • 귀하의 기초 문서 파일 유형. 지원되는 파일 형식은 벡터 저장소마다 다릅니다.

  • 인덱스에 추가하는 문서를 벡터화하는 데 사용할 수 있는 임베딩 모델들. 지원되는 모델은 벡터 저장소에 따라 다릅니다.

  • 기초 모델 프롬프트에서 검색할 수 있도록 원하는 접지 문서의 수

    타사 벡터 저장소에 연결할 때 다음 작업 중 하나를 수행할 수 있습니다:

    • 벡터화할 파일을 추가하고 벡터 저장소의 새 벡터 인덱스 또는 컬렉션에 저장합니다.
    • 벡터 저장소의 기존 인덱스 또는 컬렉션에서 벡터화된 데이터를 사용하십시오.

    벡터 인덱스를 생성할 때 벡터 스토어에 추가할 수 있는 파일 수는 제한됩니다. 메모리 내 벡터 저장소에서 한 번에 최대 10개의 문서를 업로드할 수 있습니다.

    50MB를 초과하는 PDF 파일 세트와 같이 더 많은 문서를 벡터화하려면 타사 벡터 저장소를 사용하십시오. 타사 벡터 저장소를 사용하면 데이터 저장소에서 직접 더 많은 문서를 포함하는 컬렉션이나 인덱스를 먼저 생성할 수 있습니다. 그런 다음 프롬프트와 연결할 벡터 인덱스 자산을 생성할 때 기존 컬렉션이나 인덱스에 연결할 수 있습니다.

    주의:Prompt Lab 에서 벡터 인덱스를 생성할 때 단일 업로드에 10개 이상의 파일을 추가하지 마십시오.

외부 벡터 저장소 스키마 필드를 벡터 인덱스 자산에 매핑하기

연결된 벡터 저장소의 경우, 외부 벡터 저장소의 기존 인덱스 또는 컬렉션에서 필드를 watsonx.ai 의 벡터 인덱스 자산에 정의된 새 필드로 매핑할 수 있습니다. 이를 통해 다양한 유형의 벡터 저장소에서 데이터를 추출하고 문서에 대한 세부 정보(예: 원본 파일 이름 및 페이지 번호)를 일관된 방식으로 캡처할 수 있습니다.

표 1. 벡터 저장소 스키마 필드
새로운 벡터 인덱스 필드 이름 연결된 벡터 저장소의 필드
벡터 쿼리 Elasticsearch 인덱스에만 필요합니다. Elasticsearch 인덱스를 검색하는 데 사용되는 쿼리 텍스트를 지정하는 필드입니다. 예를 들어 mlvector 또는 등이 있습니다.
문서 이름 소스 파일을 식별하는 필드. 파일 이름을 캡처하는 필드(예: metadata.source )나 문서 제목(예: metadata.title )을 선택할 수 있습니다.
텍스트 페이지 콘텐츠의 대부분을 포함하는 영역, 예를 들어 body 또는 text.
페이지 번호 페이지 번호를 식별하는 필드, 예를 들어 metadata.page_number.
문서 URL 문서의 URL 를 포함하는 필드, 예를 들어 metadata.document_url.
주의:

Cloud Object Storage (COS) 연결을 사용하는 연결된 폴더 자산을 사용하려면 다음 요구 사항을 충족해야 합니다:

  • COS 연결에는 버킷이 지정되어야 합니다.
  • COS 연결은 인증을 위해 HMAC 자격 증명(리소스 인스턴스 ID, API 키, 액세스 키, 시크릿 키)을 사용해야 합니다.

접지 문서 파일 유형

벡터 인덱스에 근거 문서를 추가할 때 파일을 업로드하거나 파일을 포함하는 데이터 자산에 연결할 수 있습니다.

다음 표는 새 벡터 인덱스를 생성할 때 추가할 수 있는 지원되는 파일 형식과 최대 파일 크기를 나열합니다. 지원되는 파일 형식은 벡터 저장소마다 다릅니다.

파일 유형은 첫 번째 열에 나열되어 있습니다. 각 파일 유형별로 기본적으로 허용되는 최대 총 파일 크기는 나머지 열에 나열되어 있습니다.

참고: 각 파일 유형에 대한 최대 허용 크기는 독립적으로 적용됩니다. 예를 들어, 크기가 합계 최대 5MB인 여러 개의 일반 텍스트 파일과 크기가 합계 최대 50MB인 여러 개의 PDF 파일을 동시에 업로드할 수 있습니다.
표 2. 다양한 벡터 저장소에서 지상 문서에 대한 지원 파일 형식
파일 유형 메모리 내 저장소 최대 총 파일 크기 Elasticsearch 최대 총 파일 크기 Milvus 최대 총 파일 크기
CSV 지원되지 않음 50MB 50MB
DOCX 50MB 500MB 500MB
HTML 지원되지 않음 50MB 50MB
JSON 지원되지 않음 50MB 50MB
PDF 50MB 500MB 500MB
PPTX 300MB 300MB 300MB
TXT 5MB 50MB 50MB
XLSX 지원되지 않음 50MB 50MB
XML 지원되지 않음 50MB 50MB
YAML 지원되지 않음 50MB 50MB

벡터화 설정

접지 문서를 업로드할 때 임베딩 모델을 사용하여 문서 텍스트를 수치적으로 표현하는 벡터를 계산합니다.

문서를 선택한 임베딩 모델로 전송하기 전에 더 작은 세그먼트 또는 청크로 분할하는 방식을 제어하려면 다음 설정을 구성할 수 있습니다:

지원되는 임베딩 모델

watsonx.ai 에서 제공하는 임베딩 모델을 메모리 내(in-memory) 및 메모리 외부( Milvus ) 벡터 데이터 저장소와 함께 사용할 수 있습니다. 자세한 내용은 모델 임베딩 세부 사항을 참조하십시오.

Elasticsearch 벡터 데이터 저장소와 함께 ELSER(Elastic Learned Sparse EncodeR ) 임베딩 모델을 사용할 수 있습니다. 자세한 내용은 ELSER – Elastic Learned Sparse EncodeR 를 참조하십시오.

관리자는 벡터 인덱스 자산과 함께 사용하려는 임베딩 모델을 설치해야 합니다.

텍스트 청크 크기

문서 세그먼트당 포함할 문자 수를 구성하려면 청크 크기 매개변수를 설정하십시오.

모델이 허용하는 최대 입력 토큰 수보다 작은 세그먼트 크기를 정의하십시오. 문서를 더 큰 세그먼트로 분할할 경우, 최대 토큰 크기 제한을 초과하면 임베딩 모델이 해당 세그먼트의 추가 문자를 무시하기 때문에 일부 문서 텍스트가 생략될 수 있습니다.

챕터 크기는 문자 단위로 지정됩니다. 토큰당 문자 수는 임베딩 모델에 따라 다르지만, 하나의 토큰은 대략 2~3자에 해당합니다.

표 2. 모델 청크 크기 임베딩
임베딩 모델 최대 입력 토큰 대략적인 청크 크기
all-MiniLM-L6-v2 256 700
all-MiniLM-l12-v2 256 700
ELSER 512 1400
granite-embedding-107m-multilingual 512 1400
granite-embedding-278m-multilingual 512 1400
multilingual-e5-large 512 1400
slate-30m-english-rtrvr 512 1400
slate-125m-english-rtrvr 512 1400

 

텍스트 청크 중첩

챕터 중첩 매개변수를 설정하여 연속된 두 문서 세그먼트 각각에서 반복될 문자 수를 구성합니다.

반복되는 텍스트는 문서 단편 사이에 완충 역할을 하여 완전한 문장을 포착하는 데 도움을 주고 텍스트가 완전히 누락되는 것을 방지합니다.

PDF 페이지 분할

분할 PDF 매개변수가 활성화되면 PDF 파일이 페이지당 하나의 세그먼트로 분할되며, 답변에 페이지 번호 출처를 포함합니다. 표시되는 페이지 번호는 PDF 뷰어의 페이지 번호입니다.

참고: 이 옵션은 PDF 파일을 추가할 때만 사용할 수 있습니다.

검색 설정

벡터 인덱스 자산의 콘텐츠 검색에서 반환되는 응답을 개선하기 위해 쿼리 설정을 조정할 수 있습니다.

제한 사항: API로 생성된 벡터 인덱스 자산의 검색 결과 및 결과 재정렬 설정을 조정할 수 없습니다.

벡터 인덱스가 반환하는 검색 결과의 수와 유형을 제어하려면 다음 설정을 사용할 수 있습니다:

상위 K

벡터 인덱스 검색에서 샘플링할 결과 수를 구성하려면 Top K 매개변수를 설정하십시오. 샘플링된 결과는 파운데이션 모델에 대한 문맥 입력으로 사용됩니다.

상위 K 값이 낮을수록 질문과 답변 간의 유사도가 높아집니다. 더 높은 상위 K 값은 기초 모델이 응답을 생성하는 데 활용할 수 있는 더 많은 정보를 제공합니다. 그러나 모델 입력의 토큰 수 또한 증가합니다.

기본적으로 상위 세 개의 검색 결과가 포함됩니다.

지원되는 재순위 지정 모델

질문에 대한 답변 가능성이 높은 검색 결과를 우선순위로 표시하기 위해 재순위 지정 모델을 선택하십시오. watsonx.ai 에서 제공하는 재순위 지정 모델에 대한 자세한 내용은 재순위 지정 모델 세부 정보를 참조하십시오.

관리자는 벡터 인덱스 자산과 함께 원하는 재순위 지정 모델을 설치해야 합니다.

상위 N

Top N 매개변수를 설정하여 재순위 지정 모델이 재순위 지정해야 하는 상위 K개 벡터 인덱스 검색 결과의 개수를 구성합니다.

자세히 알아보기