Embedding 向量化入门:让机器「理解」语义
Embedding 原理 · 语义搜索 · 相似度 · 向量模型选型
核心结论:Embedding 把文字变成空间里的坐标,「意思越近、距离越近」。它是语义搜索、推荐、聚类与 RAG 的共同地基。
一、一句话理解向量
想象把每句话画到一张多维地图上:「猫」和「小猫」离得很近,「猫」和「股票」离得很远。Embedding 模型做的就是这件「语义测绘」的事,输出一串数字坐标。
二、它能干什么
| 场景 | 做法 |
|---|---|
| 语义搜索 | 把查询与文档都向量化,找最近的片段 |
| RAG 检索 | 见RAG 详解 |
| 去重/聚类 | 按距离分组相似内容 |
| 推荐 | 用兴趣向量匹配内容向量 |
三、选型与落地要点
- 语言匹配:中文业务选对中文友好的向量模型,跨语言检索需模型本身支持。
- 维度权衡:768-1536 维对多数场景够用,维度的提升边际递减。
- 归一化:推理时统一做 L2 归一化,余弦相似度才稳定可比。
- 版本固定:索引用的向量模型版本不要随意更换,否则新旧向量不可比。
提示向量模型与生成模型是两套独立模型:一个负责「理解/检索」,一个负责「生成」。它们常配合使用,但选型互不影响。
四、常见问题
同一句话每次向量一样吗?
同一模型、同一参数下是确定的;换模型或开启非确定性选项是不同的,所以索引与查询必须用同一个模型。
长文档怎么向量化?
先切片再逐段向量化(见 RAG 的切片策略),检索时返回最相关的若干段。