作者 | 王强
在今天这个大数据无处不在的时代,如何高效精确地对海量数据进行处理和分析,是摆在各行业头部企业与软件开发团队面前的重大挑战。传统的结构化、半结构化数据领域有着较为成熟的解决方案和技术,相关数据尚可轻松应对;但在图片、视频、语音为代表的非结构化数据领域,业内曾长时间缺乏高效的处理和分类算法技术,给这些领域的搜索业务实践带来了巨大的困难。
为了帮助企业和软件开发人员应对海量非结构化数据检索难题,Zilliz 于 2019 年底推出了开源向量搜索引擎 Milvus。Milvus 支持针对 TB 级向量的增删改操作和近实时查询,具有高度灵活、稳定可靠以及高速查询等特点。它集成了 Faiss、NMSLIB、Annoy 等广泛应用的向量索引库,并提供了一整套简单直观的 API,支持过滤标量数据,可提供高效、准确的向量搜索能力。
Milvus 结合了深度学习领域的前沿技术成果,对接了图片识别,视频处理,声音识别,自然语言处理等易于调用的深度学习模型,可以通过 GPU 等高算力硬件显著降低大规模向量搜索所需的硬件规模,从而降低系统成本、提高向量搜索性能。作为一款开源向量搜索引擎,开发者还能通过 Milvus 的开源社区参与到产品的开发设计中,打造出更符合自己使用习惯的向量检索数据库。
目前,Milvus 已获得全球数百家组织的采用,在电子商务、泛互联网服务、智能产品设计、智慧城市建设、安防、生物制药、医疗等领域都能见到 Milvus 的身影。Milvus 已成为大规模 AI 搜索技术领域的明星,将帮助越来越多的企业和组织挖掘海量非结构化数据中的精华价值。
10 月 17 日,在 Milvus 开源刚满一周年之际,Zilliz 携合作伙伴在北京举办了第一届 Milvus Community Conf。本次大会上,Zilliz 创始人兼 CEO 星爵向大家分享了 Milvus 的发展蓝图和产品演化路线,澜起科技、爱奇艺、贝壳找房、企查查和焦点科技等社区用户与合作伙伴则分享了 Milvus 在各自组织中的一线落地实践经验。
1Milvus 的现状及未来图景:开源基础塑造搜索新星
大会开场,Zilliz 创始人兼 CEO 星爵和研发总监金海登台 ,为大家介绍了 Milvus 当前的发展状况和下一步的技术演进计划。
自 2019 年 10 月 15 日开源以来,Milvus 仅仅用 9 个月时间就在全球获得了超过 300 家组织的采用。Milvus 的应用领域非常广泛,包括电商、互联网服务、医药、智慧城市和安防、计算机软硬件、广告设计、智能制造等大类下数十个细分行业。一年以来,Milvus 经过了多个版本的技术迭代;本月 16 日,Milvus 0.11 版本正式发布,带来了大量底层重构和属性过滤、元数据快照两大新功能。
接下来,Milvus 首先将完善开源社区合作体系,吸引更多组织进入社区管理委员会,并建立定期委员会会议制度。在产品端,Milvus 计划实现广泛的底层软硬件架构支持,对 ARM、RISCV、华为鲲鹏、龙芯等平台提供全方位适配。2021 年,Milvus 还将发布 Milvus Cloud 产品,目标对接全球六大云计算平台(AWS、Azure、GCP、阿里云、腾讯云、华为云),使 Milvus 领先的 AI 搜索能力通过云端惠及更多用户。
2澜起科技:异构硬件体系提升 Milvus 相似性搜索性能
在到会的 Milvus 合作伙伴中,来自上海澜起科技的杨晔为大家介绍了澜起科技利用异构硬件技术提升 Milvus 相似性搜索性能的实践案例。
在推荐、搜索、机器人助手等实践领域,相似性搜索是非常关键的一项底层能力。Milvus 搜索引擎提供的相似性搜索能力需要面对 10 亿级的数据集,提供高达 99.99% 的准确率,并为在线服务尽可能缩短搜索延迟。为了尽可能提升 Milvus 的性能,传统的方案主要利用 GPU 来提供算力增幅,而澜起科技则提出了利用 FPGA 加速器进一步提升性能的方案。
澜起科技基于 Xilinx U250 FPGA 打造了 Milvus 的专用 HSA 加速器,利用多达 64GB 的片上 DDR4 内存打破了常见 GPU 方案的 16-32GB 内存容量瓶颈。澜起科技还专门研发了软件端的 HSA 加速引擎来充分利用 FPGA 硬件的能力,最终实现了极大的性能提升。根据澜起科技的评估结果,无数据拷贝条件下 HSA 加速器相比 GPU(Tesla P100)有着翻倍的搜索效率提升,而有数据拷贝条件下则实现了数量级的巨大飞跃:
3Milvus 在爱奇艺视频推荐领域的应用
来自爱奇艺的张吉介绍了爱奇艺在视频推荐领域应用 Milvus 搜索引擎的落地经验。
爱奇艺在开发大规模视频推荐系统时,经过比较发现向量搜索算法更适合视频推荐应用,进而选择了 Tensorflow Serving 和 Milvus 为基础来打造整个系统的底层架构。其中,选择 Milvus 的主要原因是看重了它丰富文档、完善封装和 RPC 特性。整套推荐系统的架构如下:
在内部测试中,爱奇艺在一台 Intel Xeon 6248/4GB 机器上测试了 Milvus 的性能,在数百到上千 QPS 的场景下 Milvus 可提供 4-8ms 的平均延迟,整体表现较佳。最后,爱奇艺还尝试实现了 Milvus 与 TF Serving 的结合。未来这套方案还可以扩展到语义搜索和以图搜图等新业务上,ANN 数据规模继续增大后可以分片来应对。
4贝壳找房:Milvus 打造向量搜索平台
房地产中介平台贝壳找房在实践中遇到的一个关键需求,就是通过房产户型图来查找相似房源。来自贝壳找房的孙要飞就介绍了贝壳找房利用 Milvus 打造向量搜索平台,解决此类需求的经验。
向量搜索在处理户型图、用户画像、语音、长文本等数据时相比传统搜索有着明显优势。贝壳找房在做向量搜索平台技术选型时,看中了 Milvus 的多开源库支持、读写分离、高可用性、多属性多索引、高性能、开放社区等优点,从而选择 Milvus 作为搜索平台的核心引擎。
在此基础上,贝壳找房打造了一个低时延、高吞吐、高可用的向量搜索架构,实现了资源伸缩、存活检测、数据 T 1 同步、高一致性、高可靠性等技术特性。该平台构建完成后,很快应用在了贝壳找房的相似户型查找、智能客服、智能推荐等应用场景中,显著提升了贝壳找房的终端用户体验。未来,贝壳找房还将进一步提升该平台的稳定性和资源利用率,并不断开发新特性,适配更多使用场景。
5企查查:利用 Milvus 增强商标检索
企查查是一款企业信用查询工具,旨在提供快速查询企业相关信息的服务。目前,企查查已收录约 5000 万个企业商标信息和图片,如何在这些图片中快速准确找到相似商标,是帮助企业用户提升商标保护能力的关键。
为此,企查查基于海量数据扩展能力、高速响应和平衡成本三个需求维度,选择了 Milvus 来实施商标图片检索项目。来自企查查的文安哲介绍了该项目的具体情况。
在项目开发中,企查查团队解决了数据存储、检索和干扰项排除等问题,最终实现了较好的检索效果。在现场演示环节,该平台不仅能够快速检索出企查查数据库中给定商标图形的相似项目,还能对来自摄像头等输入的变形、低精度图像进行高精确度查找,给终端用户带来了极大便利。
6焦点科技:Milvus 赋能智能搜索
焦点科技是国内头部软件企业,业务涉及电商、教育、云计算等诸多领域。随着业务的扩张,焦点科技希望能够实现多个旗下平台的聚合图片搜索,更好地满足用户 / 卖家推荐、同行 / 社区匹配的需求。来自焦点科技的黎阳介绍了相关细节。
早期,焦点科技试图自行研发向量搜索架构来搭建所需能力,但遇到了很大的困难。Milvus 发布之后,焦点科技就转向利用 Milvus 嵌入原有搜索引擎中的技术路线。
通过 Milvus,焦点科技实现了按照产品属性关键字进行精确搜索的能力。例如,当用户输入“iPhone 6 土豪金 5.5 寸”时,搜索平台可以识别出这组关键字指的是手机这一实体产品类别,并识别出“土豪金”的颜色属性和“5.5 寸”的尺寸属性,从而精确定位到相关产品上,排除了传统搜索技术经常会找到的“苹果手机维修手册”“苹果手机玩具”之类的干扰项,为用户提供精准、高效的智能搜索体验。
7大会总结
除上述合作伙伴外,来自 Facebook 的技术团队还在大会上分享了 Facebook Faiss 相似性搜索库的技术细节。
本届 Milvus Community Conf 可谓群星闪耀,精彩纷呈。作为 Milvus 发展道路上的一个重大里程碑,本届大会见证了 Milvus 开源一周年来取得的优异成绩,向更多人展现了 Milvus 在向量搜索领域的深度价值与潜力。随着非结构化数据搜索需求的飞速增长,Milvus 作为业内前沿的向量搜索开源项目,未来的前景会更加广阔。更多组织和贡献者的加入也将不断强化 Milvus 开源社区的实力,在向量搜索领域塑造最有影响力的开源生态。当 Milvus Cloud 在 2021 年正式推出后,Milvus 将在向量搜索行业引领怎样的风潮,值得我们期待。