OpenSearch图搜图、文搜图向量检索最佳实践

本文涉及的产品
智能开放搜索 OpenSearch行业算法版,1GB 20LCU 1个月
推荐全链路深度定制开发平台,高级版 1个月
OpenSearch LLM智能问答版免费试用套餐,存储1GB首月+计算资源100CU
简介: 本文介绍如何通过OpenSearch【向量检索版】帮助企业在没有向量数据的情况下快速搭建图像搜索服务,解决图片向量化、向量搜索等检索难题,实现以图搜图、以文搜图等多种图像检索能力。并通过数据压缩功能,降低存储空间,降低业务成本,为企业提供效果、性能双保障。

一、向量检索介绍

1.1 多模态信息的典型特点-非结构化

信息可以被划分为两大类:当信息能够用数据或统一的结构加以表示,称之为结构化数据;当信息无法用数字或统一的结构表示,称之为非结构化数据。非结构数据与结构化数据相比较而言,更难让计算机理解。

以搜索为例:需要将非结构化数据→转为结构化→再完成搜索;

1.png

1.2 向量检索的定义与应用

1.2.1 什么是向量检索?

将物理世界产生的非结构化数据,转化为结构化的多维向量,用这些向量标识实体和实体间的关系。

再计算向量之间距离,通常情况下,距离越近、相似度越高,召回相似度最高的TOP结果,完成检索。

向量检索其实离我们很近以图搜图、同款比价、个性化搜索、语义理解……

1680586759023-073244a5-53cb-4db8-9160-92d82efc885b.png

1.2.2 向量检索典型应用场景

  1. 图像/视频/语音 多模态检索

图搜购物、同款比价,拍照搜题、图片识别等;

  1. NLP 文本检索

标准地址库检索、企业机构名称检索、通过补充向量语义召回,提升搜索效果;

  1. 搜索推荐广告

相似推荐、个性化搜索等;

  1. 向量检索几乎能够应用到AI领域的所有场景。

同时检索的结果也可以作为后续算法的输入进行更多业务相关的计算,实现复杂的业务场景。

2.png

二、企业自建向量检索的痛点

  • 性能差:返回结果耗时太长、结果返回率低 —— 搜索等待久,甚至超时崩溃,体验差
  • 成本高:索引占用过多内存,成本高,价格贵 —— 业务投入成本高,性价比低
  • 效果差:缺少向量搭建经验,精度和参数调不好 —— 搜索效果差
  • 海量数据支持差:业务快速增长,数据量飞涨,自建方案无法有效进行海量数据的索引构建和处理 —— 构建慢、更新慢、拓展性差

三、OpenSearch向量检索版-端到端图像搜索解决方案

3.1 端到端图像搜索方案介绍

就算企业没有向量数据、仅有图片原始数据,也能通过OpenSearch向量检索版端到端图像搜索方案,快速搭建图像搜索服务。用户可以直接导入图片源数据,在OpenSearch内部便捷完成图片向量化、向量搜索等步骤,实现以图搜图、以文搜图等多种图像检索能力。

(1)便捷、高性价比的端到端体验

  • 向量化和索引构建
  • 客户将图片源数据上传到OpenSearch向量检索版,向量检索版使用内置算法,能够将千亿级别的图片数据进行向量化、存储、并形成向量索引。
  • 针对字段、索引进行压缩,尽可能减少内存占用,帮助客户降低成本。
  • 搜索
  • 客户将要搜索的图片,上传给OpenSearch向量检索版,由它对该图片进行向量化
  • 将向量化后的图片与此向量索引进行比对查询,获取相似度最高的结果,并返回给客户
  • image.png


(2)可选三种方式上传图片原始数据,进行向量化处理

  • OSS+MaxCompute+OpenSearch向量检索版:用户先将图片上传至OSS中,在MaxCompute中存储业务表数据以及每条数据对应的图片地址(OSS里的路径,比如/image/1.jpg)
  • MaxCompute+OpenSearch向量检索版:用户将图片通过base64编码后的图片及其表数据存储在MaxCompute中
  • API+OpenSearch向量检索版:用户通过OpenSearch向量检索版给出的数据推送接口,将base64编码后的图片及其表数据推送到OpenSearch向量检索版实例中

3.png

(3)内置模型完成图片向量化

  • 当前内置达摩院开源clip模型完成图像转向量
  • 后续将内置更多可选模型

3.2 技术优势

优势一:高性能保障:自研的超高向量检索引擎

  • OpenSearch向量检索版支持千亿数据毫秒级响应,实时数据更新秒级可见
  • OpenSearch向量检索版的检索性能优于开源向量搜索引擎数倍,在高QPS场景下召回率明显优于开源向量搜索引擎

OpenSearch向量检索版VS开源引擎性能:中数据场景

image.png

数据来源阿里巴巴智能引擎事业部团队,2022年11月

OpenSearch向量检索版VS开源引擎性能:大数据场景

image.png

数据来源阿里巴巴智能引擎事业部团队,2022年11月

优势二:低成本:采用多种方式优化存储成本、减少资源耗用

数据压缩:可将原始数据转化为float形式存储,并再采用zstd等高效算法进行数据压缩,实现存储成本优化

精细索引结构设计:针对不容类型索引,可采用不同优化策略,降低索引大小

非全内存加载:可以使用mmap非lock的形式加载索引,有效降低内存开销

引擎优势:OpenSearch向量检索版引擎本身具备构建索引大小、GPU资源耗用的优势,同等数据条件下,OpenSearch向量检索版内存占用仅为开源向量检索引擎的50%左右。

