关于搜索引擎:基于-OpenSearch-向量检索版大模型搭建对话式搜索

66次阅读

共计 3587 个字符,预计需要花费 9 分钟才能阅读完成。

面向企业开发者的 PaaS 计划

一周前,阿里云 OpenSearch 公布的 LLM 智能问答版,面向行业搜寻场景,提供企业专属问答搜寻服务。作为一站式免运维的 SaaS 服务,智能问答版基于内置的 LLM 大模型提供问答能力,为企业疾速搭建问答搜寻零碎,详见链接:https://developer.aliyun.com/article/1239380

除了 SaaS 的解决方案外,现在阿里云 OpenSearch 再推面向企业开发者的 PaaS 计划:基于 OpenSearch 向量检索版,为企业开发者提供性能体现优良、性价比优异的向量检索服务,并提供与大模型联合脚本工具,用户可在应用能力牢靠的向量检索服务的同时,自由选择文档切片计划、向量化模型、大语言模型。

大语言模型时代,对话式搜寻开启新纪元

随着 2022 年末公布大语言模型利用,短短两个月工夫月活过亿,惊人的增长速度刷新了 AI 利用的记录,也把整个世界带到了大模型时代。

新的技术浪潮带来业务场景的变革,Google、Bing 等大企业的跟进,使得对话式搜寻成为企业争相摸索的新畛域,如何将大语言模型弱小的逻辑推理、对话能力,与业务本身垂直畛域数据相结合,打造出专属企业的对话式搜寻服务,成为待解决的首要问题。

为什么不能间接应用大语言模型?

大语言模型体现出的“什么都懂,什么都能聊”,次要依赖于底座大语言模型(LLM)中压缩的世界常识,它可能答复比拟普世的问题,但如果间接应用大语言模型征询垂直业余畛域问题,因为世界常识中并不蕴含企业专属的数据,失去的后果常常是齐全谬误的、不相干的。

