向量数据库
进阶预计进阶 2-3 个月星团 AI 应用
岗位需求
1 核心 · 2 加分
在职岗位将其列为技能要求
核心岗位薪资带
25k-55k
核心要求岗位的月薪区间
需求趋势
上升 1稳定 0收缩 0
核心要求岗位的趋势分布
面试题库
高频真题 · 参考答案随题展开1. 向量数据库解决什么问题?embedding 是什么?
embedding 是把文本、图像、音频等映射为固定维度的稠密向量(如 768 或 1536 维),语义相近的对象在向量空间中距离更近(由对比学习训练的编码模型保证,如 BGE、text-embedding 系列与多语言模型)。向量数据库围绕这类数据做存储与检索:亿级向量中找与查询向量最邻近的 K 个(KNN 精确检索代价 O(n) 不可行),用近似最近邻(ANN)索引把检索降到亚线性,毫秒级返回 top-k;同时提供标量过滤(先按条件筛再向量搜)、增量插入删除、持久化与分布式分片、多租户隔离。应用支撑语义搜索、RAG 知识召回、去重与聚类、推荐召回、图像以图搜图、异常检测。与倒排索引的关键词检索正交互补,生产常两者混合。能讲清「语义距离可计算」与 ANN 动机即达标。
2. HNSW 与 IVF 索引的原理是什么?
HNSW(分层可导航小世界图)是图索引:向量作为节点连接近邻,上层稀疏跳表式结构用于快速定位入口、下层稠密图逐步精搜,查询从顶层入口贪心下潜,每层向更近邻居移动,复杂度近似对数级。优点是召回与延迟表现最好、支持增量插入,内存开销大(图加原始向量都要驻留),构建慢。IVF(倒排文件)先聚类(k-means)把空间切成 nlist 个簇心,向量归属最近簇;查询先算与簇心距离选 nprobe 个近簇、只在这些簇内暴力比对。优点是内存可控、可配合量化压缩、构建快,缺点是簇边界附近的召回损失、需要训练步骤、删除更新有代价。量化压缩(PQ 乘积量化、SQ 标量量化)常与 IVF 组合把向量压到几字节级,牺牲精度换内存与吞吐。调参要点:HNSW 的 efConstruction 与 efSearch、IVF 的 nlist 与 nprobe 都是「构建成本、内存、召回率」三角。能讲结构与两方案取舍即满分。
3. 余弦相似度、内积与 L2 距离如何选择?
余弦相似度只看方向夹角(向量归一化后等于内积),对模长不敏感,适合文本语义(关注语义方向而非幅度),embedding 模型输出常已归一化,此时余弦与内积等价且内积计算最快;内积(点积)保留模长信息,适合推荐场景中「兴趣强度加权」的向量;L2 欧氏距离同时衡量方向与幅度,几何意义直观,适合空间位置聚类(K-means 默认)与需要绝对差异的场景。一致性铁律:检索度量必须与 embedding 模型训练时的目标一致(模型用余弦训练就建余弦索引,用错度量召回质量骤降);入库前统一归一化再存(很多库归一后内积即余弦,省计算);同一系统内度量统一,混合距离没有意义。业务层面相似分数解释(余弦在负一到一)也影响阈值设定与去重策略。能讲「与模型训练目标一致」这条铁律即优秀。
4. 向量检索中的标量过滤(filtered search)为什么难?如何优化?
难在两个条件的交集:ANN 索引按向量近邻组织,标量条件按字段过滤,先过滤后检索(pre-filter)候选集缩小甚至打散了图与簇结构,ANN 索引失效退化暴力扫;后过滤(post-filter)取 top-k 再筛可能剩不下结果(高选择性过滤时召回塌方)。优化方案:库内原生支持过滤遍历(Qdrant 在图遍历与载荷过滤之间动态平衡,Milvus 的迭代扫描扩展);分区与分集合——按业务维度(租户、类目、时间)物理分片,把过滤变成路由,查询只打目标分区,是最通用最有效的手段;部分向量重建——把高频过滤字段编码进向量 ID 或分区键;预过滤加降级——候选少于阈值时退化为精确扫描(小集合暴力反而快)。设计建议:过滤选择性高的维度建分区,低的留在标量过滤;分区粒度别过细防小分片过多。能讲前后过滤的困境与分区路由即完整。
5. 向量数据库如何选型?
按规模与团队分层选。百万到千万级、已有 Postgres:pgvector(或 pgvecto.rs)直接加扩展,零新组件、事务与 SQL 生态白得,配合 HNSW 索引够用,缺点是上限受单机与数据库负载影响。千万到亿级、独立服务:Milvus(分布式、云与 standalone 形态、社区大)、Qdrant(Rust 单二进制部署简单、过滤强、性能好)、Weaviate(混合检索与模块生态)。托管免运维:Pinecone、各云厂向量服务(内网合规友好)。选型维度:数据规模与增长、QPS 与延迟 SLO、过滤与混合检索需求、更新删除频率、部署运维能力、生态与 SDK、成本(内存型贵)、合规与数据出境。另一条路线是搜索引擎兼做向量(Elasticsearch、OpenSearch),关键词加向量一站式但向量能力与性能弱于专用库。能按场景给结论并讲清两三个维度即好。
官方文档
2 条国产开源向量库旗舰,中文社区活跃、部署形态丰富
Rust 实现的高性能向量库,过滤检索设计出色
推荐教程
1 条向量检索概念科普最系统的一批免费教程
推荐课程
0 条待共建——资源由编辑部持续遴选补充。
上手实践
2 条- Faiss 仓库EN
Meta 出品的向量检索算法库,学索引原理的源头
PostgreSQL 向量扩展,中小规模 RAG 的轻量首选
难度档决定星等与难度分权重(入门 1 / 进阶 2 / 精通 3);学习资源由编辑部遴选并持续维护, 经验心得欢迎在上方「知识分享」区署名分享。

