import type * as VoyageAI from "../../index.js";
/**
* @example
* {
* input: "input",
* model: "model"
* }
*/
export interface EmbedRequest {
/** A single text string, or a list of texts as a list of strings. Currently, we have two constraints on the list:
- The maximum length of the list is 128.
- The total number of tokens in the list is at most 320K for `voyage-2`, and 120K for `voyage-large-2`, `voyage-finance-2`, `voyage-multilingual-2`, `voyage-law-2`, and `voyage-code-2`.
*/
input: VoyageAI.EmbedRequestInput;
/** Name of the model. Recommended options: `voyage-2`, `voyage-large-2`, `voyage-finance-2`, `voyage-multilingual-2`, `voyage-law-2`, `voyage-code-2`. */
model: string;
/** Type of the input text. Defaults to `null`. Other options: `query`, `document`. */
inputType?: VoyageAI.EmbedRequestInputType;
/** Whether to truncate the input texts to fit within the context length. Defaults to `true`. - If `true`, over-length input texts will be truncated to fit within the context length, before vectorized by the embedding model.
- If `false`, an error will be raised if any given text exceeds the context length.
*/
truncation?: boolean;
/** Format in which the embeddings are encoded. We support two options: - If not specified (defaults to `null`): the embeddings are represented as lists of floating-point numbers;
- `base64`: the embeddings are compressed to [base64](https://docs.python.org/3/library/base64.html) encodings.
*/
encodingFormat?: VoyageAI.EmbedRequestEncodingFormat;
/** The number of dimensions for resulting output embeddings. Defaults to `null`. */
outputDimension?: number;
/** The data type for the embeddings to be returned. Defaults to `float`. Other options: `int8`, `uint8`, `binary`, `ubinary`. `float` is supported for all models. `int8`, `uint8`, `binary`, and `ubinary` are supported by `voyage-3-large` and `voyage-code-3`. Please see our guide for more details about output data types. */
outputDtype?: VoyageAI.EmbedRequestOutputDtype;
}