POSTAR /embeddings

Cria incorporações vetoriais para a(s) entrada(s) de texto fornecida(s). Esse endpoint aceita uma única string de texto ou uma lista de strings de texto e retorna suas incorporações vetoriais correspondentes.

Para tarefas de pesquisa e recuperação semântica, defina o parâmetro input_type como query ou document para otimizar a forma como o modelo cria os vetores.

aplicação/json

corpo, corpo Obrigatório

  • Entrada corda | array[string] Obrigatório

    Uma única string de texto ou uma lista de strings de texto a serem incorporadas, como ["I like cats", "I also like dogs"].

    Restrições:

    • Comprimento máximo da lista: 1,000 itens
    • Total máximo de tokens: 1M para voyage-3.5-lite; 320K para voyage-3.5 e voyage-2; 120K para voyage-3-large, voyage-code-3, voyage-finance-2 e voyage-law-2
    Um dos seguintes:

    O comprimento mínimo é 1.

    Pelo menos 1, mas não mais de 1000 elementos. O comprimento mínimo de cada um é 1.

  • Modelo string Obrigatório

    O modelo de incorporação a ser usado. Modelos recomendados: voyage-3-large, voyage-3.5, voyage-3.5-lite, voyage-code-3, voyage-finance-2, voyage-law-2.

    Os valores são voyage-context-3, voyage-3.5, voyage-3.5-lite, voyage-3-large, voyage-code-3, voyage-multimodal-3, voyage-finance-2, voyage-law-2 ou voyage-code-2.

  • input_type corda | zero

    O tipo de texto de entrada. Use esse parâmetro para otimizar incorporações para tarefas de pesquisa e recuperação semânticas.

    Opções:

    • null (padrão): o modelo converte diretamente a entrada em vetores numéricos sem nenhum prompt adicional.
    • query: Utilize quando a entrada representa uma query de pesquisa. O modelo acrescenta "Representar a consulta para recuperar documentos de suporte: " para otimizar a incorporação para recuperação.
    • document: Use quando a entrada representar um documento a ser pesquisado. O modelo acrescenta "Representar o documento para recuperação: " para otimizar a incorporação para recuperação.

    Para tarefas de pesquisa e recuperação semântica, sempre defina este parâmetro como query ou document conforme apropriado. As incorporações geradas com e sem o argumento input_type são compatíveis.

    Os valores query são, document ou nulo.

  • truncamento booleano

    Se deve truncar textos de entrada que excedem o comprimento do contexto.

    • true (padrão): os textos de entrada que excedem o comprimento do contexto são automaticamente truncados antes da vetorização.
    • false: Um erro será retornado se algum texto de entrada exceder o comprimento do contexto.

    O valor padrão é true.

  • output_dimension inteiro | zero

    O número de dimensões para as incorporações de saída.

    A maioria dos modelos suporta apenas uma única dimensão padrão. Os modelos voyage-3-large, voyage-3.5, voyage-3.5-lite e voyage-code-3 suportam os seguintes valores: 256, 512, 1024 (padrão) e 2048.

    Configure para null para utilizar a dimensão padrão do modelo.

    Os valores são,,,256 51210242048ou nulo.

  • output_dtype string

    O tipo de dados para as incorporações retornadas.

    Opções:

    • float (padrão): números de ponto flutuante de precisão única de 32bits. Fornece a mais alta precisão e exatidão de recuperação. Suportado por todos os modelos.
    • int8: 8bits inteiros assinados variando de -128 a 127. Compatível com voyage-3-large, voyage-3.5, voyage-3.5-lite e voyage-code-3.
    • uint8: 8inteiros não assinados de bits, que variam de 0 a 255. Compatível com voyage-3-large, voyage-3.5, voyage-3.5-lite e voyage-code-3.
    • binary: Valores de incorporação de bit único quantizados e compactados em bits representados como int8. O comprimento da lista retornado é 1/8 de output_dimension. Usa o método binário offset. Compatível com voyage-3-large, voyage-3.5, voyage-3.5-lite e voyage-code-3.
    • ubinary: Valores de incorporação de bit único quantizados e compactados em bits representados como uint8. O comprimento da lista retornado é 1/8 de output_dimension. Compatível com voyage-3-large, voyage-3.5, voyage-3.5-lite e voyage-code-3.

    Os valores são float, int8, uint8, binary ou ubinary. O valor padrão é float.

  • codificação_formato corda | zero

    O formato em que as incorporações são codificadas na resposta.

    Opções:

    • null (padrão): as incorporações são retornadas como arrays. Quando output_dtype é float, cada incorporação é uma array de números de ponto flutuante. Para outros valores de output_dtype (int8, uint8, binary, ubinary), cada incorporação é uma array de números inteiros.
    • base64: as incorporações são retornadas como arrays NumPy codificadas em Base64com os seguintes tipos de dados:
      • numpy.float32 quando output_dtype é float
      • numpy.int8 quando output_dtype é int8 ou binary
      • numpy.uint8 quando output_dtype é uint8 ou ubinary

    Os valores são base64 ou nulo.

