Semantic Search(语义搜索)
Semantic Search按意思搜不是按字搜
亦作、亦称:语义搜索 · Semantic Retrieval
语义搜索(Semantic Search)是一种基于语义相似度而非字面关键词匹配的信息检索方式,通过将查询和文档映射为高维稠密向量,在向量空间中计算距离来找出最相关的结果。它能够理解同义词、近义表达和模糊意图,显著优于传统的词频统计方法。
概述
语义搜索(Semantic Search)是一种基于语义相似度而非字面关键词匹配的信息检索方式,通过将查询和文档映射为高维稠密向量,在向量空间中计算距离来找出最相关的结果。它能够理解同义词、近义表达和模糊意图,显著优于传统的词频统计方法。
核心思想
语义搜索将语言理解问题转化为几何问题:意思相近的文本在向量空间中距离更近。
- 查询编码:输入文本经 Embedding 模型转换为定长实数向量(通常 384–3072 维)
- 文档索引:离线将语料库每段文本预先向量化,存入向量数据库
- 相似度计算:检索时对查询向量与文档向量计算余弦相似度或内积,取 Top-K
- 优势场景:同义词替换(「费用」vs「价格」)、跨语言检索、意图模糊的长尾查询
发展脉络
语义搜索经历了从稀疏统计表示到稠密神经表示的演进。
- 1988:Deerwester 等提出潜在语义索引(LSI),用奇异值分解(SVD)提取文档隐含主题
- 2013:Mikolov 等发布 Word2Vec,首次用神经网络大规模学习静态词向量
- 2018:Google 发布 BERT,上下文感知的双向编码为句子级语义搜索奠定基础
- 2019:Sentence-BERT 专门优化句子对相似度,成为双塔检索模型的重要基础
- 2020:Facebook AI 发布 DPR(Dense Passage Retrieval),用双塔 BERT 模型实现高效稠密检索,在开放域问答基准上比 BM25 高出 9–19 个百分点
- 2022 后:BGE、E5、GTE 等中文及多语言 Embedding 模型相继发布,大幅降低垂直落地门槛
索引结构
向量数量达百万级以上时,暴力穷举不可行,需要近似最近邻(ANN) 索引。
- HNSW(Hierarchical Navigable Small World):分层图结构,查询速度快、召回率高,是目前最常用方案
- IVF(Inverted File Index):将向量聚类后只搜索最近若干簇,内存占用更低;IVF 方法自 1990 年代起即被使用
- 乘积量化(PQ):将向量分段压缩,大幅减少存储,通常与 IVF 组合(IVF-PQ)
- 主流向量库 FAISS(Meta)、 Milvus、 Qdrant均支持上述索引
与关键词搜索的对比
语义搜索并非取代关键词搜索,实践中常以混合搜索(Hybrid Search) 结合两者。
-关键词搜索(BM25) :精确匹配、可解释性强,但无法处理同义词和语义变体
- 语义搜索 : 语义泛化能力强,但对专有名词、型号、代码片段等精确字符串表现欠佳
-混合搜索:将两者分数加权融合(如 Reciprocal Rank Fusion),再经 Reranker 精排,综合效果通常最优
- 领域漂移(Domain Drift)是语义搜索的主要风险:通用 Embedding 在专业语料上召回率会显著下降
评估与监控
语义搜索系统上线后需持续评估,不能一次部署完即可。
- Recall@K:Top-K 结果中包含标准答案文档的比例,是核心离线指标
- MRR(Mean Reciprocal Rank):衡量第一个正确结果的排名位置
- 领域漂移监测:定期对新语料运行评估集,判断 Embedding 模型是否需要微调
- 延迟与吞吐:线上环境需兼顾 P99 延迟,ANN 搜索通常要求在 10 ms 量级完成
在 RAG 中的角色
语义搜索是检索增强生成(RAG)的核心检索引擎,决定了大模型能看到哪些上下文。
- 召回阶段:语义搜索快速从知识库中取出候选文档块(Chunk)
- 精排阶段:Reranker(如 Cross-Encoder)对候选结果重新打分,提升相关性
- Embedding 质量直接决定 RAG 的回答准确率,需与领域数据对齐
- 分块策略(Chunk Size)影响语义表示粒度,过长或过短均会导致检索质量下降
常见误解
日常交流中容易听到的简化说法,未必准确,但能帮助理解误解从何而来。
- 「按意思搜不是按字搜」
- 「Embedding 相似度检索」
- 「同义词也能找到」
相关术语
和本术语关联紧密的其他词条,便于串联理解。
🎯 考点练习
含该术语的高频面试题,含标准答案与追问。
- 初级概念查看详解 →
Embedding(向量)在实际应用里能用来做什么?
Embedding 把文本变向量算相似度,能做语义搜索、相似推荐、去重、分类、RAG 检索。
- 初级场景查看详解 →
如何用 AI 做一个「相似内容/相关推荐」功能?
内容向量化存向量库,做 ANN 最近邻取 Top-N,注意冷启动、去重和已读过滤。
- 中级概念高频查看详解 →
文本 Embedding 模型如何训练?与生成式 LLM 有什么不同?
Embedding 模型用对比学习把语义相近文本拉近、相远推远,输出定长向量;生成式 LLM 做自回归预测。
- 中级概念查看详解 →
文本相似度用余弦相似度、点积还是欧氏距离?
归一化后余弦≈点积;欧氏对模长敏感;embedding 语义检索常用余弦相似度。
延伸阅读
从知识库精选 3 篇文章,帮助深入理解该术语。
- 1
Agent 记忆与知识库系统设计:从短期上下文到长期记忆架构
AI Agent 的核心能力之一是记忆——能够在多次交互中保持连贯性、积累经验、并在需要时检索相关信息。本文系统讲解 Agent 记忆架构的设计原理,涵盖短期记忆(上下文窗口管理)、中期记忆(对话历史压缩)、长期记忆(向量存储与知识图谱)、知识库构建(RAG 架构)、记忆检索策略、记忆遗忘机制,以及生产环境中的最佳实践和常见陷阱。
- 2
RAG 检索增强生成架构指南
如何结合外部知识库增强 LLM 的准确性和时效性
- 3
NLP 基础:从词嵌入到 Transformer
自然语言处理的核心技术路线。从 One-Hot 到 Word2Vec,从 RNN/LSTM 到注意力机制,再到 Transformer 架构的完整演进历程。包含词向量可视化、注意力权重计算和简易 Transformer 的 Python 实现。
外部参考
维基百科:查看「Semantic Search」词条本页内容为本站原创撰写;维基百科链接仅作延伸参考。
