阿里云峰会 | 统一召回引擎在搜索场景的应用实践

本文涉及的产品
推荐全链路深度定制开发平台,高级版 1个月
简介: 淘宝每次的搜索行为在后端都会有大量的数据计算和处理才会召回符合用户需求的搜索结果,当面对的业务越来越多如何在工程体系上不断演化满足不同业务的需求?特邀阿里巴巴技术专家介绍统一召回引擎,带你了解如何应对~

特邀嘉宾:

项昭贵(项公)-阿里巴巴高级技术专家

视频地址: https://summit.aliyun.com/2021/session/689

AI Online Serving工程体系

阿里自研的整套搜索工程体系-AI Online Serving体系,目前支撑起海内外阿里电商全部的搜索、推荐、广告业务,时刻置身大数据主战场,引导成交占据集团电商大盘主体;此外,作为中台技术中坚,AI·OS已是包括电商、阿里云、优酷、菜鸟、盒马、钉钉等等在内全集团的基础设施,更为重要的是AI·OS体系的云产品(开放搜索和智能推荐)矩阵通过阿里云服务于全球开发者,在稳定性和工程效率上都是行业领先水平。


统一召回引擎

统一引擎架构及演化过程

左图是搜索引擎HA3和推荐引擎BE的不同执行流程,我们将各引擎功能抽象成算子,把基础功能形成公共算子库,用户可以直接复用和根据业务需求开发,形成右图的Suez框架。

统一召回引擎的特点

1.查询流程DAG化

  • 与深度学习执行引擎统一
  • 搜索功能抽象成算子
  • 统一算子库,支持算子粒度的复用和开发

2.多种查询表达方式

  • SQL
  • TuringSDK

       等.....

可以灵活定制执行流程,加速业务迭代速度

统一召回引擎的应用实践

召回引擎面临的挑战

  既要,又要,还要

  1. 数据膨胀:文档数据,算法数据
  2. 深度学习的应用:召回,粗排,精排
  3. 稳定高效:高可用,时效性,低延迟

传统解决方案及问题

数据规模膨胀体现在数据维度越来越多。例如电商搜索领域以前只考虑商家、商品两个维度,现在还需要考虑物流、位置等维度。传统引擎处理把这些数据在离线处理join成一张大宽表推给在线做索引构建和查询服务,这会有个问题,很可能出现一个辅表数据更新导致大量的主表数据更新,从而出现写数据扩大的问题,对在线服务的时效性有很大的挑战,在一些场景上很难得到满足,尤其大促场景很难满足要求低延迟高时效的需求

传统解决方案:

  将数据按一定维度拆分通过多个引擎实例去提供服务,由业务方来将一次查询拆分成多个请求访问多个引擎,实现搜索结果。

存在的问题:

  1. 出现大量数据的序列化;
  2. 数据可能会有截断,导致效果受损;

例如外卖平台搜索,发现想搜索的店铺因为配送时间或距离原因没有match上,导致意图搜索菜单没有体现,用户体验不佳;

数据规模膨胀另一个体现是数据量变大,数据量变大导致单个搜索加载提供查询的时间变多。

传统解决方案:

   一个是将索引进行扩裂,可能带来请求的拆分和结果的合并,随着个数越来越多,耗时越来越大,逐渐成为技术瓶颈。另一个是当搜索个数多时,整个集群的稳定性和可用性受到损害,对用户而言存在查询结果不稳定情况。

统一召回引擎解决方案

  1. 引擎支持多张表
  • 通过一个引擎里面在线同时加载多张表,每张表的索引构建、更新、切换、加载都是独立的;
  • 查询时通过在线多表join方式,可以在一次查询时拿到全局的信息,包括店铺信息,商品信息都能得到充分运用,匹配最符合用户需求的召回结果;
  1. 采用SQL表达查询流程
  • 开发者使用简单
  • 复用SQL生态基础功能

3.并行查询,降低延迟的利器

   把索引数据按一定维度切分,在处理用户的查询请求时可以根据不同的切分并行的查询,从而降低整个查询的延迟,也避免了通过扩裂的方式带来的问题。

4.向量召回,深度学习在召回阶段应用

在信息丰富的今天,我们的查询引擎光靠文本查询很难满足业务的需求

  • 采用达摩院自研的向量检索内核-Proxima,具有超大规模数据向量索引的构建,提供高性能的在线向量检索能力;
  • 在原来文本召回基础上,增加向量召回,可以实现对文档召回率和准确率的兼顾,同时可以在每一路排序里面进行较好的灵活配置,取得好的搜索效果

统一召回引擎在推荐场景的应用

打造个性化推荐效果的召回引擎

统一召回引擎的云上实践

阿里云开放搜索

   开放搜索(OpenSearch)是基于阿里巴巴自主研发的大规模分布式搜索引擎搭建的一站式智能搜索业务开发平台,通过内置各行业的查询语义理解、机器学习排序算法等能力,提供充分开放的引擎能力,助力开发者快速搭建更高性能、更高搜索基线效果的智能搜索服务。

开放搜索在电商行业应用

  • 电商行业搜索产品化落地,用户无需各方向技术探索,只需按模板接入即可拥有更优搜索服务;
  • 内置更高质量算法模型,免去大量的数据标注与模型训练工作,直接内置淘系搜索算法能力;
  • 支持个性化搜索与服务能力,通过引擎侧的多路召回能力,实现搜索结果、下拉提示、底纹词等重要服务;
  • 支持用户自行训练的NLP模型导入开放搜索,灵活满足业务开发者需求;
  • 阿里巴巴自研引擎系统,处理海量数据、高并发、海量用户请求,性能优于开源方案;
  • 根据电商行变化,不断迭代更新原有能力,提供更高时效性的服务保障;