Respostas

  • 200 aplicação/json

    Sucesso

    Ocultar atributos de resposta Mostrar atributos de resposta objeto
    • objeto string Obrigatório

      O tipo de objeto . Sempre retorna "lista".

      O valor é list.

    • de dados array[objeto] Obrigatório

      Uma array de objetos de incorporação, um para cada texto de entrada.

      Ocultar atributos de dados Mostrar atributos de dados objeto
      • objeto string Obrigatório

        O tipo de objeto . Sempre retorna "incorporação".

        O valor é embedding.

      • Incorporação array[número] | string Obrigatório

        O vetor de incorporação. O formato depende do parâmetro encoding_format:

        • Quando encoding_format é null: uma array de números (flutua quando output_dtype é float, inteiros para int8, uint8, binary e ubinary)
        • Quando encoding_format é base64: Uma string codificada por Base64
        Um dos seguintes:

        Formato da array (quando codificando_formato é nulo)

        Formato codificado por base64(quando encryption_format é base64)

      • index inteiro Obrigatório

        O índice desta incorporação na lista de entrada.

    • Modelo string Obrigatório

      O nome do modelo utilizado para gerar as incorporações.

    • Uso objeto Obrigatório
      Ocultar atributo de uso Mostrar atributo de uso objeto
      • total_tokens inteiro Obrigatório

        O número total de tokens processados em todos os textos de entrada.

  • 400 aplicação/json

    Invalid Request

    Ocultar atributo de resposta Mostrar atributo de resposta objeto
    • detalhe string

      A solicitação é inválida. Esse erro pode ocorrer devido a JSON inválido, tipos de parâmetros inválidos, tipos de dados incorretos, tamanho do lote muito grande, total de tokens que excede o limite ou tokens em um exemplo que excede o comprimento do contexto.

  • 401 aplicação/json

    Não autorizado

    Ocultar atributo de resposta Mostrar atributo de resposta objeto
    • detalhe string

      Autenticação inválida. Certifique-se de que a chave de API do modelo esteja especificada corretamente no cabeçalho de autorização como Bearer YOUR_API_KEY.

  • 403 aplicação/json

    Proibido

    Ocultar atributo de resposta Mostrar atributo de resposta objeto
    • detalhe string

      Acesso proibido. Isso pode ocorrer se o endereço IP do qual você está enviando a solicitação não for permitido.

  • 429 aplicação/json

    Limite de taxa excedido

    Ocultar atributo de resposta Mostrar atributo de resposta objeto
    • detalhe string

      Limite de taxa excedido. Sua frequência de solicitação ou uso de token é muito alto. Reduza sua taxa de solicitações ou aguarde antes de tentar novamente.

  • 500 aplicação/json

    Internal Server Error

    Ocultar atributo de resposta Mostrar atributo de resposta objeto
    • detalhe string

      Ocorreu um erro inesperado no servidor. Tente sua solicitação novamente após uma breve espera.

  • 502 aplicação/json

    Gateway incorreto

    Ocultar atributo de resposta Mostrar atributo de resposta objeto
    • detalhe string

      O servidor recebeu uma resposta inválida de um servidor upstream. Tente sua solicitação novamente após uma breve espera.

  • 503 aplicação/json

    Serviço não disponível

    Ocultar atributo de resposta Mostrar atributo de resposta objeto
    • detalhe string

      O serviço está temporariamente indisponível devido a alto tráfego ou manutenção. Tente sua solicitação novamente após uma breve espera.

  • 504 aplicação/json

    Tempo limite do gateway

    Ocultar atributo de resposta Mostrar atributo de resposta objeto
    • detalhe string

      O servidor não recebeu uma resposta atempada de um servidor upstream. Tente sua solicitação novamente após uma breve espera.

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"}'
Exemplos de solicitação
{
  "input": "string",
  "model": "voyage-context-3",
  "input_type": "query",
  "truncation": true,
  "output_dimension": 256,
  "output_dtype": "float",
  "encoding_format": "base64"
}
Exemplos de resposta (200)
{
  "object": "list",
  "data": [
    {
      "object": "embedding",
      "embedding": [
        42.0
      ],
      "index": 42
    }
  ],
  "model": "string",
  "usage": {
    "total_tokens": 42
  }
}
Exemplos de resposta (400)
{
  "detail": "string"
}
Exemplos de resposta (401)
{
  "detail": "string"
}
Exemplos de resposta (403)
{
  "detail": "string"
}
Exemplos de resposta (429)
{
  "detail": "string"
}
Exemplos de resposta (500)
{
  "detail": "string"
}
Exemplos de resposta (502)
{
  "detail": "string"
}
Exemplos de resposta (503)
{
  "detail": "string"
}
Exemplos de resposta (504)
{
  "detail": "string"
}