AI SDK CoreembedMany

embedMany()

Embed several values using an embedding model. The type of the value is defined by the embedding model.

embedMany automatically splits large requests into smaller chunks if the model has a limit on how many embeddings can be generated in a single call.

import { openai } from '@ai-sdk/openai';
import { embedMany } from 'ai';
const { embeddings } = await embedMany({
model: openai.embedding('text-embedding-3-small'),
values: [
'sunny day at the beach',
'rainy afternoon in the city',
'snowy night in the mountains',
],
});

Import

import { embedMany } from "ai"

API Signature

Parameters

model:

EmbeddingModel
The embedding model to use. Example: openai.embedding('text-embedding-3-small')

values:

Array<VALUE>
The values to embed. The type depends on the model.

maxRetries?:

number
Maximum number of retries. Set to 0 to disable retries. Default: 2.

abortSignal?:

AbortSignal
An optional abort signal that can be used to cancel the call.

headers?:

Record<string, string>
Additional HTTP headers to be sent with the request. Only applicable for HTTP-based providers.

Returns

values:

Array<VALUE>
The values that were embedded.

embeddings:

number[][]
The embeddings. They are in the same order as the values.