Milvus:向量数据库这件事,它做到了 44K Star
文章目录
- Milvus:向量数据库这件事,它做到了 44K Star
- 1、 这玩意儿是干嘛的
- 2、 为什么要用它
- 3、 怎么用
- 4、 能用来干什么
- 5、 适合谁用
Milvus:向量数据库这件事,它做到了 44K Star
Milvus 在 GitHub 上已经拿到 44,975 Star 了。
这是一个专门做向量数据库的开源项目,用 Go 和 C++ 写的,专门为 AI 应用设计。处理文本、图片、多模态数据的向量搜索,是它的核心能力。
1、 这玩意儿是干嘛的
就一件事:存储向量数据,做相似性搜索。
把非结构化数据(文本、图片、视频)转成向量塞进去,然后用各种算法找出最相似的结果。支持 HNSW、IVF、FLAT、SCANN、DiskANN 等主流索引类型,还有 GPU 加速。
架构是分布式的,可以水平扩展。官方说法是能处理数十亿级向量,扛住每秒数万次查询。单机玩不转的话,也有 Standalone 模式和 Milvus Lite 轻量版。
2、 为什么要用它
做过 RAG 系统或者推荐引擎的人都知道,向量检索这一层自己搭有多痛苦。
索引怎么建、分片怎么做、一致性怎么保证、挂了怎么恢复,每一样都是坑。市面上要么是轻量库扛不住量,要么是重量级方案部署成本高。
Milvus 把这些都封装了。开发者只需要调 API,不用操心底层。性能不够就加节点,数据量大了就扩分片,故障了自动恢复。
3、 怎么用
安装就一行:
pipinstallpymilvus也可以装 Milvus Lite 版本,本地开发测试够用:
pipinstall'pymilvus[milvus-lite]'基本用法:
frompymilvusimportMilvusClient client=MilvusClient("milvus_demo.db")client.create_collection(collection_name="demo_collection",dimension=768,)# 插入数据client.insert(collection_name="demo_collection",data=data)# 向量搜索results=client.search(collection_name="demo_collection",data=query_vectors,limit=2,)部署方式有几种选择:Docker 单机、Kubernetes 集群、Zilliz Cloud 托管服务。
4、 能用来干什么
官方给了不少教程,覆盖这些场景:
- RAG 系统:文档检索、问答系统
- 图像搜索:以图搜图、相似图片推荐
- 推荐系统:基于向量的个性化推荐
- 语义搜索:理解语义的文本检索
- 多模态检索:跨文本、图片、视频的统一搜索
和 LangChain、LlamaIndex、OpenAI、HuggingFace 这些主流框架都能直接对接。
5、 适合谁用
- 在搭 RAG 系统、需要高效向量检索的开发者
- 做推荐系统、需要处理大规模相似性计算的团队
- 在做多模态 AI 应用、需要统一向量存储的场景
Milvus 是 LF AI & Data 基金会的项目,用的 Apache 2.0 协议,企业用起来没什么 license 顾虑。数据安全方面支持认证、TLS 加密、RBAC 权限控制,生产环境该有的都有。
a 基金会的项目,用的 Apache 2.0 协议,企业用起来没什么 license 顾虑。数据安全方面支持认证、TLS 加密、RBAC 权限控制,生产环境该有的都有。
