2024年, Milvus 社区的那些事
随着跨年钟声响起,2024 年告一段落。这一年,Milvus GitHub Stars 正式突破 3 万大关,Docker 下载量突破6700w 次,达到一个新的里程碑,在开源向量数据库领域继续引领前行。在这遥遥领先的数据背后,不妨让我们一起回头看看,今年 Milvus 的社区里都发生了哪些事情,对于每位关心 Milvus 的朋友会有哪些帮助。
01.
2 个大版本,36 个小版本
所有社区的讨论都是围绕 Milvus 展开的,体现社区活跃度的一个关键指标就是版本迭代速度。2024 年,Milvus 社区一共发布了 36 个版本,平均 2 周不到就会发布一个版本,其中包含两个大的版本系列:2.4 和 2.5 。2.4 系列版本中,Milvus 支持了多向量列能力,以及稀疏向量类型,并且引入了丰富的 GPU 索引,使向量搜索的广度,深度以及性能进一步提升。2.5 系列版本中,Milvus 创新性地提出了基于稀疏向量的 BM25 检索能力,通过内置的 Sparse-BM25 对 Lexical 检索提供了原生支持,响应了社区里一直呼声很高的关键词检索需求。关于这两个大版本的详细功能解读,感兴趣的朋友可以参考以下两篇文章:《引领向量数据库技术新变革,Milvus 2.4 正式上线!》《Milvus 2.5:全文检索上线,标量过滤提速,易用性再突破!》。当然,如果您想了解任意一个版本的特性,提升以及 bugfix,Milvus 官网的 Release Note (https://milvus.io/docs/release_notes.md)页面可以找到答案。
版本迭代速度快,可以证明 Milvus 是一个十分活跃的开源社区,不过对于每一位用户来讲,经常会碰到 2 个问题:
版本这么多,我应该选哪个?
我的版本比较老,怎么升级到新版本?
关于版本选择,我的建议一般是这样,只考虑最新的两个大版本,根据功能需求确定大版本,大版本中选择最新的小版本。Milvus 的发版有这样的规律,一些大点的功能,比如,支持 GPU,多向量,全文检索,都会在一个大版本中首次引入,后续的版本都会包含。当一个大版本发布后,会持续发布一些小版本,主要增加一些小的功能和优化以及进行 bugfix。所以,版本号越大的小版本,也就是越新的小版本,它的稳定性一般都会更好,2.4.20 的稳定性就比2.4.1 的稳定性更好。
至于版本升级,Milvus 官网其实已经提供了很完善的升级指导了,https://milvus.io/docs/upgrade_milvus_cluster-operator.md,一般严格按照官网的文档操作不太会出什么问题。如果还是不放心,我们可以在升级之前,对当前集群的数据使用 Milvus Backup(https://github.com/zilliztech/milvus-backup) 做一个备份,即使发生意外情况,依旧可以恢复老集群。
02.
12 场直播,7 场 Meetup
Milvus 社区的常规活动,主要分为线上直播和线下 Meetup 两类。线上直播我们又分为 UserTech 和 DeepDive 两种类型,UserTech 主要聚焦在用户落地案例以及 Milvus 最佳实践分享,一般会邀请社区的资深用户作为嘉宾,DeepDive 则会重点分享 Milvus 的功能架构,创新技术等话题,偏技术解析更多。直播活动一般每个月都会有一次,UserTech 和 DeepDive 轮流登场,满足不同口味的朋友。并且在直播前一周都会在 Milvus 的用户交流群里进行通知,如果您还不在群里,记得扫描文末的二维码或者直接添加 Zilliz 小助手的微信(zilliz-tech)邀请进群。2024 年,Milvus 社区一共做了 12 场直播,既包括,携程、网易、OPPO 这些 Milvus 资深用户带来的 UserTech,也有Milvus 研发团队带来的,Milvus Lite 详解、ScaNN 算法拆解、向量过滤搜索及优化等 DeepDive。如果发现错过了感兴趣的直播,可以去 Zilliz 的公众号和 B 站账号里找一下回放。
除了丰富的线上直播之外,Milvus 社区还有和开发者面对面交流的 Meetup。在今年五月份之前,Milvus 的 Meetup 叫做 Milvus 老友汇,主要会邀请 Milvus 团队的成员和 Milvus 的用户来进行线下分享,话题都是围绕 Milvus 本身。在 Milvus 老友汇举办过程中,我们逐渐收到了一些来自参会朋友的反馈,希望增加一些非结构化数据处理,GenAI 技术的内容,恰好此时,Milvus 海外社区发起的 Unstructured Data Meetup 举行的如火如荼,受到广大开发者的支持和认可。于是,我们对 Milvus 老友汇进行了一次改革,正式变身为 Unstructured Data Meetup,核心差异就是在之前 Milvus 老友汇的基础上,增加了非结构化数据处理和 GenAI 技术的内容,使得 Meetup 的内容更加丰富,满足不同领域开发者的需求。2024 年,Milvus 社区一共举行了 1 场 Milvus 老友汇和 6 场 Unstructured Data Meetup。一些开发者比较多的城市,比如北京,上海,杭州,深圳,一年一次 Meetup 很多朋友表示根本不够。2025 年,随着 Milvus 社区力量的壮大,我们会考虑在这些重点城市提高频次。
新的一年,紧跟时代潮流,我们准备尝试短视频栏目,把社区里大家经常遇到的问题,典型的实践案例,关心的热点话题通过短视频的形式来进行解答和讲解,帮助大家更快地上手避坑,更好更稳地把向量数据库用起来,敬请期待。
03.
2 个重磅项目,北极星计划+黄金写手
一个人可以走得很快,一群人才能走得更远。
Milvus 社区能够发展得如此迅速,离不开每一位社区伙伴的支持。作为一个全球化的开源项目,每天会有上万开发者在使用 Milvus,使用过程中不可避免会遇到一些问题,如果仅靠 Milvus 团队自身的同学,是无论如何都无法支持完这些开发者的。也是在这个时候,我们看到 Github、微信用户交流群以及 Discord 里面,站出来了一些朋友主动地帮助这些遇到问题的开发者,或耐心地分析排查问题,或细致地编写博客分享最佳实践,各自在做一些擅长的事情来帮助别人。他们有的是 Milvus 老用户,有的是狂热的开源爱好者,有的是还在校园的学生,这就是我们希望同行的一群人。
为了将这些志同道合的朋友聚在一起,Milvus 社区发起了北极星计划(https://zilliz.com.cn/northstar)和黄金写手计划(https://zilliz.com.cn/golden-writer),旨在组建团队与我们共同建设 Milvus 社区,一起探讨社区前进的方向。如果您也非常喜爱 Milvus 这个项目,并且希望通过自己的 Coding、沟通、写作、布道等能力来建设运营 Milvus 社区,欢迎加入我们的北极星计划。如果您的文笔特别好,非常擅长技术文章写作,黄金写手计划欢迎您。
北极星计划和黄金写手计划自从 2024 年 3 月发布以来,目前已经集结了 20 多位小伙伴,不乏一些技术大牛,资深布道师,狂热开源分子。在 Milvus 版本发布的背后,每一场活动的背后以及爆款文章的背后,都有这些小伙伴的身影,再一次感谢这些朋友,选择和我们共同前行!
未来已来,AI 的能力正在以天为单位进行突破,Milvus 3.0,一个更加 AI-Friendly 的崭新版本也即将在 2025 年和大家见面。新的一年,Milvus 社区的故事还在继续,还会更精彩,让我们共同见证!
最后,给大家拜个早年,祝每一位 Milvus 社区的朋友新年快乐 🎉
作者介绍
李成龙
Zilliz 资深开源布道师
推荐阅读
相关文章:

2024年, Milvus 社区的那些事
随着跨年钟声响起,2024 年告一段落。这一年,Milvus GitHub Stars 正式突破 3 万大关,Docker 下载量突破6700w 次,达到一个新的里程碑,在开源向量数据库领域继续引领前行。在这遥遥领先的数据背后,不妨让我们…...

vue代理问题
vue代理问题 场景:前后端分离项目问题,在前端中请求接口,返回数据这个过程,但是在这个过程中,前端会有两个环境,一个是开发环境,一个是生产环境. 在开发环境中请求接口可能会遇到跨域问题,比如请求的端口是3000,当前端口是8080,这时候就会遇到跨域问题,或者ip不同,也会存在跨…...

Git快速入门(三)·远程仓库GitHub以及Gitee的使用
目录 1. 远程仓库GitHub 1.1 登录 1.2 创建库 1.3 创建文件 1.4 修改文件 1.5 创建分支 1.6 删除库 1.7 将远程仓库下载到本地 1.7.1 关联登录 1.7.2 克隆 1.7.3 通过GitHub Desktop更改远程库 2. 远程仓库Gitee 2.1 登录 2.2 创建文件 2.3 关联…...

[开源]C++代码分享
一,声明 被人水平有限,开源只是为了分享。勿喷!!!还请大佬指点。 二,代码 // --------------------------------------------------------- 头文件 ----------------------------------------------- #in…...

CSS3——3. 书写格式二
<!DOCTYPE html> <html><head><meta charset"UTF-8"><title></title></head><body><!--css书写:--><!--1. 属性名:属性值--><!--2.属性值是对属性的相关描述--><!--3.属性名必须是…...

PHP语言的计算机基础
计算机基础与PHP语言入门 在当今信息技术高速发展的时代,计算机已经成为我们日常生活中不可或缺的重要工具。学习计算机基础知识,不仅能增强我们对信息技术的理解,还会为我们后续学习编程语言打下良好的基础。本文将以PHP语言为切入点&#…...

第 23 章 JSON
第 23 章 JSON 23.1 语法 JSON 语法支持表示 3 种类型的值。 ❑ 简单值:字符串、数值、布尔值和 null 可以在 JSON 中出现,就像在 JavaScript 中一样。特殊值 undefined 不可以。 ❑ 对象:第一种复杂数据类型,对象表示有序键/值…...

Java 正则表达式入门与应用(详细版)
正则表达式(Regular Expression,简称Regex)是一种文本模式匹配工具,在许多编程语言中都得到了广泛应用。Java 作为一种强大的编程语言,提供了对正则表达式的内建支持,使得在字符串处理、数据验证和文本解析…...

洛谷:P1540 [NOIP2010 提高组] 机器翻译
[NOIP2010 提高组] 机器翻译 题目背景 NOIP2010 提高组 T1 题目描述 小晨的电脑上安装了一个机器翻译软件,他经常用这个软件来翻译英语文章。 这个翻译软件的原理很简单,它只是从头到尾,依次将每个英文单词用对应的中文含义来替换。对于…...

基于AT89C51单片机的可暂停八路抢答器设计
点击链接获取Keil源码与Project Backups仿真图: https://download.csdn.net/download/qq_64505944/90196607?spm1001.2014.3001.5503 C15 部分参考设计如下: 摘要 随着社会进步和科技发展,电子设备在各类活动中的应用日益普遍,…...

面试题解,Java中的“对象”剖析
一、说一说JVM中对象的内存布局?new一个对象到底占多大内存? 话不多说,看下图,对象的内存布局图 一个对象的内存布局主要由三部分组成:对象头(Object Header)、实例数据(Instance D…...

行为模式3.迭代器模式
行为型模式 模板方法模式(Template Method Pattern)命令模式(Command Pattern)迭代器模式(Iterator Pattern)观察者模式(Observer Pattern)中介者模式(Mediator Pattern…...

第8章 DMA控制器
DMA的基本概念 DMA是用硬件实现不再通过CPU的,计算机内存储器与I/O设备之间的直接数据传送技术。该硬件称为DMA控制器(简称DMAC),用来控制数据的输入和输出,复杂性堪比CPU。 DMA方式可实现: 数据存储器RAM→I/O端口的DMA读传送I/O…...

后端java开发路由接口并部署服务器(四)
一、安装IntelliJ IDEA,安装包下载 1、官网下载 2、网盘资源 安装包下载完成后进行傻瓜式下一步安装就可以了 打开IntelliJ IDEA,输入网盘资源文件内容 三、汉化处理 插件搜索chinese,就会找到相应的插件安装重启软件即可 四、新建后端j…...

检索增强生成 和思维链 结合: 如何创建检索增强思维链 (RAT)?
论文地址:https://arxiv.org/pdf/2403.05313 Github地址:https://github.com/CraftJarvis/RAT 想象一下,一个人工智能助手可以像莎士比亚一样写作,像专家一样推理。这听起来很了不起,对吧?但是࿰…...

在 SQL 中,区分 聚合列 和 非聚合列(nonaggregated column)
文章目录 1. 什么是聚合列?2. 什么是非聚合列?3. 在 GROUP BY 查询中的非聚合列问题示例解决方案 4. 为什么 only_full_group_by 要求非聚合列出现在 GROUP BY 中?5. 如何判断一个列是聚合列还是非聚合列?6. 总结 在 SQL 中&#…...

单元测试3.0+ @RunWith(JMockit.class)+mock+injectable+Expectations
Jmockit使用笔记_基本功能使用Tested_Injectable_Mocked_Expectations_jmockit.class-CSDN博客 静态变量直接赋值就好,没必要mock了 测试框架Jmockit集合junit使用 RunWith(JMockit.class) 写在测试案例类上的注解 Tested 在测试案例中,写在我们要测试的类上…...

STM32第十一课:STM32-基于标准库的42步进电机的简单IO控制(附电机教程,看到即赚到)
一:步进电机简介 步进电机又称为脉冲电机,简而言之,就是一步一步前进的电机。基于最基本的电磁铁原理,它是一种可以自由回转的电磁铁,其动作原理是依靠气隙磁导的变化来产生电磁转矩,步进电机的角位移量与输入的脉冲个数严格成正…...

MotionCtrl: A Unified and Flexible Motion Controller for Video Generation 论文解读
目录 一、概述 二、相关工作 三、前置知识 1、LVDM Introduction 2、LVDM Method 3、LVDM for Short Video Generation 4、Hierarchical LVDM for Long Video Generation 5、训练细节 6、推理过程 四、MotionCtrl 1、CMCM 2、OMCM 3、训练策略 五、实验 一、概述…...

LINUX线程操作
文章目录 线程的定义LINUX中的线程模型一对一模型多对一模型多对多模型 线程实现原理线程的状态新建状态(New)就绪状态(Runnable)运行状态(Running)阻塞状态(Blocked)死亡状态&#…...

在Lua中,Metatable元表如何操作?
Lua中的Metatable(元表)是一个强大的特性,它允许我们改变表(table)的行为。下面是对Lua中的Metatable元表的详细介绍,包括语法规则和示例。 1.Metatable介绍 Metatable是一个普通的Lua表,它用于…...

4D LUT: Learnable Context-Aware 4D LookupTable for Image Enhancement
摘要:图像增强旨在通过修饰色彩和色调来提高照片的审美视觉质量,是专业数码摄影的必备技术。 近年来,基于深度学习的图像增强算法取得了可喜的性能并越来越受欢迎。 然而,典型的努力尝试为所有像素的颜色转换构建统一的增强器。 它…...

瑞芯微rk3568平台 openwrt系统适配ffmpeg硬件解码(rkmpp)
瑞芯微rk3568平台 openwrt系统适配ffmpeg硬件解码(rkmpp) RK3568及rkmpp介绍编译安装mpp获取源码交叉编译安装 libdrmlibdrm-2.4.89 make 方式编译(cannot find -lcairo, 不推荐)下载源码编译编译错误: multiple definition of `nouveau debug‘错误cannot find -lcairo:…...

使用SuperMap制作地形图的详细教程
一、数据准备 本示例以山东为例,演示如何通过SuperMap iDesktopX制作一个好看的地形图。所有数据均来源于互联网公开数据,如有自己项目真实数据,可直接跳过数据下载进入下一步。 本示例所需数据包括: 数据类别 数据类型 DEM数据…...

PHP Array:精通数组操作
PHP Array:精通数组操作 PHP,作为一门流行的服务器端编程语言,提供了强大的数组处理能力。数组是PHP中非常灵活和强大的数据结构,它可以存储多个相同类型的值。在PHP中,数组不仅可以存储数字,还可以存储字…...

【使用命令配置java环境变量永久生效与脚本切换jdk版本】
java配置环境变量命令与脚本切换jdk版本 新建用户环境变量永久生效 setx JAVA8_HOME "D:\Java\jdk8" setx JAVA17_HOME "d:\Java\jdk-17" setx JAVA_HOME %JAVA8_HOME% setx CLASSPATH ".;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;"…...

STM32-笔记32-ESP8266作为服务端
esp8266作为服务器的时候,这时候网络助手以客户端的模式连接到esp8266,其中IP地址写的是esp8266作为服务器时的IP地址,可以使用ATCIFSR查询esp8266的ip地址,端口号默认写333。 当esp8266作为服务器的时候,需要完成哪些…...

RAG(Retrieval-Augmented Generation,检索增强生成)流程
目录 一、知识文档的准备二、OCR转换三、分词处理四、创建向量数据库五、初始化语言聊天模型1.prompt2.检索链3.对话 完整代码 知识文档的准备:首先需要准备知识文档,这些文档可以是多种格式,如Word、TXT、PDF等。使用文档加载器或多模态模型…...

【Python学习(六)——While、for、循环控制、指数爆炸】
Python学习(六)——While、for、循环控制、指数爆炸 本文介绍了While、for、循环控制、指数爆炸,仅作为本人学习时记录,感兴趣的初学者可以一起看看,欢迎评论区讨论,一起加油鸭~~~ 心中默念:Py…...

解释一下:运放的输入失调电流
输入失调电流 首先看基础部分:这就是同相比例放大器 按照理论计算,输入VIN=0时,输出VOUT应为0,对吧 仿真与理论差距较大,有200多毫伏的偏差,这就是输入偏置电流IBIAS引起的,接着看它的定义 同向和反向输入电流的平均值,也就是Ib1、Ib2求平均,即(Ib1+Ib2)/2 按照下面…...