0Pricing
Vector Databases: Pinecone, Weaviate & pgvector · Lektion

Distanzmetriken in pgvector auswählen

Verstehen Sie die Distanzoperatoren für Cosine, L2 und Inner Product in pgvector und lernen Sie, den passenden Operator für Ihre Embeddings auszuwählen.

Distanzmetriken in pgvector auswählen ist eine kostenlose Vector Databases: Pinecone, Weaviate & pgvector-Lektion auf CoddyKit. Dies ist Lektion 4 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Vector Databases: Pinecone, Weaviate & pgvector-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Vector Databases: Pinecone, Weaviate & pgvector-Kurs umfasst insgesamt 4 Lektionen.

Teile dieser Lektion wurden noch nicht übersetzt und werden auf Englisch angezeigt.

Why Distance Matters

Similarity search ranks vectors by distance. The metric you choose must match how your embedding model was trained, or results will be subtly wrong.

The Three Operators

pgvector provides three distance operators:

  • <-> Euclidean (L2) distance
  • <=> Cosine distance
  • <#> Negative inner product
SELECT '[1,2,3]'::vector <=> '[1,2,4]'::vector AS cosine_distance;

Cosine Distance

Cosine measures angle, ignoring magnitude. It is the default for most text embedding models like OpenAI and Sentence Transformers.

SELECT id, embedding <=> '[0.1,0.2,0.3]'::vector AS dist
FROM items
ORDER BY dist
LIMIT 5;

Euclidean (L2) Distance

L2 measures straight-line distance and is sensitive to magnitude. Use it when vector length carries meaning, such as raw feature vectors.

SELECT id, embedding <-> '[0.1,0.2,0.3]'::vector AS dist
FROM items
ORDER BY dist
LIMIT 5;

Inner Product

The inner product operator <#> returns the negative dot product (so smaller is more similar). It is fastest and ideal for normalized vectors.

SELECT id, (embedding <#> '[0.1,0.2,0.3]'::vector) * -1 AS similarity
FROM items
ORDER BY embedding <#> '[0.1,0.2,0.3]'::vector
LIMIT 5;

Match Metric to Model

Always check your embedding model's documentation:

  • OpenAI text-embedding-3: cosine
  • Normalized vectors: inner product (equivalent to cosine, faster)
  • Geometric/spatial features: L2

Normalization Trick

If your vectors are unit-normalized, cosine and inner product give the same ranking. Inner product is cheaper, so normalize once at insert time.

-- Normalize before insert in app code, then use <#>
UPDATE items SET embedding = l2_normalize(embedding);

Metric in Indexes

Indexes are metric-specific. You must declare the operator class so the index matches your query operator.

CREATE INDEX ON items
USING hnsw (embedding vector_cosine_ops);

Mismatched Operators

If your index uses vector_l2_ops but you query with <=>, Postgres ignores the index and does a slow sequential scan. Keep them aligned.

Verifying Index Usage

Use EXPLAIN to confirm the planner uses your vector index for the chosen metric.

EXPLAIN ANALYZE
SELECT id FROM items
ORDER BY embedding <=> '[0.1,0.2,0.3]'::vector
LIMIT 5;

Summary of Choices

Rule of thumb:

  • Text/semantic search: cosine
  • Pre-normalized vectors: inner product
  • Raw numeric features: L2

Quick Check

Pick the right metric.

Recap

You learned pgvector's three distance operators, when to use cosine, L2, and inner product, and why your index operator class must match your query operator for fast searches.

Häufig gestellte Fragen

Ist die Lektion „Distanzmetriken in pgvector auswählen“ kostenlos?

Ja — der vollständige Text von „Distanzmetriken in pgvector auswählen“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Vector Databases: Pinecone, Weaviate & pgvector-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Vector Databases: Pinecone, Weaviate & pgvector-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Distanzmetriken in pgvector auswählen“?

Verstehen Sie die Distanzoperatoren für Cosine, L2 und Inner Product in pgvector und lernen Sie, den passenden Operator für Ihre Embeddings auszuwählen. Du übst Vector Databases: Pinecone, Weaviate & pgvector mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um Vector Databases: Pinecone, Weaviate & pgvector zu starten?

Keine Vorkenntnisse erforderlich. Vector Databases: Pinecone, Weaviate & pgvector auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 4 von 4.

Wie lange dauert die Lektion „Distanzmetriken in pgvector auswählen“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser Vector Databases: Pinecone, Weaviate & pgvector-Lektion Code schreiben und ausführen?

Ja. Jede Vector Databases: Pinecone, Weaviate & pgvector-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. pgvector-Erweiterung einrichten
  2. Vektoren in PostgreSQL speichern
  3. Ähnlichkeitsabfragen ausführen
  4. Distanzmetriken in pgvector auswählen
← Zurück zu Vector Databases: Pinecone, Weaviate & pgvector