优势三:具有丰富的向量检索能力

  • 支持HNSW、QC、Linear等多种向量检索算法
  • 支持标签、文本倒排索引、向量索引的混合检索,提高检索性能与查询精度,下图举例说明按核心词混合检索、类别过滤前后的搜索效果对比:

4.png

优势四:支持按表达式过滤,具有边检索边过滤能力,能有效降低搜索无结果率,提升搜索效果

5.png

优势五:Query中支持设置,相似度阈值、扫描返回的节点数等参数,找到查询耗时与返回结果精度之间的最优解

优势六:大规模数据快速索引构建、支持实时更新、数据水平拓展

  • 支持大规模向量快速导入与索引构建,单节点 348维 1亿向量,通过配置优化,可在3.5小时内完成全量构建
  • 支持数据动态更新、即增即查、自动索引重建
  • 支持数据水平扩展


3.3 产品配置流程

  1. 第一次开通阿里云账号并登录控制台,您需先创建AK和SK
  2. 产品支持MaxCompute数据源、API数据源,您需提前准备数据
  3. 购买OpenSearch向量检索版实例,系统自动部署与购买规格一致的空集群,您需为该集群「配置数据源、配置索引结构、索引重建」,之后才可正常搜索
  4. 在控制台查询测试页面或通过API/SDK,进行以文搜图效果测试;通过API/SDK进行以图搜图效果测试
  5. 通过API/SDK调用向量搜索服务

更多使用说明参考: :https://help.aliyun.com/document_detail/2247007.html?spm=a2c4g.463219.0.0.39543e06HXTYHZ

3.4 客户案例

某电商客户,通过约15个工作日完成POC接入:

  1. 完成2亿级别768维向量数据的存储和索引构建,并支持增量更新无需重建索引
  2. 万级别数据,实现毫秒级检索响应,查询耗时对比自建方案降低50%
  3. 支持按条件查询、分类筛选、标签过滤的向量检索能力,满足灵活的业务场景需要

欢迎有高质量搜索效果需求的技术同学测试体验~

专家咨询问卷https://page.aliyun.com/form/act1204394004/index.htm

与更多开发者技术交流可以钉钉加入【推荐与搜索技术交流群】

相关实践学习
基于OpenSearch搭建高质量商品搜索服务
本场景主要介绍开放搜索(OpenSearch)打造独有的电商行业垂直解决方案,模板内置电商查询分析、排序表达式及行业算法能力,沉浸式体验更高性能和效果的智能搜索服务,助力企业在线业务智能增长。
目录
相关文章
|
自然语言处理 分布式计算 Java
基于OpenSearch向量检索版和智能问答版搭建企业专属对话搜索系统
本文将介绍如何使用OpenSearch向量检索版和智能问答版,搭建灵活自定义的企业专属对话搜索系统。
1991 1
|
6月前
|
数据采集 SQL 自然语言处理
阿里云OpenSearch RAG混合检索Embedding模型荣获C-MTEB榜单第一
阿里云OpenSearch引擎通过Dense和Sparse混合检索技术,在中文Embedding模型C-MTEB榜单上拿到第一名,超越Baichuan和众多开源模型,尤其在Retrieval任务上大幅提升。
1347 4
|
6月前
|
分布式计算 搜索推荐 MaxCompute
基于OpenSearch向量检索版的多主体识别最佳实践
本文将介绍如何通过OpenSearch向量检索版,在图像搜索服务中进行多主体识别。
136247 9
|
自然语言处理 算法 数据库
OpenSearch向量检索和大模型方案深度解读
深度解读开放搜索在向量检索和大模型方面的升级演进。
81409 7
|
6月前
|
自然语言处理 分布式计算 算法
通过OpenSearch向量检索版进行混合检索的最佳实践
本文介绍如何通过OpenSearch向量检索版,使用稀疏-稠密向量进行混合检索,获得更好的搜索效果。
1644 0
|
存储 分布式计算 MaxCompute
基于OpenSearch向量检索版和MaxCompute快速搭建图搜服务
本文将介绍企业在没有向量数据的情况下,如何通过OpenSearch向量检索版、MaxCompute以及OSS,快速搭建图像搜索服务。
42768 1
基于OpenSearch向量检索版和MaxCompute快速搭建图搜服务
|
算法 数据挖掘 开发工具
以阿里云OpenSearch为例谈向量检索技术选型
本文从向量检索应用场景、常见的向量检索方法、向量检索性能优化、功能性能对比介绍了向量检索的业务应用场景和技术选型方式。
3089 3
|
存储 分布式计算 算法
OpenSearch向量检索版和MaxCompute快速搭建图搜服务
本方案介绍用户在没有向量数据的情况下,通过直接导入图片源数据,在OpenSearch内部便捷完成图片向量化、向量搜索等步骤,实现以图搜图、以文搜图等多种图像检索能力。
1539 0
|
存储 机器学习/深度学习 自然语言处理
基于 Elasticsearch 向量检索的以文搜图
本实验通过简易快速的阿里云相关组件和开源模型部署,通过1小时的动手实操,搭建基于Elasticsearch向量检索的以文搜图的搜索服务原型。
2228 4
|
存储 数据采集 人工智能
重磅再推 | 基于OpenSearch向量检索版+大模型,搭建对话式搜索
阿里云OpenSearch再推面向企业开发者的PaaS方案:基于OpenSearch向量检索版,为企业开发者提供性能表现优秀、性价比优异的向量检索服务,并提供与大模型结合脚本工具,用户可在使用能力可靠的向量检索服务的同时,自由选择文档切片方案、向量化模型、大语言模型。
15834 1
重磅再推 | 基于OpenSearch向量检索版+大模型,搭建对话式搜索

相关产品

  • 智能开放搜索 OpenSearch