POST /embeddings

제공된 텍스트 입력에 대한 벡터 임베딩을 생성합니다. 이 엔드포인트는 단일 text string 또는 text string 목록을 허용하고 해당 벡터 임베딩을 반환합니다.

시맨틱 검색 및 조회 작업의 경우 input_type 매개 변수를 query 또는 document 로 설정하여 모델이 벡터를 생성하는 방식을 최적화합니다.

application/json

body 필수 사항

  • 입력 string | 배열[string] 필수 사항

    단일 텍스트 string 또는 포함할 텍스트 string 목록(예: ["I like cats", "I also like dogs"])입니다.

    제약 조건:

    • 최대 목록 길이: 1,000 항목
    • 최대 총 토큰 수: voyage-3.5-litevoyage-4-lite의 경우 1M, voyage-3.5, voyage-4voyage-2의 경우 320K입니다. voyage-3-large, voyage-4-large, voyage-code-3, voyage-finance-2voyage-law-2의 120K
    다음 중 하나입니다.

    최소 길이는 1입니다.

    최소 1 개, 1000 개 이하의 요소입니다. 각각의 최소 길이는 1입니다.

  • 모델 문자열 필수 사항

    사용할 임베딩 모델입니다. 권장 모델: voyage-4-large, voyage-4, voyage-4-lite, voyage-code-3, voyage-finance-2, voyage-law-2.

    값은 voyage-context-3, voyage-4, voyage-4-lite, voyage-4-large, voyage-3.5, voyage-3.5-lite, voyage-3-large, voyage-code-3, voyage-multimodal-3, voyage-finance-2, voyage-law-2 또는 voyage-code-2입니다. .

  • input_type

    입력 텍스트의 유형입니다. 시맨틱 검색 및 조회 작업에 대한 임베딩을 최적화하려면 이 매개변수를 사용합니다.

    옵션:

    • null (기본값): 모델이 추가 프롬프트 없이 입력을 숫자 벡터로 직접 변환합니다.
    • query: 입력이 검색 쿼리 나타낼 때 사용합니다. 이 모델은 검색을 위한 임베딩을 최적화하기 위해 ' 쿼리 for reterieing supportdocuments:'를 앞에 추가합니다.
    • document: 입력이 검색할 문서 나타낼 때 사용합니다. 이 모델은 검색을 위한 임베딩을 최적화하기 위해 '검색할 문서 표시:'를 추가합니다.

    시맨틱 검색 및 조회 작업의 경우 항상 이 매개변수를 query 또는 document 로 적절하게 설정하세요. input_type 인수를 사용하거나 사용하지 않고 생성된 임베딩은 호환됩니다.

    값은 query, document 또는 null입니다.

  • 잘라내기 부울

    컨텍스트 길이를 초과하는 입력 텍스트를 자를지 여부입니다.

    • true (기본값): 컨텍스트 길이를 초과하는 입력 텍스트는 벡터화 전에 자동으로 잘립니다.
    • false: 입력 텍스트가 컨텍스트 길이를 초과하면 오류가 반환됩니다.

    기본값은 true 입니다.

  • output_di멘션 정수 | null

    출력 임베딩의 차원 수입니다.

    대부분의 모델은 하나의 기본값 차원만 지원 . voyage-4-large, voyage-4, voyage-4-lite, voyage-3-large, voyage-3.5, voyage-3.5-litevoyage-code-3 모델 지원 256, 512, 1024 (기본값), 및 2048.

    모델의 기본값 차원을 사용하려면 null 로 설정합니다.

    값은 256, 512, 1024, 2048 또는 null입니다.

  • output_dtype 문자열

    반환된 임베딩의 데이터 유형 .

    옵션:

    • float (기본값): 32비트 단정밀도 부동 소수점 숫자입니다. 최고의 정밀도와 검색 정확도를 제공합니다. 모든 모델에서 지원됩니다.
    • int8: -128 ~ 127 범위의 8비트 부호 있는 정수입니다. voyage-4-large, voyage-4, voyage-4-lite, voyage-3-large, voyage-3.5, voyage-3.5-litevoyage-code-3에서 지원됩니다.
    • uint8: 0 ~ 255 범위의 8비트 부호 없는 정수입니다. voyage-4-large, voyage-4, voyage-4-lite, voyage-3-large, voyage-3.5, voyage-3.5-litevoyage-code-3에서 지원됩니다.
    • binary: int8로 표시되는 비트 압축, 양자화된 단일 비트 임베딩 값입니다. 반환된 목록 길이는 output_dimension의 1/8 입니다. 오프셋 바이너리 메서드를 사용합니다. voyage-4-large, voyage-4, voyage-4-lite, voyage-3-large, voyage-3.5, voyage-3.5-litevoyage-code-3에서 지원됩니다.
    • ubinary: uint8로 표시되는 비트 압축, 양자화된 단일 비트 임베딩 값입니다. 반환된 목록 길이는 output_dimension의 1/8 입니다. voyage-4-large, voyage-4, voyage-4-lite, voyage-3-large, voyage-3.5, voyage-3.5-litevoyage-code-3에서 지원됩니다.

    값은 float, int8, uint8, binary 또는 ubinary입니다. 기본값은 float입니다.

  • 인코딩_형식

    응답에서 임베딩이 인코딩되는 형식입니다.

    옵션:

    • null (기본값): 임베딩이 배열로 반환됩니다. output_dtypefloat인 경우 각 임베딩은 부동 소수점 숫자의 배열 입니다. 다른 output_dtype 값(int8, uint8, binary, ubinary)의 경우 각 임베딩은 정수 배열 입니다.
    • base64: 임베딩이 다음 데이터 유형을 사용하여 Base64로 인코딩된 NumPy 배열로 반환됩니다.
      • numpy.float32 output_dtypefloat인 경우
      • numpy.int8 output_dtypeint8 또는 binary인 경우
      • numpy.uint8 output_dtypeuint8 또는 ubinary인 경우

    값이 base64 또는 null입니다.

