title, type, last_updated
| title |
type |
last_updated |
| Vector Embedding |
concept |
2026-04-22 |
Definition
将文本、图片、音频等非结构化数据通过深度学习模型转换为高维稠密向量(dense vector),使语义相似的内容在向量空间中彼此接近。
How It Works
- 编码(Encoding):文本经过 embedding 模型(如 BERT、OpenAI text-embedding-3-small、BGE-m3)处理,输出固定维度的实数向量(常见维度:384/768/1536/3072)
- 存储:向量存入向量数据库(Qdrant、Pinecone、Weaviate)或支持向量索引的数据库(pgvector、SQLite + sqlite-vss)
- 检索:查询时将查询文本同样编码为向量,在向量空间中搜索最近邻(ANN 或 KNN)
Key Properties
| 属性 |
说明 |
| 维度(dimensionality) |
越高表达能力越强,但存储/计算成本更高 |
| 语义保持(semantic preservation) |
同义词/近义表达在空间中接近 |
| 可微性 |
支持通过梯度下降持续优化(对比学习) |
| 跨模态 |
CLIP 等模型可实现图文跨模态检索 |
Core Operations
- 余弦相似度(cosine similarity):衡量方向一致性,值域 [-1, 1]
- 点积(dot product):值域无界,embedding 已归一化时等价于余弦相似度
- 欧氏距离(L2 distance):衡量绝对距离
Applications
Tools & Models
- OpenAI text-embedding-3-small:1536 维,性价比最高($0.02/1M tokens)
- BGE-m3:支持中文多语言,开源(FlagEmbedding)
- nomic-embed-text:开源 768 维,支持本地部署
- sqlite-vss:SQLite 扩展,支持向量 ANN 搜索
- Qdrant:开源向量数据库,支持过滤条件
Connections