Normalizacja embeddingów
EmbeddingiNormalizacja embeddingów to proces skalowania wektorów embeddingowych do jednolitej skali, zapewniający porównywalność między wektorami. Embeddingi 3072-wymiarowe (np. OpenAI text-embedding-3-large) są normalizowane 'out of the box' – każdy wektor ma długość 1, co oznacza, że cosine similarity i dot product dają identyczne wyniki.
Natomiast embeddingi 768-wymiarowe (np. Gemini text-embedding-004) mogą wymagać ręcznej normalizacji, na przykład przez UMAP (redukcja do 5 wymiarów) przed klasteryzacją K-means. Bez normalizacji klasteryzacja może dawać nierówne klastry, bo algorytm jest wrażliwy na skalę danych.
W praktyce: Gemini normalizuje wektory dla cosine similarity, więc przy porównywaniu par jest OK, ale przy klasteryzacji K-means dodatkowa normalizacja UMAP poprawia wyniki. W praktyce gdy porównujesz pary (similarity, duplikaty) – normalizacja jest opcjonalna; gdy klasteryzujesz – normalizacja jest zalecana.