embed()
Generate an embedding for a single value using an embedding model.
This is ideal for use cases where you need to embed a single value to e.g. retrieve similar items or to use the embedding in a downstream task.
import { embed } from 'ai';
const { embedding } = await embed({ model: 'openai/text-embedding-3-small', value: 'sunny day at the beach',});Import
import { embed } from "ai"API Signature
Parameters
model:
EmbeddingModel
value:
VALUE
maxRetries?:
number
abortSignal?:
AbortSignal
headers?:
Record<string, string>
providerOptions?:
ProviderOptions
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:
{ headers?: Record<string, string>; body?: unknown } | undefined
Returns
value:
VALUE
embedding:
number[]
usage:
EmbeddingModelUsage
EmbeddingModelUsage
tokens:
number
warnings:
Warning[]
response?:
Response
Response
headers?:
Record<string, string>
body?:
unknown
providerMetadata?:
ProviderMetadata | undefined