1、 安装Docker DeskTop
生产环境推荐Docker安装
1.1 下载安装包
bash
https://www.docker.com/
1.2 安装
安装比较简单,仅提供一些截图





个别首次安装的小伙伴会被windows系统提示需要安装 适用于Linux的Windows子系统 。这里选择确认安装。稍等片刻后会完成安装。

1.3 设置Proxy

后续下载的Milvus是最新版,在国内可能没有对应镜像,所有建议"科学上网"
1.4 配置加速器(备选)


2、安装Milvus
- 以管理员身份打开Docker Desktop,确保Docker Engine状态正常后进行下一步
- 打开powershell,后续操作都在powershell命令行完成
- 切换文件目录

注意:developTools\Milvus是你期望保存Milvus数据库的目录,执行前需要确保此文件目录
存在。不存在,提前创建好。
- 下载启动脚本
bash
Invoke-WebRequest https://raw.githubusercontent.com/milvus-io/milvus/refs/heads/master/scripts/standalone_embed.bat -OutFile standalone.bat
执行完以后,会在当前路径下生成standalone.bat文件
- 执行命令
bash
.\standalone.bat start
第三步我们将启动脚本安装在当前目录下,通过bat文件传递启动命令。

如果更换了启动脚本的下载位置,更改命令指向该文件即可
- 查看状态

本地缺少Milvus镜像会自动从云端拉取,看到上图所示 Start successfully 则启动成功。若失败,可重试几次。
- 停止容器
bash
.\standalone.bat stop
此外,在Docker容器中可见:

3、测试前准备工作
3.1 确保Milvus已启动
3.2 安装Milvus Python SDK
bash
pip install pymilvus
3.3 Milvus数据模型
3.3.1 整体结构
从业务角度,Milvus的数据模型层级如下
bash
Database -> Collection -> Partition -> Entity
Database:Milvus的数据库,用来隔离不同业务数据
Collection:最核心的逻辑容器,类似于关系型数据库里的table
Partition:分区,是collection的子集,不是必须手动创建;一个collection至少会有默认partition
Entity:可以理解为collection中的一条记录。类似于关系型数据库的一行数据
3.3.2 具体说明
在向量数据库中,我们要存储的是成千上万个"特征向量"以及它们对应的文本。为了把不同用途的向量分门别类地存放,我们就要创建不同的Collection。比如,COLLECTION_NAME = "docs" 就是给这张"表"取名叫docs,专门用来存放你切分好的文档片段向量
4 、基本用法
4.1 DDL操作
4.1.1 Database
查看数据库
- 创建客户端
bash
from pymilvus import MilvusClient
client = MilvusClient("http://localhost:19530")
- 列出所有数据库

创建数据库

删除数据库

如果数据库下有Collection则无法删除,需要先删除它的所有Collection才能删除Database
4.1.2 Collection
切换数据库

查看数据库下的collections

创建collection

dimension:嵌入向量维度,应和嵌入模型的向量维度保持一致
metric_type:表示向量相似度的计算方式,COSINE表示余弦相似度
当用户提问时,系统会把提问也变成向量,然后去数据库里找"最相似"的本地文本向量。但怎么定义"相似"呢?向量数据库需要知道计算规则。COSINE(余弦相似度)关注的是两个向量在方向上的夹角:
如果两个向量方向完全一致(代表文本意思极度接近),余弦值接近1
如果方向正交(毫无关系),值接近0
结论:在RAG检索时,Milvus会帮你计算用户问题与数据库中所有文本的余弦相似度,并把得分从大到小排序,把得分最高(最相似)的前k个片段还给你。(注:除了COSINE之外,常见的还有L2欧氏距离、IP内积等。)
删除collection
