Embeddings
Embeddings are the bridge between human-readable data and vector search. They transform text, images, or other data into numerical vectors that capture semantic meaning.
How Embeddings Work
An embedding model takes input data and produces a fixed-size vector:
"The quick brown fox" → [0.023, -0.145, 0.089, ..., 0.012] (1536 dimensions)
Key properties:
- Semantically similar inputs produce similar vectors — "happy" and "joyful" will be close together
- Fixed dimensionality — every output is the same size regardless of input length
- Dense representations — most values are non-zero, unlike sparse vectors
Text Embeddings
Text embedding models convert words, sentences, or documents into vectors:
# These will produce similar vectors:
embed("How do I reset my password?")
embed("I forgot my password, how to change it?")
# This will produce a different vector:
embed("What's the weather forecast for tomorrow?")
Choosing an Embedding Model
| Factor | Recommendation |
|---|---|
| General English text | OpenAI text-embedding-3-small (1536d) |
| Multilingual content | VectorAmp-large (2560d) or text-embedding-3-large |
| Cost-sensitive | VectorAmp-small (768d) — included in your plan |
| Maximum accuracy | text-embedding-3-large (3072d) |
| Low latency | VectorAmp-small (768d) |
Important Considerations
Consistency
Always use the same model for inserting and searching. Vectors from different models are not compatible.
Dimensionality Matching
Your dataset's configured dimensions must match the embedding model's output dimensions.
Normalization
Most modern embedding models output normalized vectors (unit length). If using a custom model, normalize your vectors for best results with cosine similarity.