Vector embedding — dense numeric representation (массив floats) любого объекта: текста, картинки, аудио. 512-3072 dimensions обычно. Пример: "dog" → [0.23, -0.15, 0.67, ...]. Similar objects → close vectors (cosine similarity > 0.8). Используется в semantic search, clustering, RAG, image similarity. Models: OpenAI text-embedding-3 (3072 dim), Cohere embed-v3, jina-embeddings-v3 (open), bge-m3 (multilingual).
Ниже: подробности, пример, смежные термины, FAQ.
# OpenAI Embedding API
import { OpenAI } from 'openai';
const openai = new OpenAI();
const response = await openai.embeddings.create({
model: 'text-embedding-3-large',
input: 'TCP vs UDP protocols'
});
console.log(response.data[0].embedding); // [0.01, -0.23, ..., 0.05] — 3072 floatsCosine (нормализованные vectors) — доминирует для text/nlp. Euclidean — для images/raw features. Dot product — если vectors pre-normalized.
3072 dim ≫ 512 dim в recall на complex queries, но 6x storage + compute. Balance по dataset size + accuracy requirement.
Embedding search — fast but approximate. Rerank (Cohere Rerank, Voyage rerank) — slower, but лучше на top-5. Pipeline: retrieve 50 → rerank top 10.