下图示例中,提到的 havenask 是阿里巴巴自研的开源大规模搜索引擎(https://github.com/alibaba/havenask),作为 OpenSearch 的底层引擎于 2022 年 11 月对外开源,但大语言模型并未获知此信息,返回后果不现实。

开源信息尚且如此,可见企业想基于本身数据构建对话式搜寻,是无奈间接应用大语言模型的,需寻求联合计划。

为什么用向量检索 + 大语言模型搭建对话式搜寻?

对话式搜寻的利用场景

对话式搜寻可被利用于电商、内容、教育、企业外部等多行业畛域,依据客户特色与问题需要,精准取得问答后果,高效获取信息。

那么企业该如何基于本身数据,构建垂直畛域对话式搜寻服务呢?

以后大多数企业均采纳“文档切片 + 向量检索 + 大模型生成答案”的形式,构建垂直畛域对话式搜寻。

将企业数据和对话交互信息,先进行向量特征提取,而后存入向量检索引擎构建索引并进行类似度召回,将召回 TOP 后果传入 LLM 大语言模型,对信息进行对话式后果整合,最终返回给客户。这种计划在老本、成果、业务应用灵便度等不便均具备劣势,成为企业的优选计划。

什么是向量?

将物理世界产生的非结构化数据(如图片、音视频、对话信息),转化为结构化的多维向量,用这些向量标识实体和实体间的关系。再计算向量之间间隔,通常状况下,间隔越近、类似度越高,召回类似度最高的 TOP 后果,实现检索。向量检索其实离咱们很近:以图搜图、同款比价、个性化搜寻、语义了解……

为什么向量能用于对话式搜寻?

向量检索的其中一个典型利用场景就是「天然语义了解、语义了解」,而对话式搜寻的外围,也在于对问题和答案的语义了解。

下图举例,当用户征询“浙一医院”的相干问题时,因为数据库中不具备“浙一”关键词,所以传统分词搜寻无奈召回。此时引入向量分析,对人们历史语言与点击关联进行剖析,建设语义相关性模型,将数据特色用高维向量表白,通过比对向量间隔,发现“浙一医院”和“浙江大学医学院从属第一医院”相关性很高,能够被检索进去。

由此可见,向量能够在对话式搜寻计划中,承当语义剖析、返回相干数据后果的重要作用。

OpenSearch 向量检索版 + 大模型计划简介

OpenSearch 向量检索版是阿里巴巴自主研发的大规模分布式搜索引擎,其外围能力广泛应用于阿里巴巴和蚂蚁团体内泛滥业务。OpenSearch 向量检索版专一向量检索场景,数据毫秒级查问,数据秒级更新、实时写入,反对标签 + 向量混合检索等能力,满足同平台下不同企业、同企业内不同业务的问答场景向量后果返回。

OpenSearch 向量检索版 + 大模型计划整体分为 2 个局部,首先将业务数据进行向量化预处理,其次在线搜寻服务进行检索及内容生成。

(1)业务数据预处理

为了可能依照用户需要搜寻到指标商品,须要对业务数据进行预处理,构建向量索引实现搜寻性能

步骤 1:将文本模式的业务数据导入文本向量化模型中,失去向量模式的业务数据

步骤 2:将向量模式的业务数据导入到 OpenSearch 向量检索版中,构建向量索引

(2)搜寻问答在线服务

实现搜寻性能后,联合 Top N 搜寻后果,基于 LLM 问答模型返回搜寻问答后果

步骤 1:将终端用户输出的 query 输出文本向量化模型,失去向量模式的用户 query

步骤 2:将向量模式的用户 query 输出 OpenSearch 向量检索版

步骤 3:应用 OpenSearch 向量检索版内置的向量检索引擎失去业务数据中的 Top N 搜寻后果

步骤 4:将 Top N 搜寻后果整合作为 prompt,输出 LLM 问答模型

步骤 5:将问答模型生成的问答后果和向量检索失去的搜寻后果返回给终端用户

(3)成果展现

下图为将 OpenSearch 产品文档作为业务数据,应用本计划构建的对话式搜寻成果展现。

OpenSearch 向量检索版 + 大模型计划,有哪些劣势?

(1)高性能:自研的高性能向量检索引擎

  • 大模型场景下,向量维度广泛较高,对性能老本要求更高
  • OpenSearch 向量检索版反对千亿数据毫秒级响应,实时数据更新秒级可见
  • OpenSearch 向量检索版的检索性能优于开源向量搜索引擎数倍,在高 QPS 场景下召回率显著优于开源向量搜索引擎

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

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

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

(2)低成本:采纳多种形式优化存储老本,缩小资源耗费

  • 数据压缩:可将原始数据转化为 float 模式存储,并再采纳 zstd 等高效算法进行数据压缩,实现存储老本优化
  • 精密索引结构设计:针对不容类型索引,可采纳不同优化策略,升高索引大小
  • 非全内存加载:能够应用 mmap 非 lock 的模式加载索引,无效升高内存开销
  • 引擎劣势:OpenSearch 向量检索版引擎自身具备构建索引大小、GPU 资源耗用的劣势,等同数据条件下,OpenSearch 向量检索版内存占用仅为开源向量检索引擎的 50% 左右

(3)具备丰盛的向量检索能力

  • 反对 HNSW、QC、Linear 等多种向量检索算法
  • 反对标签、文本倒排索引、向量索引的混合检索
  • 反对按表达式过滤,边过滤边检索
  • Query 中反对设置,类似度阈值、扫描返回的节点数等参数,配置灵便

(4)海量数据反对,应答业务扩张

  • 反对大规模向量疾速导入与索引构建,单节点 348 维 1 亿向量,通过配置优化,可在 3.5 小时内实现全量构建
  • 反对数据动静更新、即增即查、主动索引重建
  • 反对数据程度扩大

(5)可灵便、疾速搭建企业专属对话式搜寻

  • 稳固牢靠:应用客户业务数据而非公开数据进行内容生成,输入后果更加稳固、牢靠
  • 交互降级:既能为客户返回对话式检索后果,也能够作为传统检索,返回 TOP 后果,更灵便应答各种业务场景
  • 流式输入:向量检索之后的 LLM 交互通常耗时较长,OpenSearch 反对流式输入,缓解等待时间过长的体验问题

产品配置流程

  1. 第一次开明阿里云账号并登录控制台,您需先创立 AK 和 SK
  2. 产品反对 MaxCompute 数据源、API 数据源,您需提前准备向量数据(后续产品将集成文本 embedding 服务,可关注产品更新布告)
  3. 购买 OpenSearch 向量检索版实例,零碎主动部署与购买规格统一的空集群,您需为该集群「配置数据源、配置索引构造、索引重建」,实现向量数据导入与索引构建之后,才可失常搜寻
  4. 在控制台查问测试页面或通过 API/SDK,进行向量搜寻成果测试
  5. 下载 OpenSearch 大模型联合工具,并配置大模型相干信息(用户可通过简略调整联合工具代码,自行抉择第三方大模型联合应用)
  6. 启动对话式搜寻服务

更多应用阐明参考:https://help.aliyun.com/document_detail/2341640.html

特地揭示:本解决方案中的“开源向量模型”、“大模型”等来自第三方(合称“第三方模型”)。阿里云无奈保障第三方模型合规、精确,也不对第三方模型自身、及您应用第三方模型的行为和后果等承当任何责任。请您在拜访和应用前慎重考虑。此外咱们也提醒您,第三方模型附有“开源许可证”、“License”等协定,您该当仔细阅读并严格遵守这些协定的约定。

点击立刻收费试用云产品 开启云上实际之旅!

原文链接

本文为阿里云原创内容,未经容许不得转载。

正文完
 0