项目预览
项目数据
项目介绍
Star 增长趋势
本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整
数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 46614
使用教程
ℹ 本教程由 AI 依据该项目 README 整理,个别步骤可能需要按你的环境微调。
环境要求
- Python 环境,已安装可用的 pip
- 若连接自建 Milvus 服务或 Zilliz Cloud,需准备 endpoint 与 token
- 使用 Milvus Lite 需安装 pymilvus[milvus-lite] 扩展包
- 从源码安装第三方依赖需克隆仓库并在 Linux/macOS 风格 shell 下执行脚本
安装与启动步骤
-
1安装 Python SDK
安装官方 Python SDK pymilvus,这是使用 Milvus 的最快入口,-U 表示升级到最新版。
pip install -U pymilvus -
2安装 Lite 扩展
想本地快速体验可不装服务端,额外安装 milvus-lite 扩展,用本地文件当向量库。
pip install -U "pymilvus[milvus-lite]" -
3创建本地客户端
传入本地文件名即可创建嵌入式向量库,数据会持久化到该 .db 文件,无需先起服务。
from pymilvus import MilvusClient client = MilvusClient("milvus_demo.db") -
4连接已部署服务
若已有自建 Milvus 或 Zilliz Cloud,用 uri 和 token 连接,token 为账号密码或云端 API Key。
client = MilvusClient( uri="<endpoint_of_self_hosted_milvus_or_zilliz_cloud>", token="<username_and_password_or_zilliz_cloud_api_key>") -
5创建集合
集合相当于表,必须指定名称与向量维度;示例用 768 维,需与你的向量模型一致。
client.create_collection( collection_name="demo_collection", dimension=768, # The vectors we will use in this demo have 768 dimensions ) -
6写入数据
把向量及附带字段插入集合,返回结果 res 中包含插入条数等信息。
res = client.insert(collection_name="demo_collection", data=data) -
7执行向量搜索
把查询文本编码成向量后检索,limit 为返回条数 topK,output_fields 指定返回字段。
query_vectors = embedding_fn.encode_queries(["Who is Alan Turing?", "What is AI?"]) res = client.search( collection_name="demo_collection", # target collection data=query_vectors, # a list of one or more query vectors, supports batch limit=2, # how many results to return (topK) output_fields=["vector", "text", "subject"], # what fields to return ) -
8源码装依赖
从源码构建 Milvus 时,进入仓库目录执行依赖安装脚本,需具备编译环境(官方文档为准)。
cd milvus/ ./scripts/install_deps.sh
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
uri | 否 | 自建 Milvus 服务或 Zilliz Cloud 的访问地址 | <endpoint_of_self_hosted_milvus_or_zilliz_cloud> |
token | 否 | 连接鉴权信息,用户名密码或 Zilliz Cloud API Key | <username_and_password_or_zilliz_cloud_api_key> |
db_file | 否 | Milvus Lite 本地数据库文件名,用于持久化数据 | milvus_demo.db |
collection_name | 是 | 集合名称,插入与检索都要指向它 | demo_collection |
dimension | 是 | 向量维度,必须与实际向量维度完全一致 | 768 |
如何确认成功
pip 安装无报错,MilvusClient("milvus_demo.db") 能成功创建客户端并生成该数据库文件,create_collection 与 search 正常返回结果即成功。
常见问题
Q:Milvus Lite 和完整 Milvus 服务有何区别?
A:Milvus Lite 通过 pymilvus[milvus-lite] 安装,用本地文件即可启动,适合快速验证;数据量大或需分布式、高可用时应使用自建 Milvus 服务或 Zilliz Cloud。
Q:如何连接已经部署好的 Milvus 或 Zilliz Cloud?
A:创建客户端时传入 uri 和 token:uri 填服务 endpoint,token 填用户名密码或云端 API Key,二者由你的部署方提供。
Q:向量维度和报错有关吗?
A:有。create_collection 的 dimension 必须与插入、检索时所用向量的维度一致,示例为 768 维,请按你的嵌入模型调整。
Q:search 的 limit 是什么含义?
A:limit 即 topK,表示每次查询返回的最相似结果条数,示例中设为 2;output_fields 控制返回哪些字段。
Q:源码安装第三方依赖失败怎么办?
A:README 只给出 ./scripts/install_deps.sh 这一步,若失败请先确认已克隆仓库并进入 milvus/ 目录,再按官方文档补齐系统级编译依赖。
注意事项
- README 节选未提供 Docker 部署命令,如用容器方式安装请以官网 install_standalone-docker 文档为准。
- 示例中的 embedding_fn、data 变量需由使用者自行准备,README 未给出其定义。
- Milvus Lite 适合本地开发验证,生产环境建议使用自建 Milvus 集群或 Zilliz Cloud 托管服务。
- 源码编译依赖脚本与系统环境强相关,执行前请确认磁盘、内存与编译工具链满足官方要求。
核心亮点
- 支持万亿级向量规模,毫秒级查询延迟,性能强悍
- 云原生分布式架构,支持水平扩展与高可用部署
- 提供多种索引类型(HNSW、DiskANN、IVF等),灵活适配不同场景
不足之处
- 部署运维相对复杂,对资源要求较高
- 文档/社区待观察(部分高级功能文档不够详尽)
适用场景
- 推荐系统:实时匹配用户偏好与物品特征
- 图像/视频检索:以图搜图、相似内容发现
- 自然语言处理:语义搜索、问答系统、知识库检索
替代项目
Qdrant、Weaviate、Chroma
上一篇:edgee
同类项目推荐
respan-gateway
开源
一个端点接入所有大模型,单二进制即开即用
Open-source LLM gateway in Rust. One endpoint for OpenAI, Anthropic, Gemini and ever···
sacremoses
开源
Moses 文本预处理工具一键迁移到 Python,让分词大小写规范化不再愁
Python port of Moses tokenizer, truecaser and normalizer
一键加速扩散模型,生成速度提升数倍,画质不变
OneDiff: An out-of-the-box acceleration library for diffusion models.
gpustack
开源
一键管理 GPU 集群,轻松部署高性能 AI 模型服务
A GPU cluster manager for high-performance AI model serving (vLLM, SGLang) and on-de···
vLLM-Moet
开源
消费级 Blackwell 上跑 2-bit MoE,画质对齐官方 FP4
Frontier MoE models on RTX PRO 6000 / RTX 5090 (sm_120): DeepSeek-V4.1-Flash on 4x R···
OctoBus
开源
给AI智能体装上安全闸门,只放行企业批准的API调用。
A secure local gateway for AI agents to reliably call approved enterprise APIs, tool···
k8ssandra-operator
开源
在 K8s 上像管理应用一样管理 Cassandra 集群,自动部署与运维
The Kubernetes operator for K8ssandra
cligate
开源
一个网关,统一管理所有 AI 工具和模型,省心又安全。
Private AI assistant, AI agent, and unified model proxy for Claude Code, Codex CLI, ···
inferoxy
开源
一键部署 Docker 化 CV 模型,快速上线推理服务
Service for quick deploying and using dockerized Computer Vision models
