Logo
Classes

VoyageAIEmbedding

Defined in: providers/voyage-ai/src/embedding.ts:16

VoyageAIEmbedding is an alias for VoyageAI that implements the BaseEmbedding interface.

Extends

  • BaseEmbedding

VoyageAIEmbedding<Options>(nodes, options?): Promise<BaseNode<Metadata>[]>

Defined in: providers/voyage-ai/src/embedding.ts:16

VoyageAIEmbedding is an alias for VoyageAI that implements the BaseEmbedding interface.

Type Parameters

Options extends Record<string, unknown>

Parameters

nodes

BaseNode<Metadata>[]

options?

Options

Returns

Promise<BaseNode<Metadata>[]>

Constructors

new VoyageAIEmbedding()

new VoyageAIEmbedding(init?): VoyageAIEmbedding

Defined in: providers/voyage-ai/src/embedding.ts:68

Parameters

init?

Partial<VoyageAIEmbedding>

Returns

VoyageAIEmbedding

Overrides

BaseEmbedding.constructor

Properties

model

model: string

Defined in: providers/voyage-ai/src/embedding.ts:22

VoyageAI model to use

Default

"voyage-3"

See

https://docs.voyageai.com/docs/embeddings


apiKey

apiKey: string

Defined in: providers/voyage-ai/src/embedding.ts:30

VoyageAI API token

See

https://docs.voyageai.com/docs/api-key-and-installation If not provided, it will try to get the token from the environment variable VOYAGE_API_KEY


maxRetries

maxRetries: number

Defined in: providers/voyage-ai/src/embedding.ts:36

Maximum number of retries

Default

5

timeout

timeout: number

Defined in: providers/voyage-ai/src/embedding.ts:42

Timeout in seconds

Default

60

truncation

truncation: boolean

Defined in: providers/voyage-ai/src/embedding.ts:48

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.


useInputTypes

useInputTypes: undefined | "query" | "document" | "both"

Defined in: providers/voyage-ai/src/embedding.ts:61

VoyageAI supports document and query as input types, or it can be left undefined. Using an input type prepends the input with a prompt before embedding. Example from their docs: using "query" adds "Represent the query for retrieving supporting documents:" VoyageAI says these types improve performance, but it will add to token usage. Embeddings with input types are compatible with those that don't use them. Setting this to query will use the query input type for getQueryEmbedding(s). Setting this to document will use the document input type for getTextEmbedding(s). Setting this to both will do both of the above. By default, this is undefined, which means no input types are used.

See

https://docs.voyageai.com/docs/embeddings

Default

undefined

client

client: VoyageAIClient

Defined in: providers/voyage-ai/src/embedding.ts:66

VoyageAI client

Methods

getTextEmbedding()

getTextEmbedding(text): Promise<number[]>

Defined in: providers/voyage-ai/src/embedding.ts:82

Parameters

text

string

Returns

Promise<number[]>

Overrides

BaseEmbedding.getTextEmbedding


getQueryEmbedding()

getQueryEmbedding(query): Promise<null | number[]>

Defined in: providers/voyage-ai/src/embedding.ts:87

Parameters

query

MessageContentDetail

Returns

Promise<null | number[]>

Overrides

BaseEmbedding.getQueryEmbedding


getTextEmbeddings()

getTextEmbeddings(texts): Promise<number[][]>

Defined in: providers/voyage-ai/src/embedding.ts:99

Parameters

texts

string[]

Returns

Promise<number[][]>

Overrides

BaseEmbedding.getTextEmbeddings


getQueryEmbeddings()

getQueryEmbeddings(queries): Promise<number[][]>

Defined in: providers/voyage-ai/src/embedding.ts:103

Parameters

queries

string[]

Returns

Promise<number[][]>