Skip to content

向量数据库实战(Milvus/Chroma)

从 Embedding 的第一个维度到 RAG 系统的最后一公里——手把手带你玩转向量数据库。


1. 为什么你需要向量数据库

1.1 一个真实场景:关键词搜索的困境

1.2 什么是向量?什么是向量数据库?

1.3 向量数据库在 AI 应用中的位置


2. Embedding——把万物变成向量

2.1 Embedding 的直觉理解:语义的坐标系

2.2 主流 Embedding 模型选型

2.3 实操:用 Python 生成文本向量


3. 相似度搜索——向量数据库的核心能力

3.1 三种距离度量:余弦、欧氏、内积

3.2 从暴力搜索到 ANN:为什么需要索引

3.3 Top-K 检索与相似度阈值


4. 索引算法揭秘——HNSW、IVF、DiskANN

4.1 HNSW:高速公路式的图索引

4.2 IVF:先分区再搜索

4.3 DiskANN:当数据大到内存放不下

4.4 索引选型决策树


5. Chroma 实战——5 分钟上手向量数据库

5.1 安装与第一个 Collection

5.2 完整 CRUD:增删改查向量

5.3 元数据过滤与混合查询

5.4 持久化与 Client-Server 模式


6. pgvector 实战——用 PostgreSQL 做向量搜索

6.1 为什么选 pgvector:已有 PostgreSQL 就够了

6.2 安装与基础操作

6.3 索引选型:HNSW vs IVFFlat

6.4 与 SQLAlchemy 2.0 / FastAPI 集成

6.5 混合查询:向量搜索 + SQL 条件一条语句搞定

6.6 pgvector vs Chroma vs Milvus 选型


6. Milvus 实战——生产级向量数据库

6.1 三种部署模式:从 Lite 到分布式

6.2 Docker 部署与 pymilvus 连接

6.3 Schema 设计与数据写入

6.4 索引创建与搜索调优

6.5 分区、别名与数据管理


7. 混合检索——当语义搜索遇上关键词搜索

7.1 语义搜索的盲区

7.2 Dense + Sparse 混合检索原理

7.3 Milvus 混合检索实战

7.4 Reranker 重排序:精度的最后一公里


8. 实战:构建完整的 RAG 知识库问答系统

8.1 RAG 架构与数据流全景

8.2 文档解析与智能分块策略

8.3 Chroma 版 RAG 实现

8.4 Milvus 版 RAG 实现

8.5 效果评测:召回率、准确率、延迟


9. 生产级优化——性能、成本、运维

9.1 写入优化:批量导入与并行策略

9.2 查询调优:索引参数与缓存

9.3 数据更新策略

9.4 监控、运维与迁移


附录

A. Milvus vs Chroma 速查对比表

B. Embedding 模型选型速查

C. 常见问题与排查

D. 推荐工具与学习资源

坚持是一种品格