v1

latestOpenAPI 3.0.2MIT2026-07-24141061.6 KB
Inference

Multimodal embedding models

The Voyage multimodal embedding endpoint returns vector representations for a given list of multimodal inputs consisting of text, images, or an interleaving of both modalities.

<blockquote style="background-color: #e6f7ff; border-left: 4px solid #91d5ff;"> <strong>Important:</strong> Starting December 8, 2025, the following constraints apply to all URL parameters (e.g., <code>image_url</code>) <ul> <li> Limit the number of redirects. </li> <li> Require that responses include a content-length header. </li> <li> Respect robots.txt to prevent unauthorized scraping. </li> </ul> </blockquote>
post/multimodalembeddings

Request body

modelstring required

Name of the model. Recommended options: voyage-multimodal-3.5, voyage-multimodal-3.

input_type'null' | 'query' | 'document' nullable

Type of the input. Defaults to null. Other options: query, document. <ul> <li> When input_type is null, the embedding model directly converts the inputs into numerical vectors. For retrieval/search purposes, where a "query", which can be text or image in this case, is used to search for relevant information among a collection of data referred to as "documents," we recommend specifying whether your inputs are intended as queries or documents by setting input_type to query or document, respectively. In these cases, Voyage automatically prepends a prompt to your inputs before vectorizing them, creating vectors more tailored for retrieval/search tasks. Since inputs can be multimodal, "queries" and "documents" can be text, images, or an interleaving of both modalities. Embeddings generated with and without the input_type argument are compatible. </li> <li> For transparency, the following prompts are prepended to your input. </li>

<ul> <li> For <code>query</code>, the prompt is <i>"Represent the query for retrieving supporting documents: ".</i> </li> <li> For <code>document</code>, the prompt is <i>"Represent the document for retrieval: ".</i> </li> </ul> <ul>
truncationboolean

Whether to truncate the inputs to fit within the context length. Defaults to true. <ul> <li> If true, an over-length input will be truncated to fit within the context length before being vectorized by the embedding model. If the truncation happens in the middle of an image, the entire image will be discarded. </li> <li> If false, an error will be raised if any input exceeds the context length. </li> </ul>

output_encoding'null' | 'base64' nullable

Format in which the embeddings are encoded. Defaults to null. <ul> <li> If null, the embeddings are represented as a list of floating-point numbers. </li> <li> If base64, the embeddings are represented as a Base64-encoded NumPy array of single-precision floats. </li> </ul>

Response

Success

objectstring

The object type, which is always list.

modelstring

Name of the model.