Milvus Lite 使用教程:安装、本地文件数据库、插入与搜索,以及它的限制

Milvus Lite 是什么、怎么安装使用、Windows 能不能装?按 Milvus 官方文档讲清它的定位、支持的系统、pymilvus 安装命令、用一个本地 .db 文件建库、建集合、插入、带过滤的搜索、查询与删除,以及只支持 FLAT 索引等限制和迁移到正式版的命令。

NNathaniel bigo··原创首发·AI 辅助撰写
6 分钟读完
资料核对于 2026-10-11 · 依据官方文档与公开资料整理 免费账号 账号
本文根据 Milvus 官方文档《Run Milvus Lite Locally》整理,资料核对于 2026-10-11。文中代码取自官方页面,没有在本机运行验证。

适用于谁

  • 搜「milvus lite 安装」「milvus lite 使用」「milvus lite 是什么」「milvus lite windows」的人;
  • 想在笔记本或 Notebook 里试试 Milvus,又不想先装 Docker 的人;
  • 做 RAG 原型,希望以后能平滑迁到正式的 Milvus 集群的人。

结论先说

  1. Milvus Lite 是开源向量数据库 Milvus 的轻量版,可以直接导入到 Python 程序里,提供核心的向量搜索功能,数据存在一个本地文件里。
  2. 它包含在 pymilvus 里:pip install -U pymilvus[milvus-lite]。
  3. 官方列出的支持平台是 Ubuntu 20.04 及以上、macOS 11.0 及以上,没有列 Windows。Windows 用户要另想办法(见常见问题)。
  4. 只适合小规模。只支持 FLAT 索引,不支持分区、用户与角色等功能。
  5. 接口和正式版一致。官方说明各种部署形态共用同一套 API,所以在 Lite 上写的代码可以搬到 Standalone、Distributed 或托管服务上。

一、Milvus 的几种形态

形态官方的定位
Milvus LiteNotebook、笔记本电脑、边缘设备;小规模
Milvus Standalone单节点部署,比如跑在一个 Docker 容器里
Milvus Distributed大规模,部署在 Kubernetes 集群上
Zilliz Cloud全托管的 Milvus

Lite 的用途就是让你不搭任何服务就能开始写代码。

二、安装

bash
pip install -U pymilvus[milvus-lite]

也可以单独安装:pip install -U milvus-lite。

在 zsh 这类会解释方括号的终端里,给包名加上引号:pip install -U "pymilvus[milvus-lite]"。

支持的平台(官方页面所列):

  • Ubuntu 20.04 及以上,x86_64 和 arm64;
  • macOS 11.0 及以上,Apple Silicon 和 x86_64。

三、连接:一个本地文件就是一个数据库

python
from pymilvus import MilvusClient

client = MilvusClient("./milvus_demo.db")

给 MilvusClient 传一个本地文件路径,就会在当前目录创建 milvus_demo.db 这个数据库文件,所有数据都在里面。

四、建集合、插入、搜索

官方的完整示例:

python
from pymilvus import MilvusClient
import numpy as np

client = MilvusClient("./milvus_demo.db")
client.create_collection(
    collection_name="demo_collection",
    dimension=384  # The vectors we will use in this demo has 384 dimensions
)

# Text strings to search from.
docs = [
    "Artificial intelligence was founded as an academic discipline in 1956.",
    "Alan Turing was the first person to conduct substantial research in AI.",
    "Born in Maida Vale, London, Turing was raised in southern England.",
]
# For illustration, here we use fake vectors with random numbers (384 dimension).

vectors = [[ np.random.uniform(-1, 1) for _ in range(384) ] for _ in range(len(docs)) ]
data = [ {"id": i, "vector": vectors[i], "text": docs[i], "subject": "history"} for i in range(len(vectors)) ]
res = client.insert(
    collection_name="demo_collection",
    data=data
)

# This will exclude any text in "history" subject despite close to the query vector.
res = client.search(
    collection_name="demo_collection",
    data=[vectors[0]],
    filter="subject == 'history'",
    limit=2,
    output_fields=["text", "subject"],
)
print(res)

