Naive RAG 中的 Vector Stores(向量数据库
·
1. Naive RAG Vector Stores 是什么
Vector Store(向量存储) 是用来高效存储和检索向量的数据库或存储系统。
在 Naive RAG 中,它的主要职责是:
- 存储:保存 Text Splitters 切分后的文本片段及其对应的 Embedding 向量。
- 索引:建立高效的相似度搜索索引(如 Faiss 的 IVF、HNSW,或云服务的内置索引)。
- 检索:在用户提问时,将问题向量与库中向量比对,快速返回最相似的若干片段(Top-K)。
特点:
- 支持 近似最近邻搜索(ANN),在大规模数据下保持高速检索。
- 可与多种 Embedding 模型配合使用。
- 常见类型:内存型(FAISS)、磁盘型(Weaviate)、云端托管型(Pinecone、Qdrant Cloud、Milvus)。
2. 在 Naive RAG 流程中的位置
回顾整体流程:
原始文档 → Text Splitters → Embedding → Vector Store → 检索 → LLM 生成
Vector Store 位于 Embedding 之后、检索之前,是连接向量化数据与语义检索的桥梁。
3. Naive RAG Vector Stores 流程图(Mermaid)
流程说明
-
数据导入与向量化
- 文档经 Text Splitters 切成片段。
- 每个片段经 Embedding Model 转成向量。
-
Vector Store 阶段
- 向量与片段原文(或指针)一起存入 Vector Store。
- 建立 ANN 索引以支持快速最近邻搜索。
-
检索阶段
- 用户问题编码成向量。
- 在 Vector Store 中执行相似度搜索,返回最相关的片段。
-
生成阶段
- 检索到的片段与问题拼成 Prompt,送给 LLM 生成答案。
常见 Vector Store 类型对比
| 类型 | 示例 | 特点 | 适用场景 |
|---|---|---|---|
| 内存型 | FAISS | 本地运行、速度快、需自己管理持久化 | 小规模/内网/实验 |
| 开源服务型 | Weaviate, Qdrant, Milvus | 支持 RESTful/gRPC、可水平扩展 | 中大型本地部署 |
| 云端托管 | Pinecone, Qdrant Cloud, Zilliz Cloud | 免运维、弹性伸缩 | 商业项目/快速上线 |
| 轻量嵌入式 | Chroma | 简单易用、适合原型 | 小型项目/研究 |
关键点
- Naive RAG 的 Vector Store 通常只做 存储 + 相似度搜索,没有复杂的重排序或多模态支持。
- 向量维度、索引方法会显著影响检索速度与精度。
- 可替换性强:不同 Vector Store 之间切换一般只需改动检索调用代码。
✅ 一句话总结:
在 Naive RAG 中,Vector Stores 是用来存储文本向量并支持快速相似度检索的数据库,它把 Embedding 的结果变成可查询的资源,是 RAG 检索能力的核心支柱。
更多推荐

所有评论(0)