본문으로 건너뛰기

함수: embed()

function embed<TAdapter>(options): Promise<EmbeddingResult>;

정의 위치: packages/ai/src/activities/embed/index.ts:189

임베딩 활동으로, 텍스트 및 이미지 입력에서 임베딩 벡터를 생성합니다.

단일 항목 또는 항목 배열을 허용합니다. 결과에는 항상 입력 순서대로 각 입력 항목당 하나의 벡터를 포함하는 embeddings 배열이 들어 있습니다.

타입 매개변수

TAdapter

TAdapter extends EmbeddingAdapter&lt;string, any, any, any>

매개변수

options

EmbedOptions&lt;TAdapter>

반환값

Promise&lt;EmbeddingResult>

예제

단일 텍스트 임베딩

import { embed } from '@tanstack/ai'
import { openaiEmbedding } from '@tanstack/ai-openai'

const result = await embed({
adapter: openaiEmbedding('text-embedding-3-small'),
input: 'a red guitar',
})

console.log(result.embeddings[0].vector)

요청한 차원으로 일괄 처리

const result = await embed({
adapter: openaiEmbedding('text-embedding-3-large'),
input: ['a red guitar', 'a blue drum kit'],
dimensions: 1024,
})

멀티모달 임베딩(텍스트 + 이미지를 하나의 벡터로 결합)

import { cohereEmbedding } from '@tanstack/ai-cohere'

// A nested array of parts fuses them into a single vector. The outer array
// is the item list, so this embeds one fused item into one vector.
const result = await embed({
adapter: cohereEmbedding('embed-v4.0'),
input: [
[
{ type: 'text', content: 'product photo' },
{ type: 'image', source: { type: 'data', value: base64, mimeType: 'image/png' } },
],
],
modelOptions: { inputType: 'search_document' },
})