Milvus

活跃
GitHub Go Apache-2.0

简介

Milvus 是一个高性能的开源向量数据库,专为 AI 应用程序构建。支持大规模向量数据的存储、索引和相似度搜索,适用于 RAG、推荐系统等场景。

核心特性

  • 高性能向量搜索 — 支持 HNSW、IVF、FLAT、DiskANN 等索引类型,CPU/GPU 硬件加速
  • 分布式架构 — 计算与存储分离,K8s 原生架构,支持水平扩展和高可用
  • 多租户支持 — 数据库、集合、分区级别隔离,支持数百万租户
  • 混合搜索 — 向量搜索与标量过滤结合,支持元数据过滤和范围搜索
  • Milvus Lite — 轻量级 Python 库,pip install 即可在本地快速启动
  • 实时流式更新 — 支持实时数据插入和索引更新,保持数据新鲜

适用场景

💡 构建大规模 RAG 系统,为大语言模型提供外部知识检索
💡 实现推荐系统中的相似物品检索和个性化推荐
💡 构建多模态搜索系统,支持文本、图像等非结构化数据的相似度搜索
💡 部署企业级语义搜索引擎,支持十亿级向量的实时查询
💡 搭建 AI 应用的向量存储基础设施,管理嵌入向量和元数据

优势与不足

优势

  • 活跃维护,近期持续更新
  • 社区热度高(45.7k stars)
  • 开源许可证友好(Apache-2.0)

快速开始

# 安装 pymilvus
pip install -U pymilvus

# 使用 Milvus Lite 创建本地向量数据库
from pymilvus import MilvusClient

client = MilvusClient("milvus_demo.db")

# 创建集合
client.create_collection(
    collection_name="demo",
    dimension=768,
)

# 插入数据
client.insert(collection_name="demo", data=data)

# 向量搜索
res = client.search(
    collection_name="demo",
    data=query_vectors,
    limit=5,
)

相关项目

Qdrant

34.0k · Rust
活跃 A

Qdrant 是一个用 Rust 编写的高性能、云原生向量数据库与向量搜索引擎,专为下一代 AI 应用提供大规模 ANN 检索能力。

vector-databaseragsimilarity-search +2
  • · 高性能 ANN — 基于 HNSW 与 Scalar Quantization,提供毫秒级向量检索
  • · 丰富过滤条件 — 支持 payload 过滤、地理空间查询与混合稀疏-稠密检索
  • · 多模态与多向量 — 支持稀疏向量、命名向量、推荐系统多向量召回

RAGatouille

4.0k · Python
不活跃 C

轻松使用和训练最先进的后期交互检索方法(ColBERT),模块化设计,可将 ColBERT 模型集成到任何 RAG 管道中,显著提升检索精度。

ragpythonembedding +1
  • · ColBERT 后期交互检索:将先进的 ColBERT 模型封装为简单 API,无需深入了解检索论文即可在 RAG 管道中使用后期交互检索方法
  • · 端到端训练与微调:内置 RAGTrainer 和 TrainingDataProcessor,自动处理数据去重、正负样本配对和硬负例挖掘,支持从零训练或微调预训练模型
  • · 模块化可组合架构:DataProcessor、NegativeMiner 等组件可独立使用,也支持自定义 NegativeMiner 接入训练管道

HelixDB

5.7k · Rust
活跃 A+

使用 Rust 从零构建的开源图向量数据库,融合图数据库与向量检索能力,为 AI Agent 提供同时支持知识图谱和语义搜索的统一存储方案。

graph-databasevector-databaserag +2
  • · 图向量数据库,在一个系统中结合图遍历和向量相似性搜索
  • · 基于 Rust 的引擎,高性能且资源消耗低
  • · TypeScript 和 Rust SDK,使用声明式查询 DSL 构建查询

VectorAdmin

2.2k · TypeScript
不活跃 C

VectorAdmin 是通用向量数据库管理工具,支持 Pinecone、Chroma、Qdrant、Weaviate 等主流向量数据库的统一管理,提供直观的 Web 界面进行数据导入、查询和维护。

vector-databaseadminmanagement +2
  • · 通用向量数据库管理,支持 Pinecone、Chroma、Qdrant 和 Weaviate
  • · 多用户实例支持,提供基于权限的数据访问控制
  • · 原子级查看、更新和删除单个文本嵌入块

相关文章