向量数据库专门存储 embedding 向量,并支持 approximate nearest neighbor(ANN)查询——「给我跟这个向量最像的前 10 个」。实际的 ANN 引擎(HNSW、IVF、ScaNN)牺牲一点点 recall 换取大幅速度提升,让你能在毫秒内查上百万条向量。 它重要的原因是:传统关系数据库不是为这个设计的。对 100 万条 1536 维向量做暴力 cosine similarity 慢得不像话,向量数据库让这件事变便宜。每个 RAG 系统都需要——没有高效检索,就没办法把 LLM 回答绑在你的数据上。 典型用法:把文档每个段落 embed,存 (段落文字、embedding、metadata) 进向量数据库;查询时把用户问题 embed,查 top-k 最相似向量,把对应段落塞进 prompt 给 LLM 当 context。整条 pipeline 100-300ms 跑完。 常见选择:Pinecone(managed)、Weaviate、Qdrant、Milvus、Chroma(open-source);pgvector 把 Postgres 变成堪用的向量数据库,已是 Supabase + Neon 的默认选项。小项目 pgvector 或 Chroma 通常够用;大规模(>5000 万条、跨区域)需要 Pinecone 或 Milvus。延伸阅读:embedding、RAG、HNSW、hybrid search。