逐步看:

  • create_collection(..., dimension=384):建一个集合,dimension 是向量的维度,必须和你用的嵌入模型输出的维度一致;
  • data:每条记录是一个字典。id 和 vector 之外的字段(这里的 text、subject)可以随意加,之后可以用来过滤或作为结果返回;
  • insert:写入数据;
  • search:data 是查询向量的列表,limit 是返回条数,filter 是过滤条件,output_fields 指定结果里带回哪些字段。

注意官方示例里的向量是随机数,只为演示接口。实际使用时,文档和问题都要先经过同一个嵌入模型得到向量。

五、按条件查询和删除

不做向量搜索,只按条件取数据:

python
res = client.query(
    collection_name="demo_collection",
    filter="subject == 'history'",
    output_fields=["text", "subject"],
)
print(res)

按条件删除:

python
res = client.delete(
    collection_name="demo_collection",
    filter="subject == 'history'",
)
print(res)

search 和 query 的区别:前者按向量相似度排序返回最接近的几条,后者返回所有满足过滤条件的记录。

六、限制

官方页面列出的限制:

方面限制
规模只适合小规模向量搜索;大规模用 Standalone 或 Distributed
索引只支持 FLAT;指定其他索引类型也会被当作 FLAT
一致性只支持 Strong;其他设置也会被当作 Strong
不支持的功能分区、用户与角色、别名、重命名集合等

FLAT 是逐条比较的精确搜索,数据量小时没问题,数据量大了会慢。这也是它「只适合小规模」的原因。

七、迁移到正式版

数据量上来之后,把 Lite 里的数据导出,再导入正式的 Milvus。官方给的命令:

bash
pip install -U "pymilvus[bulk_writer]"
milvus-lite dump -d ./milvus_demo.db -c demo_collection -p ./data_dir

导出的文件可以通过 Bulk Insert 导入 Milvus,或者通过 Data Import 导入 Zilliz Cloud。

应用代码这一侧,因为 API 相同,主要改动是创建客户端时把本地文件路径换成服务地址。

常见问题

Q:Windows 上能装吗?

官方页面的支持平台列表里没有 Windows。在 Windows 上想用,可以在 WSL 的 Ubuntu 里按上面的步骤操作,或者用 Docker 运行 Milvus Standalone;具体以官方文档为准。只是想要一个在 Windows 上能直接 pip 安装的本地向量库,可以看《ChromaDB 是什么》。

Q:报错提示本地数据库连接需要 Milvus Lite?

说明装的 pymilvus 不含 Lite 组件。按上面的命令带上 milvus-lite 附加项重新安装,并确认系统在支持列表里。

Q:维度填多少?

由嵌入模型决定,查你所用模型的文档。建集合时填错,插入时就会因维度不符而失败。

Q:和 pgvector 怎么选?

数据本来就在 PostgreSQL 里、想少维护一个系统,看《pgvector 是什么》。预计向量规模很大、需要专门的向量数据库,从 Milvus Lite 起步,之后可以原样迁到集群。

参考资料

  • Run Milvus Lite Locally(Milvus 官方文档):https://milvus.io/docs/milvus_lite.md

