Milvus使用指南

1、 安装Docker DeskTop

生产环境推荐Docker安装

1.1 下载安装包

bash 复制代码
https://www.docker.com/

1.2 安装

安装比较简单,仅提供一些截图

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

1.3 设置Proxy

后续下载的Milvus是最新版,在国内可能没有对应镜像,所有建议"科学上网"

1.4 配置加速器(备选)

2、安装Milvus

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

注意:developTools\Milvus是你期望保存Milvus数据库的目录,执行前需要确保此文件目录

存在。不存在,提前创建好。

  1. 下载启动脚本
bash 复制代码
Invoke-WebRequest https://raw.githubusercontent.com/milvus-io/milvus/refs/heads/master/scripts/standalone_embed.bat -OutFile standalone.bat

执行完以后,会在当前路径下生成standalone.bat文件

  1. 执行命令
bash 复制代码
.\standalone.bat start

第三步我们将启动脚本安装在当前目录下,通过bat文件传递启动命令。

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

  1. 查看状态

本地缺少Milvus镜像会自动从云端拉取,看到上图所示 Start successfully 则启动成功。若失败,可重试几次。

  1. 停止容器
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

查看数据库
  1. 创建客户端
bash 复制代码
from pymilvus import MilvusClient
client = MilvusClient("http://localhost:19530")
  1. 列出所有数据库
创建数据库
删除数据库

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

4.1.2 Collection

切换数据库
查看数据库下的collections
创建collection

dimension:嵌入向量维度,应和嵌入模型的向量维度保持一致

metric_type:表示向量相似度的计算方式,COSINE表示余弦相似度

当用户提问时,系统会把提问也变成向量,然后去数据库里找"最相似"的本地文本向量。但怎么定义"相似"呢?向量数据库需要知道计算规则。COSINE(余弦相似度)关注的是两个向量在方向上的夹角:

如果两个向量方向完全一致(代表文本意思极度接近),余弦值接近1

如果方向正交(毫无关系),值接近0

结论:在RAG检索时,Milvus会帮你计算用户问题与数据库中所有文本的余弦相似度,并把得分从大到小排序,把得分最高(最相似)的前k个片段还给你。(注:除了COSINE之外,常见的还有L2欧氏距离、IP内积等。)

删除collection
相关推荐
qq_452396234 小时前
第七篇:《向量数据库选型:从 Chroma 到 Milvus 的落地对比》
数据库·milvus
xian_wwq18 小时前
【学习笔记】Milvus 如何完成一次向量相似度检索,Milvus 索引到底应该怎么选?-15
笔记·学习·milvus
wespaul1 天前
VeapAI 自然语言操作实战|第 07 篇:执行层——编排引擎与全局语义命令
服务器·人工智能·milvus
wespaul1 天前
VeapAI 自然语言操作实战|第 06 篇:AiConsole 前端运行时——一个 Hub,八个注册表
前端·人工智能·milvus
程序人生8882 天前
本地向量底座怎么搭?DocConverter Web 的 BGE 嵌入模型、ChromaDB 与外部 Milvus 接入
前端·milvus
wespaul2 天前
VeapAI 自然语言操作实战|第 05 篇:向量与召回——从知识条目到可检索资产
大数据·数据库·人工智能·milvus
Είναι η κοπέλα3 天前
向量数据库与嵌入模型:Chroma/FAISS/Milvus 选型
数据库·milvus·faiss
wespaul3 天前
知识主题 + Milvus:把业务术语喂给模型的三步离线构建
人工智能·milvus
看-是灰机3 天前
Milvus向量数据库
linux·运维·人工智能·机器学习·milvus