跳到主要内容

向量数据库知识体系概览

问题

什么是向量数据库?为什么需要专门的向量数据库?

答案

什么是向量数据库

向量数据库是专门用于存储、索引和检索高维向量的数据库。向量(Embedding)是用一组浮点数组成的数组来表示非结构化数据(文本、图片、音频等)的语义信息

"人工智能改变世界" → [0.23, -0.15, 0.87, ..., 0.42]  // 768维或1536维

为什么需要向量数据库

传统数据库擅长精确匹配(WHERE id = 1),但无法进行语义相似度搜索

搜索类型传统数据库向量数据库
SELECT * WHERE name = '苹果'✅ 精确匹配不擅长
"找和苹果语义相似的词"❌ 无法完成✅ 返回"水果"、"梨"

核心应用场景

  • RAG(检索增强生成):从知识库中检索与用户问题最相关的文档片段
  • 语义搜索:理解搜索意图,而非只做关键词匹配
  • 推荐系统:基于 Embedding 相似度推荐相似商品/内容
  • 图片搜索:以图搜图、跨模态搜索
  • 去重/聚类:找出语义相似的文档

本分类文档导航

文档核心内容面试重点
向量索引原理HNSW、IVF、PQ 量化⭐⭐⭐⭐⭐
Milvus专用向量数据库、架构、使用⭐⭐⭐⭐
pgvectorPostgreSQL 向量扩展⭐⭐⭐⭐
RAG 中的向量检索RAG 实践、混合搜索⭐⭐⭐⭐⭐

相关链接

  • Embedding 基础
  • 向量检索
  • RAG 基础