embedMany()
Embed several values using an 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 { embedMany } from 'ai';
const { embeddings } = await embedMany({ model: 'openai/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
values:
Array<string>
maxRetries?:
number
abortSignal?:
AbortSignal
headers?:
Record<string, string>
providerOptions?:
ProviderOptions
maxParallelCalls?:
number
telemetry?:
TelemetryOptions
TelemetryOptions
isEnabled?:
boolean
recordInputs?:
boolean
recordOutputs?:
boolean
functionId?:
string
integrations?:
Telemetry | Telemetry[]
onStart?:
(event: EmbedStartEvent) => PromiseLike<void> | void
EmbedStartEvent
callId:
string
operationId:
string
model:
{ provider: string; modelId: string }
value:
string | Array<string>
maxRetries:
number
abortSignal:
AbortSignal | undefined
headers:
Record<string, string | undefined> | undefined
providerOptions:
ProviderOptions | undefined
onEnd?:
(event: EmbedEndEvent) => PromiseLike<void> | void
EmbedEndEvent
callId:
string
operationId:
string
model:
{ provider: string; modelId: string }
value:
string | Array<string>
embedding:
Embedding | Array<Embedding>
usage:
EmbeddingModelUsage
warnings:
Array<Warning>
providerMetadata:
ProviderMetadata | undefined
response:
Array<{ headers?: Record<string, string>; body?: unknown } | undefined>
Returns
values:
Array<string>
embeddings:
number[][]
usage:
EmbeddingModelUsage
EmbeddingModelUsage
tokens:
number
warnings:
Warning[]
providerMetadata?:
ProviderMetadata | undefined
responses?:
Array<{ headers?: Record<string, string>; body?: unknown } | undefined>