Nathaniel 的更多内容

  1. 01

    promptfoo 使用教程:对比提示词和模型、写断言自动评测(安装与配置)

    promptfoo 是什么、怎么使用?按官方 README 和入门文档讲清它的用途、三种安装方式、用示例项目起步、promptfooconfig.yaml 里提示词、模型和测试用例三部分怎么写、常用断言类型的含义、eval 与 view 两条命令,以及把它放进日常改提示词流程的方法。

    ChatGPT其他 AI 工具0
  2. 02

    Kimi API怎么用:API Key获取、Python调用、K3价格与429报错处理

    Kimi API Key 在哪里获取、怎么用 Python 调用 K3、价格怎么算、429 和 401 报错怎么办?本文按 Kimi API 开放平台官方文档讲清注册认证、创建 Key、base_url 与模型名、计费规则和常见错误排查。

    Kimi0
  3. 03

    Cursor Agent 模式怎么用:Agent、Plan、Ask 三种模式,检查点回滚与消息排队

    Cursor Agent 模式是什么、和 Plan / Ask 模式怎么选?按官方文档讲清 Agent 能调用哪些工具、Shift+Tab 切换模式、Plan 模式先出方案再动手、用检查点撤销改动、任务进行中排队或插话,以及 /goal 长目标。

    Cursor0
  4. 04

    Gemini 聊天记录怎么导出:导出到文档 / 表格、生成 PDF 与用 Takeout 批量导出完整对话

    Gemini 没有「一键导出全部对话」的按钮,但有三条官方路径:单条回答导出到 Google 文档、Gmail、表格;让 Gemini 直接生成 PDF、Word、Markdown 文件;用 Google Takeout 批量下载全部活动记录。本文给出每种方法的步骤和限制。

    Gemini0
  5. 05

    ChatGPT 生成图片中文乱码、文字错误怎么办:7 个按顺序试的办法

    让 ChatGPT 做海报、封面、信息图,中文总是缺笔画、错字、乱码?本文按 OpenAI 官方图像提示指南,给出从写法、字数、局部修改、质量档位到后期排版的 7 个办法,以及什么时候干脆别让 AI 写字。

    ChatGPT0
  6. 06

    OpenCode Skills 使用指南:技能目录、命名规则、权限配置与不加载排查

    OpenCode 的 Skills 放在哪个目录、怎么控制哪些技能能用?按 OpenCode 官方文档讲清六个扫描位置、name 的正则规则、skill 工具的工作方式、在 opencode.json 里用 allow / deny / ask 配置权限、按智能体覆盖,以及技能不出现时的五项检查。

    其他 AI 工具0

同产品的其他教程

  1. 01

    MinerU 是什么、怎么用:把 PDF 等文档解析成 Markdown(4.0 的安装、四档解析与命令)

    MinerU 是什么、怎么安装使用?按官方中文 README 讲清 4.0 版本的定位、支持的输入与输出格式、flash / basic / standard / advanced 四档解析各适合什么、pip 安装命令、mineru-kit 与 mineru 两个命令的分工和常用写法,以及从旧版升级要注意什么。

    其他 AI 工具0
  2. 02

    npx skills add 怎么用:从 GitHub 安装 Skill、skills.sh 是什么与常用命令

    网上的 Skill 安装命令大多是 npx skills add 开头,它是什么、装到哪去了?按官方 README 讲清 skills 命令行工具支持的来源写法、项目与全局两种范围、-a 指定工具、list / find / update / remove 等命令、软链接与复制的区别,以及怎么关掉遥测。

    Claude其他 AI 工具0
  3. 03

    即梦首尾帧怎么用:两张图生成过渡视频(在哪里、提示词、不能用怎么办)

    即梦首尾帧在哪里、怎么用?本文讲清首尾帧入口、哪些模型支持、两张图的比例要求、过渡提示词怎么写,以及「首尾帧不见了 / 不能用了」「画面跳变」的原因和解决办法。

    其他 AI 工具0
  4. 04

    DeepSeek怎么用:网页版与手机App入门(深度思考、智能搜索、上传文件)

    DeepSeek怎么用?本文从官方入口和登录方式讲起,说清输入框里的「深度思考」「智能搜索」和上传附件各管什么,历史对话怎么改名、置顶、分享和导出,以及手机上使用的注意点。

    其他 AI 工具0
  5. 05

    文心一言网页版怎么用:改名「文心」后的入口、对话与工作任务、PPT生成

    文心一言现在叫什么、网页版入口在哪、怎么用?本文按百度文心官网和 App Store 官方页面讲清「文心」的新入口、对话与工作两种模式、图片生成和帮我写作、任务托管与 AIPPT、知识库和定时任务从哪开始。

    其他 AI 工具0
  6. 06

    Trae 规则与 MCP 配置教程:.trae/rules 四种生效方式、导入 AGENTS.md、添加 MCP Server

    Trae rules 怎么配置、Trae 怎么用 MCP?按 TRAE 官方中文文档讲清全局规则与项目规则的位置、四种生效方式、子目录与多层嵌套、导入 AGENTS.md / CLAUDE.md、提交信息规则,以及从市场添加和手动配置 MCP Server、项目级 mcp.json。

    其他 AI 工具0

0 条评论

登录 后参与评论

还没有评论,来抢沙发~