标准回答
在 RAG 中的作用
把文档切块后用 Embedding 编码存入向量库;查询时把问题向量化做近似最近邻(ANN)检索,召回语义最相近的 top-K 片段,再拼进 prompt 让 LLM 作答。它支撑的是语义检索——「苹果发布会」也能召回含「iPhone 发布」的段落。
索引类型(核心取舍)
- HNSW:图索引,查询快、召回高,但内存占用大。
- IVF:倒排+聚类,适合超大规模、可控内存。
- DiskANN:把索引落盘,单机扛更大数据、降成本,延迟略高。
选型维度
数据量与 QPS、延迟预算、是否需要元数据过滤与混合检索(BM25+向量)、多租户隔离、以及托管 vs 自建的运维成本。常见产品:Pinecone(托管)、Milvus/Qdrant(开源自建)、pgvector(PostgreSQL 扩展,数据量不大时省事)、FAISS(是库不是服务)。
实践要点
chunk 通常 256–512 token、重叠 10–20%;检索后再用 cross-encoder rerank 提升精度;关键词/编号类查询配合混合检索效果更好。
常见误区
⚠️ 常见踩坑
别以为「上了向量库 RAG 就准」——召回质量更受 chunk 切分、Embedding 模型和是否 rerank 影响,纯向量检索对精确关键词/编号/专名很弱,常需混合检索补足。也别在数据量不大时盲目上分布式向量库:几十万向量用 pgvector 或 FAISS 就够,过度工程反增运维负担。
追问
追问 1:HNSW 原理简述?
分层可导航小世界图:上层稀疏长跳快速定位区域,下层稠密短边精细近邻。插入时贪心搜索找近邻并连边。查询从顶层入口贪心下降,兼顾召回与速度,是向量库常用 ANN 结构。
追问 2:何时需要混合检索?
纯向量对精确关键词、编号、专有名词弱;纯 BM25 对语义改写弱。生产 RAG 常 BM25+向量融合(RRF),再加 cross-encoder rerank,提升召回与精度。
延伸学习
与本题相关的知识库文章、术语、工具与行业资讯。
📰 AI 资讯
🛠️ AI 工具
🎯 相关面试题