문서 청크에 대한 상황별 벡터 임베딩을 생성합니다. 이러한 임베딩은 각 청크 내의 로컬 세부 정보와 전체 문서 의 글로벌 컨텍스트를 모두 캡처합니다.
이 엔드포인트는 쿼리, 전체 문서 또는 문서 청크를 허용하고 전체 문서 에서 컨텍스트를 인식하는 임베딩을 반환합니다.
body
필수 사항
-
목록의 목록으로, 각 내부 목록에는 벡터화할 쿼리, 문서 또는 문서 청크가 포함되어 있습니다.
inputs의 각 내부 목록은 함께 포함된 텍스트 요소 설정하다 나타냅니다. 목록의 각 요소는 독립적으로 인코딩될 뿐만 아니라 동일한 목록에 있는 다른 요소의 컨텍스트도 인코딩합니다.inputs = [["text_1_1", "text_1_2", ..., "text_1_n"], ["text_2_1", "text_2_2", ..., "text_2_m"]]문서 청크. 가장 일반적으로 각 내부 목록에는 문서 내 위치별로 정렬된 단일 문서 의 청크가 포함됩니다. 이 경우:
inputs = [["doc_1_chunk_1", "doc_1_chunk_2", ..., "doc_1_chunk_n"], ["doc_2_chunk_1", "doc_2_chunk_2", ..., "doc_2_chunk_m"]]각 청크 동일한 문서 의 다른 청크와 컨텍스트에 따라 인코딩되어 더 많은 컨텍스트 인식 임베딩을 제공합니다. 제공된 청크는 겹치지 않아야 합니다.
쿼리 및 문서에 대한 컨텍스트 불가지론적 동작. 내부 목록당 하나의 요소가 있는 경우 각 텍스트는 표준(컨텍스트에 구애받지 않는) 임베딩과 유사하게 독립적으로 포함됩니다.
inputs = [["query_1"], ["query_2"], ..., ["query_k"]] inputs = [["doc_1"], ["doc_2"], ..., ["doc_k"]]따라서 입력이 쿼리인 경우 각 내부 목록에는 위와 같이 단일 쿼리(길이 1)가 포함되어야 하며
input_type를query로 설정해야 합니다.inputs목록에 적용 제약 조건은 다음과 같습니다.- 목록에는 1,000 개 이상의 입력이 포함되어서는 안 됩니다.
- 모든 입력의 총 토큰 수는 120K를 초과할 수 없습니다.
- 모든 입력의 총 청크 수는 16K를 초과할 수 없습니다.
쿼리의 경우 목록에는 단일 쿼리 만 포함됩니다. 문서 또는 문서 청크의 경우, 목록에는 단일 문서 의 모든 청크가 문서 내 위치별로 정렬되어 포함되어야 하며, 그렇지 않으면 전체 문서 단일 청크 로 제공될 수도 있습니다. 목록의 총 토큰 수는 32,000 토큰을 초과할 수 없습니다.
최소
1개,1000개 이하의 요소입니다.쿼리의 경우 목록에는 단일 쿼리 만 포함됩니다. 문서 또는 문서 청크의 경우, 목록에는 단일 문서 의 모든 청크가 문서 내 위치별로 정렬되어 포함되어야 하며, 그렇지 않으면 전체 문서 단일 청크 로 제공될 수도 있습니다. 목록의 총 토큰 수는 32,000 토큰을 초과할 수 없습니다.
요소가
1개 이상이어야 합니다. 각각의 최소 길이는1입니다. -
사용할 상황별 임베딩 모델입니다. 권장 모델:
voyage-context-3.값은
voyage-context-3입니다. -
입력 텍스트의 유형입니다. 기본값은
null입니다. 기타 옵션:query,document.input_type가null인 경우 임베딩 모델은 입력을 직접 숫자 벡터로 변환합니다. '쿼리'가 '문서'라고 하는 데이터 컬렉션 중에서 관련 정보를 검색하는 조회 또는 검색 목적의 경우,input_type를query또는document로 각각 설정하여 입력이 쿼리인지 문서인지 지정합니다. 이러한 경우 Voyage는 벡터화하기 전에inputs에 자동으로 프롬프트를 추가하여 검색 작업에 더 적합한 벡터를 생성합니다.input_type인수를 사용하거나 사용하지 않고 생성된 임베딩은 호환됩니다.- 투명성을 위해 다음과 같은 프롬프트가 입력 앞에 추가됩니다.
- 의
query경우 프롬프트는 "Representing the 쿼리 for retreering concern:" 입니다. document의 경우 프롬프트는 "검색할 문서 표시합니다: "입니다.
- 의
값은
query,document또는 null입니다. -
결과 출력 임베딩의 차원 수입니다. 기본값은
null입니다.voyage-context-3은(는)output_dimension값을 지원합니다: 2048, 1024 (기본값), 512, 256.null로 설정하다 하면 모델은 기본값 인 1024를 사용합니다.값은
256,512,1024,2048또는 null입니다. -
반환될 임베딩의 데이터 유형 . 기본값은
float입니다. 기타 옵션:int8,uint8,binary,ubinary.float: 반환된 각 임베딩은 32비트(4바이트) 단정밀도 부동 소수점 숫자 목록입니다. 이는 기본값 이며 가장 높은 정밀도/검색 정확도를 제공합니다.int8및uint8: 반환된 각 임베딩은 각각 -128 ~ 127 및 0 ~ 255 범위의 8비트(1바이트) 정수 목록입니다.binary및ubinary: 반환된 각 임베딩은 비트로 채워지고 양자화된 단일 비트 임베딩 값을 나타내는 8비트 정수 목록입니다(binary의 경우int8,ubinary의 경우uint8). 반환된 정수 목록의 길이는output_dimension의 1/8 (임베딩의 실제 차원)입니다.binary유형은 오프셋 바이너리 메서드를 사용합니다.
기본값은
float입니다. -
임베딩이 인코딩되는 형식입니다. 기본값은
null입니다. 기타 옵션:base64.null인 경우, 각 임베딩은output_dtype이float로 설정하다 경우 부동 소수점 배열 이고output_dtype의 다른 모든 값에 대한 정수 배열 (int8,uint8,binary및ubinary). 자세한 내용은output_dtype를 참조하세요.base64인 경우 임베딩은 다음과 같은 Base64로 인코딩된 NumPy 배열로 표시됩니다.- 부동 소수점 숫자(numpy.float32)
output_dtype에 대해float로 설정하다 . - 부호 있는 정수(numpy.int8)
output_dtype에 대해int8또는binary로 설정하다 . - 부호 없는 정수(numpy.uint8)
output_dtype에 대해uint8또는ubinary로 설정하다 .
- 부동 소수점 숫자(numpy.float32)
값이
base64또는 null입니다.
curl \
--request POST 'https://ai.mongodb.com/v1/contextualizedembeddings' \
--header "Authorization: Bearer $ACCESS_TOKEN" \
--header "Content-Type: application/json" \
--data '{"inputs":[["string"]],"model":"voyage-context-3","input_type":"query","output_dimension":256,"output_dtype":"float","encoding_format":"base64"}'
{
"inputs": [
[
"string"
]
],
"model": "voyage-context-3",
"input_type": "query",
"output_dimension": 256,
"output_dtype": "float",
"encoding_format": "base64"
}
{
"object": "list",
"data": [
{
"object": "list",
"data": [
{
"object": "embedding",
"embedding": [
42.0
],
"index": 42
}
],
"index": 42
}
],
"model": "string",
"usage": {
"total_tokens": 42
}
}
{
"detail": "string"
}
{
"detail": "string"
}
{
"detail": "string"
}
{
"detail": "string"
}
{
"detail": "string"
}
{
"detail": "string"
}
{
"detail": "string"
}
{
"detail": "string"
}