向量检索:AI 是如何进行语义匹配的?
摘要: 向量检索通过将文本/图片转化为数字向量,利用语义相似度而非关键词匹配查找相关内容,是RAG(检索增强生成)的核心技术。其流程包括:1) 将知识库内容转为向量;2) 用户提问向量化;3) 计算向量距离(如余弦相似度)返回最匹配结果。相比传统关键词搜索,向量检索能理解语义关联(如“重置密码”与“修改登录凭证”),适用于长文档、技术知识库等场景。主流方案结合Embedding模型(如BAAI、O
向量检索,就是先把文本/图片等内容变成“数字向量”,再用“向量之间的相似度”来找最相近的内容,而不是用关键字匹配。向量检索(Vector Search)= 用数学的方式,让 AI 找到“语义最相近”的内容,而不是靠关键词匹配。
它是 RAG(检索增强生成) 的核心技术。
🌰 现实例子
假设你问 AI:
如何重置我的 账号 密码?
传统关键词搜索会去找包含:
- “重置”
- “账号”
- “密码”
这些关键词的文章。
但是如果文章写的是:
如何修改登录凭证?
关键词完全不同,但意思一样。
➡ 关键词搜索找不到
➡ 向量检索可以找到
因为“重置密码”和“修改登录凭证”在 AI 的语义空间里非常接近。
一、 向量是什么?
向量 = 数字数组,例如:
[0.2, 0.13, 0.98, -0.33, ...(几千维)]
AI(例如: text-embedding 模型)会把一段文本变成一个向量。
text-embedding 模型是什么?
text-embedding 模型 = 把文本转换成向量的模型。
它不生成回答,而是把一句话变成一组数字(向量),让机器能理解语义相似度,用于向量检索、RAG、推荐等任务。
例如:
| 文本 | 转成 embedding(简化示例) |
|---|---|
| “苹果手机” | [0.12, -0.88, 0.15, …] |
| “iPhone 15” | [0.10, -0.91, 0.16, …] |
| “香蕉” | [0.77, 0.01, -0.45, …] |
你会看到:
- “苹果手机” 和 “iPhone 15” 的向量几乎一样(语义接近)
- 和 “香蕉” 的向量差得很远(语义不接近)
这就是 embedding 模型的作用。
它不是用来对话的,普通 ChatGPT 模型会回答问题(Chat Completion)。
text-embedding 模型:
- ❌ 不会聊天
- ❌ 不会生成自然语言
- ✔ 专门负责生成向量(embedding)
📌 它的主要用途:
-
向量检索(RAG 的核心)
把所有文档转成向量,则可以根据相似度找到“语义最接近”的文档。
查询:“如何控糖?”
系统会找到与控糖、血糖、饮食控制相关的段落。
-
推荐系统:电商、短视频都用 embedding 判断“你会不会喜欢某个内容”。
-
相似文本检测 :判断两段话是不是说同样的意思。
-
语义聚类:把主题类似的文本分在一起。
embedding = AI 世界里的“语言坐标系”
只有把文本变成向量,LLM 才能真正“懂”这段信息。
二、向量检索的工作流程(最重要)
📌 步骤 1:把所有知识库内容变成向量(Embedding)
例如,把 1000 篇文档变成:
文章1 → 向量A1
文章2 → 向量A2
...
文章1000 → 向量A1000
📌 步骤 2:用户提问也转成向量
用户提问:
忘记密码怎么办?
Embedding → 向量 Q(Query)
📌 步骤 3:用数学方式找“向量距离最近”的文档
最常用数学方法:
- cosine similarity(余弦相似度)
| 数值 | 意义 |
|---|---|
| 1.0 | 完全相同 |
| 0.9 | 很相似(很近) |
| 0.4 | 不太相似(较远) |
| 0.0 | 完全无关 |
| -1 | 完全相反 |
- L2 距离
- 内积
然后找出最相似的几篇文档,例如:
Q 和 A53 的距离 = 0.91(很近)
Q 和 A829 的距离 = 0.88
Q 和 A17 的距离 = 0.42
输出:
A53、A829
这就是“检索增强”的资料。
传统关键词搜索(完全靠文字):
| 搜索 | 文档内容 | 匹配? |
|---|---|---|
| 重置密码 | 修改登录凭证 | ❌ 不匹配 |
| 重置密码 | 密码重置步骤 | ✔ 匹配 |
| 重置密码 | 修改密码的方法 | ❌ 关键词不同 |
关键词不一致,全都错过。
向量检索(靠语义)
| 问题向量 vs 文档向量 | 语义距离 | 排名 |
|---|---|---|
| Q vs “修改登录凭证” | 0.93 | 1 |
| Q vs “密码重置步骤” | 0.89 | 2 |
| Q vs “修改密码的方法” | 0.88 | 3 |
全部命中、非常精准。
三、 向量检索为什么这么强?
✔ 1. 不依赖关键词
不同表达的内容都能找到。
✔** 2. 语义理解**
“苹果”和“水果”相关
但“苹果”和“电脑”也可能相关
向量可以区分语义场景。
✔ 3. 对长文档效果特别好
FAQ、技术文档、客服知识库都适合。
✔** 4. RAG 的基础**
现在所有 AI 加速问答、知识库问答都靠它。
举例:DeepSeek / Qwen / Hunyuan / OpenAI 如何做向量检索?
1. 生成向量:
POST /v1/embeddings
模型例如:
- BAAI/bge-small-en
- text-embedding-3-large
- Hunyuan-embedding
- Qwen2-embedding
2. 存到向量数据库(任选一个)
- Pinecone
- Weaviate
- Milvus(最强开源)
- Qdrant(最适合新手)
- Chroma(最简单)
3. 使用相似度检索:
search(vector, topK=5)
4. 把结果发给 LLM(模型回答)
这就构成完整的 RAG 系统。
更多推荐

所有评论(0)