开放搜索在教育搜题场景应用

  • 支持文本索引、图片向量索引、公式索引多路召回结果,降低文本搜题、拍照搜题场景的无结果;
  • 教育查询分析全套能力,解决准确率较低问题,可定制排序脚本,深度优化召回结果排序效果;
  • 用户灵活配置的向量+文本召回,快速提升搜索系统效果;
  • 排序插件开发-Cava语言 ,更强的定制能力,更易于维护,轻松实现业务排序需求;
  • 按量付费,即时生效,保障高峰期搜索稳定同时,不需要提前购买大量资源,无成本负担;
  • 支持千亿体量数据搜索的毫秒级响应,实时数据更新秒级可见;



如果您对搜索与推荐相关技术感兴趣,欢迎加入钉钉群内交流

image.png

目录
相关文章
|
17天前
招募!阿里云x魔搭社区发起Create@AI创客松邀你探索下一代多维智能体应用
招募!阿里云x魔搭社区发起Create@AI创客松邀你探索下一代多维智能体应用
282 0
|
1月前
|
SQL 分布式计算 关系型数据库
阿里云E-MapReduce Trino专属集群外连引擎及权限控制踩坑实践
本文以云厂商售后技术支持的角度,从客户的需求出发,对于阿里云EMR-Trino集群的选型,外连多引擎的场景、Ldap以及Kerberos鉴权等问题进行了简要的实践和记录,模拟客户已有的业务场景,满足客户需求的同时对过程中的问题点进行解决、记录和分析,包括但不限于Mysql、ODPS、Hive connector的配置,Hive、Delta及Hudi等不同表格式读取的兼容,aws s3、阿里云 oss协议访问异常的解决等。
|
27天前
|
SQL 存储 API
阿里云实时计算Flink的产品化思考与实践【下】
本文整理自阿里云高级产品专家黄鹏程和阿里云技术专家陈婧敏在 FFA 2023 平台建设专场中的分享。
110689 82
阿里云实时计算Flink的产品化思考与实践【下】
|
6天前
|
存储 机器学习/深度学习 网络协议
阿里云企业级ARM计算规格族特点、适用场景及收费标准与活动价格参考
阿里云企业级ARM计算规格族是阿里云继X86计算、异构计算、弹性裸金屈服务器、超级计算集群之后推出的全新架构云服务器,ARM计算规格族有通用型实例规格族g8y、计算型实例规格族c8y、通用型实例规格族g6r等。下面是阿里云企业级ARM计算规格族特点、适用场景及最新收费标准和活动价格参考。
阿里云企业级ARM计算规格族特点、适用场景及收费标准与活动价格参考
|
8天前
|
人工智能 Serverless 数据处理
利用阿里云函数计算实现 Serverless 架构的应用
阿里云函数计算是事件驱动的Serverless服务,免服务器管理,自动扩展资源。它降低了基础设施成本,提高了开发效率,支持Web应用、数据处理、AI和定时任务等多种场景。通过实例展示了如何用Python实现图片压缩应用,通过OSS触发函数自动执行。阿里云函数计算在云计算时代助力企业实现快速迭代和高效运营。
45 0
|
13天前
|
云安全 数据采集 安全
阿里云安全产品,Web应用防火墙与云防火墙产品各自作用简介
阿里云提供两种关键安全产品:Web应用防火墙和云防火墙。Web应用防火墙专注网站安全,防护Web攻击、CC攻击和Bot防御,具备流量管理、大数据防御能力和简易部署。云防火墙是SaaS化的网络边界防护,管理南北向和东西向流量,提供访问控制、入侵防御和流量可视化。两者结合可实现全面的网络和应用安全。
阿里云安全产品,Web应用防火墙与云防火墙产品各自作用简介
|
15天前
|
存储 人工智能 搜索推荐
阿里云佘俊泉:边缘云场景的探索与机遇
2024全球分布式云大会·北京站,阿里云演讲《创新涌现,边缘云场景的探索与机遇》
40 8
阿里云佘俊泉:边缘云场景的探索与机遇
|
23天前
|
消息中间件 Kubernetes Kafka
Terraform阿里云创建资源1分钟创建集群一键发布应用Terraform 创建 Kubernetes 集群
Terraform阿里云创建资源1分钟创建集群一键发布应用Terraform 创建 Kubernetes 集群
16 0
|
1月前
|
存储 SQL 数据管理
阿里云数据库 SelectDB 内核 Apache Doris 如何基于自增列满足高效字典编码等典型场景需求|Deep Dive 系列
自增列的实现,使得 Apache Doris 可以在处理大规模时展示出更高的稳定性和可靠性。通过自增列,用户能够高效进行字典编码,显著提升了字符串精确去重以及查询的性能。使用自增列作为主键来存储明细数据,可以完美的解决明细数据更新的问题。同时,基于自增列,用户可以实现高效的分页机制,轻松应对深分页场景,有效过滤掉大量非必需数据,从而减轻数据库的负载压力,为用户带来了更加流畅和高效的数据处理体验。
|
1月前
|
弹性计算 网络协议 关系型数据库
网络技术基础阿里云实验——企业级云上网络构建实践
实验地址:<https://developer.aliyun.com/adc/scenario/65e54c7876324bbe9e1fb18665719179> 本文档指导在阿里云上构建跨地域的网络环境,涉及杭州和北京两个地域。任务包括创建VPC、交换机、ECS实例,配置VPC对等连接,以及设置安全组和网络ACL规则以实现特定服务间的互访。例如,允许北京的研发服务器ECS-DEV访问杭州的文件服务器ECS-FS的SSH服务,ECS-FS访问ECS-WEB01的SSH服务,ECS-WEB01访问ECS-DB01的MySQL服务,并确保ECS-WEB03对外提供HTTP服务。