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.

experimental_telemetry?:

TelemetrySettings
Telemetry configuration. Experimental feature.
TelemetrySettings

isEnabled?:

boolean
Enable or disable telemetry. Disabled by default while experimental.

recordInputs?:

boolean
Enable or disable input recording. Enabled by default.

recordOutputs?:

boolean
Enable or disable output recording. Enabled by default.

functionId?:

string
Identifier for this function. Used to group telemetry data by function.

metadata?:

Record<string, string | number | boolean | Array<null | undefined | string> | Array<null | undefined | number> | Array<null | undefined | boolean>>
Additional information to include in the telemetry data.

Returns

values:

Array<VALUE>
The values that were embedded.

embeddings:

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

usage:

EmbeddingTokenUsage
The token usage for generating the embeddings.
EmbeddingTokenUsage

tokens:

number
The total number of input tokens.