Cria incorporações vetoriais para entradas multimodais consistindo em texto, imagens ou uma combinação de ambos.
Esse ponto de extremidade aceita entradas que podem conter texto e imagens em qualquer combinação e retorna suas representações vetoriais.
corpo, corpo
Obrigatório
-
Uma lista de entradas multimodais a serem vetorizadas.
Uma única entrada na lista é um dicionário contendo uma única chave
"content", cujo valor representa uma sequência de texto e imagens.- O valor de
"content"é uma lista de dicionários, cada um representando um único fragmento de texto ou imagem. Os dicionários têm quatro chaves possíveis: - tipo: especifica o tipo da parte do conteúdo. Os valores permitidos são
text,image_urlouimage_base64. - texto: somente presente quando
typeétext. O valor deve ser uma string de texto. - imagem_base64: somente presente quando
typeéimage_base64. O valor deve ser uma imagem codificada em Base64no formato de URL de dadosdata:[<mediatype>];base64,<data>. Osmediatypesatualmente suportados são:image/png,image/jpeg,image/webpeimage/gif. - image_url: presente apenas quando
typeéimage_url. O valor deve ser um URL com link para a imagem. Aceitamos imagens PNG, Jpeg, WEBP e Gif. - Nota: Somente uma das chaves,
image_base64ouimage_url, deve estar presente em cada dicionário para dados de imagem. É necessária consistência em uma solicitação, o que significa que cada solicitação deve usarimage_base64ouimage_urlexclusivamente para imagens, não ambos.
Exemplo de carga útil em que
inputscontém uma imagem como URL:A lista
inputscontém uma única entrada, que consiste em um texto e uma imagem (que é fornecida por meio de um URL).{ "inputs": [ { "content": [ { "type": "text", "text": "This is a banana." }, { "type": "image_url", "image_url": "https://raw.githubusercontent.com/voyage-ai/voyage-multimodal-3/refs/heads/main/images/banana.jpg" } ] } ], "model": "voyage-multimodal-3.5" }Exemplo de carga útil em que
inputscontém uma imagem de base64:Abaixo está um exemplo equivalente ao acima, onde o conteúdo da imagem é uma imagem Base64 em vez de um URL. (As imagens base64 podem ser longas, então o exemplo mostra somente uma versão reduzida.)
{ "inputs": [ { "content": [ { "type": "text", "text": "This is a banana." }, { "type": "image_base64", "image_base64": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAA..." } ] } ], "model": "voyage-multimodal-3.5" }As seguintes restrições se aplicam à lista
inputs:- A lista não deve conter mais de 1000 entradas.
- Cada imagem não deve conter mais de 16 milhões de pixels ou ser maior que 20 MB de tamanho.
- Com cada 560 pixels de uma imagem sendo contados como um token, cada entrada na lista não deve exceder 32,000 tokens e o número total de tokens em todas as entradas não deve exceder 320,000.
Pelo menos
1, mas não mais de1000elementos. - O valor de
-
O modelo de integração multimodal a ser usado. Modelo recomendado:
voyage-multimodal-3.5.Os valores são
voyage-multimodal-3.5ouvoyage-multimodal-3. -
Tipo de entrada. Padrão é
null. Outras opções:query,document.- Quando
input_typeénull, o modelo de incorporação converte diretamente oinputsem vetores numéricos. Para fins de recuperação ou pesquisa, onde uma "query", que pode ser texto ou imagem nesse caso, pesquisa informações relevantes em uma coleção de dados conhecida como "documentos", especifique se seusinputssão queries ou documentos configurandoinput_typeaqueryoudocument, respectivamente. Nesses casos, o Voyage acrescenta automaticamente um prompt ao seuinputsantes de vetorizá-los, criando vetores mais personalizados para tarefas de recuperação ou pesquisa. Como as entradas podem ser multimodais, "queries" e "documentos" podem ser texto, imagens ou um intercalação de ambas as formas. As incorporações geradas com e sem o argumentoinput_typesão compatíveis. - Para maior clareza, os seguintes prompts são anexados à sua entrada:
- Para
query, o prompt é "Representar a query para recuperar documentos de suporte: ". - Para
document, o prompt é "Representar o documento para recuperação: ".
Os valores são
query,documentou nulo. - Quando
-
Se devem truncar as entradas para caber dentro do comprimento do contexto. Padrão é
true.- Se
true, as entradas de comprimento excedente são truncadas para caber no comprimento do contexto antes da vetorização pelo modelo de incorporação. Se o truncamento ocorrer no meio de uma imagem, toda a imagem será descartada. - Se
false, ocorrerá um erro se qualquer entrada exceder o comprimento do contexto.
O valor padrão é
true. - Se
-
Formato em que as incorporações são codificadas. Padrão é
null.- Se
null, as incorporações serão representadas como uma lista de números de ponto flutuante. - Se
base64, as incorporações são representadas como uma array NumPy codificada em Base64de flutuações de precisão única.
Os valores são
base64ou nulo. - Se
curl \
--request POST 'https://ai.mongodb.com/v1/multimodalembeddings' \
--header "Authorization: Bearer $ACCESS_TOKEN" \
--header "Content-Type: application/json" \
--data '{"inputs":[{"content":[{"type":"text","text":"string"}]}],"model":"voyage-multimodal-3.5","input_type":"query","truncation":true,"output_encoding":"base64"}'
{
"inputs": [
{
"content": [
{
"type": "text",
"text": "string"
}
]
}
],
"model": "voyage-multimodal-3.5",
"input_type": "query",
"truncation": true,
"output_encoding": "base64"
}
{
"object": "list",
"data": [
{
"object": "embedding",
"embedding": [
42.0
],
"index": 42
}
],
"model": "string",
"usage": {
"text_tokens": 42,
"image_pixels": 42,
"total_tokens": 42
}
}
{
"detail": "string"
}
{
"detail": "string"
}
{
"detail": "string"
}
{
"detail": "string"
}
{
"detail": "string"
}
{
"detail": "string"
}
{
"detail": "string"
}
{
"detail": "string"
}