응답

  • 200 application/json

    Success

    응답 속성 숨기기 응답 속성 표시 객체
    • 객체 문자열 필수 사항

      객체 유형입니다. 항상 'list'를 반환합니다.

      값은 list입니다.

    • 데이터 배열[객체] 필수 사항

      각 입력 텍스트당 하나씩 포함되는 임베딩 객체의 배열.

      데이터 속성 숨기기 데이터 속성 표시 객체
      • 객체 문자열 필수 사항

        객체 유형입니다. 항상 'embedding'을 반환합니다.

        값은 embedding입니다.

      • 임베딩 배열[숫자] | string 필수 사항

        임베딩 벡터입니다. 형식은 encoding_format 매개변수에 따라 달라집니다.

        • encoding_formatnull인 경우: 숫자 배열 (output_dtypefloat인 경우 부동, int8, uint8, binaryubinary에 대한 정수)
        • encoding_formatbase64인 경우: Base64로 인코딩된 string
        다음 중 하나입니다.

        배열 형식(encoding_format이 null인 경우)

        Base64인코딩 형식(encoding_format이 base64인 경우)

      • index integer 필수 사항

        입력 목록에서 이 임베딩의 인덱스 .

    • 모델 문자열 필수 사항

      임베딩을 생성하는 데 사용되는 모델의 이름입니다.

    • 사용법 객체 필수 사항
      사용량 속성 숨기기 사용량 속성 표시 객체
      • total_tokens integer 필수 사항

        모든 입력 텍스트에서 처리된 토큰의 총 개수입니다.

  • 400 application/json

    Invalid Request

    응답 속성 숨기기 응답 속성 표시 객체
    • 세부 정보 문자열

      요청 이 유효하지 않습니다. 이 오류는 잘못된 JSON, 잘못된 매개변수 유형, 잘못된 데이터 유형, 배치 크기가 너무 크거나, 총 토큰이 제한을 초과하거나, 예시 의 토큰이 컨텍스트 길이를 초과하기 때문에 발생할 수 있습니다.

  • 401 application/json

    승인되지 않음

    응답 속성 숨기기 응답 속성 표시 객체
    • 세부 정보 문자열

      잘못된 인증. 모델 API 키가 권한 부여 헤더에 Bearer VOYAGE_API_KEY(으)로 올바르게 지정되어 있는지 확인합니다.

  • 403 application/json

    Forbidden

    응답 속성 숨기기 응답 속성 표시 객체
    • 세부 정보 문자열

      액세스가 금지되어 있습니다. 요청 을 보내는 IP 주소 허용되지 않은 경우 이 문제가 발생할 수 있습니다.

  • 429 application/json

    속도 제한 초과

    응답 속성 숨기기 응답 속성 표시 객체
    • 세부 정보 문자열

      속도 제한을 초과했습니다. 요청 빈도 또는 토큰 사용량이 너무 높습니다. 요청 속도를 낮추거나 잠시 기다렸다가 다시 시도하세요.

  • 500 application/json

    내부 서버 오류

    응답 속성 숨기기 응답 속성 표시 객체
    • 세부 정보 문자열

      서버 에서 예기치 않은 오류가 발생했습니다. 잠시 기다린 후 요청 다시 시도하세요.

  • 502 application/json

    잘못된 게이트웨이

    응답 속성 숨기기 응답 속성 표시 객체
    • 세부 정보 문자열

      서버 업스트림 서버 로부터 잘못된 응답을 받았습니다. 잠시 기다린 후 요청 다시 시도하세요.

  • 503 application/json

    서비스를 사용할 수 없음

    응답 속성 숨기기 응답 속성 표시 객체
    • 세부 정보 문자열

      트래픽 증가 또는 유지 관리로 인해 서비스를 일시적으로 사용할 수 없습니다. 잠시 기다린 후 요청 다시 시도하세요.

  • 504 application/json

    게이트웨이 시간 초과

    응답 속성 숨기기 응답 속성 표시 객체
    • 세부 정보 문자열

      서버 업스트림 서버 로부터 시기적절한 응답을 받지 못했습니다. 잠시 기다린 후 요청 다시 시도하세요.

POST /embeddings
curl \
 --request POST 'https://ai.mongodb.com/v1/embeddings' \
 --header "Authorization: Bearer $ACCESS_TOKEN" \
 --header "Content-Type: application/json" \
 --data '{"input":"string","model":"voyage-context-3","input_type":"query","truncation":true,"output_dimension":256,"output_dtype":"float","encoding_format":"base64"}'
요청 예시
{
  "input": "string",
  "model": "voyage-context-3",
  "input_type": "query",
  "truncation": true,
  "output_dimension": 256,
  "output_dtype": "float",
  "encoding_format": "base64"
}
응답 예시(200)
{
  "object": "list",
  "data": [
    {
      "object": "embedding",
      "embedding": [
        42.0
      ],
      "index": 42
    }
  ],
  "model": "string",
  "usage": {
    "total_tokens": 42
  }
}
응답 예시(400)
{
  "detail": "string"
}
응답 예시(401)
{
  "detail": "string"
}
응답 예시(403)
{
  "detail": "string"
}
응답 예시(429)
{
  "detail": "string"
}
응답 예시(500)
{
  "detail": "string"
}
응답 예시(502)
{
  "detail": "string"
}
응답 예시(503)
{
  "detail": "string"
}
응답 예시(504)
{
  "detail": "string"
}