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

简介:淘宝每次的搜索行为在后端都会有大量的数据计算和处理才会召回符合用户需求的搜索结果,当面对的业务愈来愈多如何在工程体系上不断演化知足不一样业务的需求?特邀阿里巴巴技术专家介绍统一召回引擎,带你了解如何应对~

特邀嘉宾:算法

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

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

AI Online Serving工程体系

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

image

统一召回引擎

统一引擎架构及演化过程

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

image

统一召回引擎的特色

1.查询流程DAG化框架

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

2.多种查询表达方式机器学习

  • SQL
  • TuringSDK

等.....分布式

能够灵活定制执行流程,加速业务迭代速度高并发

统一召回引擎的应用实践

召回引擎面临的挑战

既要,又要,还要性能

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

传统解决方案及问题

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

传统解决方案:

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

存在的问题:

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

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

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

传统解决方案:

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

image

统一召回引擎解决方案

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

image

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

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

image

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

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

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

image

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

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

image

统一召回引擎的云上实践

image

阿里云开放搜索

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

开放搜索在电商行业应用

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

image

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

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

image

本文内容由阿里云实名注册用户自发贡献,版权归原做者全部,阿里云开发者社区不拥有其著做权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。若是您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将马上删除涉嫌侵权内容。