Embeddings and similarity
Close in vector space doesn't mean relevant
Embeddings and Similarity: What a Vector Actually Measures
A user searches for the emergency shutdown procedure. Your system returns a passage titled emergency startup procedure first, with a similarity score of 0.94. The passage on shutdown exists, but it's in fifth position at 0.88. The model receives the wrong procedure first and answers off target. You're tempted to blame the vector database: it did its job perfectly. The two texts share vocabulary, syntax, and domain, and differ by a single word whose meaning is completely inverted.
This is normal embedding behavior, not a defect. An embedding encodes topical proximity, not identity of meaning. Antonyms, negations, and exact numeric references are its structural blind spots. Understanding precisely what a vector captures will save you from spending three weeks swapping models to fix a problem that only hybrid search can solve.
What a Vector Encodes
An embedding model projects a text into a space of several hundred dimensions, trained so that texts humans judge to be related end up geometrically close. No individual dimension has an interpretable meaning: only relative distances matter.
Comments
Comments are powered by GitHub Discussions
Sign in with GitHub to join the discussion