网页 综合 更新时间 2026-11-13 19:56:46

阿里云向量检索服务 | 全性能搜索方案-阿里云开发者社区

自动蜘蛛 developer.aliyun.com 正文约 3448 字
阿里云向量检索服务 | 全性能搜索方案-阿里云开发者社区
今天主要测评阿里云向量检索服务,测评地址:https://developer.aliyun.com/topic/dashvector 。
在测评开始之前,还是需要先了解一下这款云产品,那么问题来了,什么是向量检索服务?
这里节录一段官方关于向量检索服务的描述:【向量检索服务基于阿里云自研的向量引擎 Proxima 内核,提供具备水平拓展、全托管、云原生的高效向量检索服务。向量检索服务将强大的向量管理、查询等能力,通过简洁易用的 SDK/API 接口透出,方便在大模型知识库搭建、多模态 AI 搜索等多种应用场景上集成。】 向量检索服务产品首页:https://www.aliyun.com/product/ai/dashvector
其实,通过官方提供向量检索服务的定义还是不太理解什么是向量检索服务。毕竟官方的定义往往比较专业,专业带来的结果就是比较晦涩难懂。那么我在这里基于一个大家在日常生活中经常会用到的场景来解释一下。
拍照搜商品用官方的话语描述就是【电商智能搜索和偏好推荐场景】,怎么理解呢?在日常生活中你走在大街上,当你看到某个东西觉得不错,比如衣服、鞋子、手办等等,那么你是否会拿出手机,点开购物APP的拍照搜商品呢?那么这个时候你用到的就是【电商智能搜索】,而当你搜索完一件商品之后,不管是通过图片还是文字搜索,购物APP都会在首页或者搜索栏下面为你推荐相似的商品,这就是【偏好推荐场景】。到这里,你是不是大概理解了什么是向量检索服务呢?
为了更好的理解什么是【电商智能搜索和偏好推荐场景】,这里我查阅了官方的描述,还是可以理解的,节录如下:【在电商智能搜索和偏好推荐场景中,向量数据库可以实现基于向量相似度的搜索和推荐功能。例如一个电商平台中包含了各种商品的图像和描述信息,用户在搜索商品时,可以通过图像或者描述信息查询相关的商品,并且还希望能够实现推荐功能,自动向用户推荐可能感兴趣的商品。
用户只需要先将商品的图像和描述信息使用Embedding技术转换为向量表示,并将其存储到向量数据库中。当用户输入查询请求时,向量检索服务可以将其转换为向量表示,然后计算查询向量与向量数据库中所有商品向量的相似度,然后返回相似度最高的几个商品向量。另外,还可以基于用户的历史行为和偏好通过向量检索服务将用户的历史浏览记录和购买记录转化为向量表示,并在向量数据库中查询与该向量最相似以及相似度较高的商品向量,为用户推荐可能感兴趣的商品,提供更加智能和个性化的服务、更加高效和优秀的性能与购买体验。】检索流程如下图
到这里,我想大家对于向量检索服务,一定都会有一个比较明确的认知了吧。
当然,向量检索服务可不是只有拍照搜商品或者是文字搜商品这一个应用场景的哈,还有其他的应用场景。
随着大模型深度学习的发展,大模型需要利用向量来表示复杂的数据,向量数据库能够高效存储和检索这些高维向量数据,为大模型提供强大的数据支撑。另外,向量数据库可以通过关联真实世界的数据点,如实体、关系等,构建知识图谱,进而支持模型查询和验证语义信息,从而降低模型输出错误的概率。在大模型中,需要处理的数据量极大,传统的关系型数据库几乎无法满足性能需求。而向量数据库由于其内部优化和并行处理能力,可以高效地处理大规模数据集,提供快速的查询和算法执行速度。
这也就是向量检索服务的另一个应用场景【自然语言处理等AI问答系统场景】,下面节录一段这个应用场景的官方描述:【问答系统是属于自然语言处理领域的常见现实应用。典型的问答系统比如通义千问、ChatGPT、在线客户服务系统、QA聊天机器人等。例如在一个问答系统,其中包含了一些预定义的问题和对应的答案。用户希望能够根据输入的问题,自动匹配到最相似的预定义问题,并返回对应的答案。为了实现此功能,首先可以通过向量检索服务将预定义的问题和答案转换为向量表示,并将其存储到向量数据库中。其次当用户输入问题时,向量检索服务可以将其转换为向量表示,并在向量数据库中查询与该向量最相似的问题向量。然后使用模型训练、问答推理、后期优化等步骤,实现类似通义千问、ChatGPT等的语言智能交互体系。】如图所示
除了这两个现在我们接触的比较多的应用场景之外,向量检索服务还可以用于【图库类网站多模态搜索场景】、【视频检索场景】等。总之,简单的理解就是,向量检索服务在一些场景上的应用相对于传统检索服务来说,检索效能有质的飞跃。下面来体验向量检索服务吧!
简单介绍一下这个场景,基于QQ 浏览器搜索标题语料库(QBQTC:QQ Browser Query Title Corpus)进行实时的文本语义搜索,查询最相似的相关标题。
在体验开始之前需要再介绍一下向量检索服务的核心点 Embedding。
通用文本向量模型会将一段文本变成一个向量,将文本变成向量的过程叫 Embedding。
节录官方定义【Embedding是一个多维向量的表示数组,通常由一系列数字组成。Embedding可以用来表示任何数据,例如文本、音频、图片、视频等等,通过Embedding我们可以编码各种类型的非结构化数据,转化为具有语义信息的多维向量,并在这些向量上进行各种操作,例如相似度计算、聚类、分类和推荐等。】流程如图
简单的理解就像这样一个场景,输入文本:“衣服的质量杠杠的,很漂亮,不枉我等了这么久啊,喜欢,以后还来这里买”。python代码
到这里对于向量检索服务,以及向量检索服务中常出现的名词也就解释清楚了,更多的向量检索服务相关内容可以去参考官方文档:向量检索服务
在进行基于向量检索服务与TextEmbedding实现语义搜索之前需要先开通灵积模型服务,进入控制台:https://dashscope.console.aliyun.com/overview?spm=a2c4g.11186623.0.0.31e0697ejMTOD9 点击【去开通】
勾选服务协议点击开通即可。然后点击【管理中心】-【API-KEY管理】,
打开向量检索服务控制台:https://dashvector.console.aliyun.com/cn-hangzhou/overview
点击【创建新的API-KEY】,点击复制,
回到向量检索服务首页,点击【创建Cluster】
在打开的页面选择【免费试用】,输入Cluster名称
勾选服务协议,点击【立即开通】完成Cluster的创建
创建完成Cluster之后回到列表页点击Cluster名称进入详情页复制endpoint地址
需要下载Python3.7及以上版本,下载地址:https://www.python.org/downloads/windows/
官方网址下载的比较慢,可以直接使用我下载的python
链接:https://pan.baidu.com/s/1vPuGI33mfBOWeEfAWvX0ig?pwd=hk16
安装步骤这里不再详细说明,默认安装操作即可,安装步骤参考文档:https://docs.python.org/zh-cn/3.11/using/windows.html#installation-steps ,如果选择自定义安装,默认复选框都全部勾选即可。安装完成后进行后面的步骤。
python3.11安装成功之后,打开windows cmd窗口,执行如下命令安装环境
安装过程出现可能会出现error,报错信息
如果执行pip 升级命令之后还是不行的话,可能是你的网络太差了,建议等待网络比较好的时候尝试。这里透露一下,我的网络可能不好,这一步升级操作尝试了有30分钟。升级成功后如图
还是会有报错的可能,那就只能一直尝试了。
20240130补充,在当天我尝试了大概几个小时之后一直没有成功,后来有一天早上再次尝试,终于成功了,安装环境命令成功情况如图
20240130补充,在执行准备数据命令之前需要先安装git工具
git工具下载地址:https://git-scm.com/download/win 如果没有安装git工具,执行git命令会报如下提示
Git下载完成之后的安装操作可以参考我的博文:https://developer.aliyun.com/article/1431354
Git安装成功后打开【Git CMD】再次执行如下命令获取数据
20240201补充,多次尝试之后最终成功如图
访问原文 返回搜索 https://developer.aliyun.com/article/1427479
本页为82搜索生成的网页快照,内容来自站内索引;演示数据的原文链接仅作示例。