RAG 系统的第一块拼图
如果你正在搭建 RAG 系统,AI Agent 函数调用中的检索环节就需要一个靠谱的向量数据库来支撑。选型直接影响检索准确率和响应时间。
三者架构对比
| 特性 | Milvus | Chroma | Weaviate |
|---|---|---|---|
| 定位 | 分布式大规模 | 嵌入式小型 | 语义搜索+向量 |
| 单机上限 | 10亿级 | 百万级 | 千万级 |
| Golang 绑定 | 有 | 有限 | 有 |
代码示例:Milvus 接入
from pymilvus import connections, Collection
connections.connect("default", host="localhost", port="19530")
collection = Collection("tech_docs")
collection.load()
results = collection.search([embedding], "vector", param={"metric_type": "IP"}, limit=10)
这和 Redis RDB vs AOF 持久化的选择类似——如果你的数据量不大,嵌入式更简单;海量数据需要分布式支撑。
选型建议
- 原型开发 / 小规模:Chroma(零配置)
- 生产级大规模:Milvus(水平扩展强)
- 需要图检索增强:Weaviate(向量+图谱)




