推荐请求处理方法、装置、计算机设备、存储介质与流程

文档序号:31707911发布日期:2022-10-01 12:45阅读:54来源:国知局
推荐请求处理方法、装置、计算机设备、存储介质与流程

1.本技术涉及信息技术领域,特别是涉及一种推荐请求处理方法、装置、计算机设备、存储介质和计算机程序产品。


背景技术:

2.随着信息技术的发展,用户逐渐从信息匮乏时代走向了信息过载时代,使得很多信息从未得到用户的关注,便消失在信息的海洋。而推荐系统的出现,使得推荐给用户的信息可以从过载的海量信息中脱颖而出,得到用户的关注。
3.现有的推荐系统的开发项目,面对不同的推荐业务场景,需要重复编写大量相似代码以实现不同的推荐需求,使得推荐系统的开发项目的开发效率低。


技术实现要素:

4.基于此,有必要针对上述技术问题,提供一种能够提高推荐服务的开发效率的推荐请求处理方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
5.第一方面,本技术提供了一种推荐请求处理方法,所述方法包括:接收推荐请求,所述推荐请求携带有场景标识;获取与所述场景标识对应的配置信息;根据所述配置信息生成对应的推荐服务;根据所述推荐服务得到推荐结果。
6.在其中一个实施例中,所述获取与所述场景标识对应的配置信息,包括:调用配置查询服务,从数据库中获取与所述场景标识对应的推荐环节;从所述数据库中确定各所述推荐环节对应的配置插件;从所述数据库中确定各所述配置插件对应的配置参数;将所述推荐环节、所述配置插件和所述配置参数作为配置信息输出。
7.在其中一个实施例中,所述调用配置查询服务,包括:调用所述配置查询服务,从缓存中获取与所述场景标识对应的推荐环节;若所述缓存中包括与所述场景标识对应的所述推荐环节,则从所述缓存中确定各所述推荐环节对应的配置插件;从所述缓存中确定各所述配置插件对应的配置参数;若所述缓存中不包括与所述场景标识对应的所述推荐环节,则从所述数据库中获取与所述场景标识对应的推荐环节;从所述数据库中确定各所述推荐环节对应的配置插件;从所述数据库中确定各所述配置插件对应的配置参数。
8.在其中一个实施例中,所述推荐请求携带有用户标识;所述获取与所述场景标识对应的配置信息,包括:从所述推荐环节的至少两组配置条件中,确定所述用户标识对应的配置条件;根据所述配置条件确定所述推荐环节对应的配置插件。
9.在其中一个实施例中,所述根据所述推荐服务得到推荐结果之后,还包括:获取推荐服务的日志,所述日志包括根据所述推荐服务返回所述推荐结果;对各所述日志中的推荐结果进行分析得到日志分析结果,并根据所述日志分析结果对所述配置信息进行调整;基于调整后的配置信息进行推荐服务调试。
10.在其中一个实施例中,所述根据所述推荐服务得到推荐结果,包括:获取当前推荐环节中的当前插件;执行所述当前插件得到当前中间处理结果;获取下一推荐环节中的下
一插件,将所述下一插件作为当前插件,并基于所述当前中间处理结果以及所述当前插件得到下一中间处理结果,将所述下一中间处理结果作为当前中间处理结果,并继续执行获取下一推荐环节中的下一插件的步骤,直至所有的推荐环节执行完成,得到推荐结果。
11.在其中一个实施例中,所述执行所述当前插件得到当前中间处理结果,包括:若所述当前插件的数量大于一,则根据各所述当前插件的预设标识,对各所述当前插件进行串行处理或并行处理,得到所述当前中间处理结果。
12.第二方面,本技术还提供了一种推荐服务配置方法,所述推荐服务配置方法包括:接收配置的场景标识;接收针对所述场景标识的配置信息;将所述场景标识和所述配置信息关联存储;所述配置信息包括推荐环节、各所述推荐环节的插件和所述插件对应的参数。
13.在其中一个实施例中,所述接收针对所述场景标识的配置信息包括:接收至少一个所述推荐环节的至少两组配置条件;将至少两组配置条件与所述推荐环节关联存储。
14.第三方面,本技术还提供了一种推荐请求处理装置,所述推荐请求处理装置包括:接收模块,用于接收推荐请求,所述推荐请求携带有场景标识;获取模块,用于获取与所述场景标识对应的配置信息;生成模块,用于根据所述配置信息生成对应的推荐服务;推荐结果获得模块,用于根据所述推荐服务得到推荐结果。
15.第四方面,本技术还提供了一种推荐服务配置装置,所述推荐服务配置装置包括:标识接收模块,用于接收配置的场景标识;配置接收模块,用于接收针对所述场景标识的配置信息;存储模块,用于将所述场景标识和所述配置信息关联存储;所述配置信息包括推荐环节、各所述推荐环节的插件和所述插件对应的参数。
16.第五方面,本技术还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现所述的方法的步骤。
17.第六方面,本技术还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述的方法的步骤。
18.第七方面,本技术还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现所述的方法的步骤。
19.上述信息推荐配置方法、装置、计算机设备、存储介质和计算机程序产品,通过推荐请求携带的场景标识,获取场景标识对应的配置信息,根据上述配置信息生成对应的推荐服务,根据推荐服务得到针对推荐请求的推荐结果。由于不同的场景标识对应不同的配置信息,因此,可以根据不同的配置信息生成不同的推荐服务。通过不同的配置信息即可生成不同的推荐服务,不用重复编写各配置信息对应的通用代码,提高了推荐服务的开发效率。通过配置信息生成的不同推荐服务,不仅可以增加推荐服务的白盒化,还便于开发人员对推荐服务的实现和维护。
附图说明
20.图1为一个实施例中推荐请求处理方法的应用环境图;
21.图2为一个实施例中推荐请求处理方法的流程示意图;
22.图3为一个实施例中推荐服务配置方法的流程示意图;
23.图4为一个实施例中推荐请求处理方法的架构示意图;
24.图5为一个实施例中推荐服务配置方法的前端示意图;
25.图6为一个实施例中推荐服务配置方法的前端示意图;
26.图7为一个实施例中推荐服务配置方法的前端示意图;
27.图8为一个实施例中推荐服务配置方法的前端示意图;
28.图9为一个实施例中推荐服务配置方法的前端示意图;
29.图10为一个实施例中推荐服务配置方法的前端示意图;
30.图11为一个实施例中步骤208的流程示意图;
31.图12为一个实施例中推荐请求处理装置的结构框图;
32.图13为一个实施例中推荐服务配置装置的结构框图;
33.图14为一个实施例中计算机设备的内部结构图。
具体实施方式
34.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
35.本技术实施例提供的推荐请求处理方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。终端102向服务器104发送推荐请求。服务器104用于接收推荐请求,推荐请求携带有场景标识;获取与场景标识对应的配置信息;根据配置信息生成对应的推荐服务;根据推荐服务得到推荐结果。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
36.在一个实施例中,如图2所示,提供了一种推荐请求处理方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
37.步骤202,接收推荐请求,推荐请求携带有场景标识。
38.其中,推荐请求为根据用户的行为动作触发的获取推荐信息的请求,服务器通过推荐请求为用户提供对应的推荐信息。需要说明的是,本技术并不对用户触发推荐请求的行为动作做限定,可以触发推荐请求并将上述推荐请求发送至服务器即可,包括但不限定于接收鼠标点击预设埋点触发推荐请求、接收搜索按钮控件触发推荐请求。场景标识为表示用户端触发推荐请求所处的场景,可以理解的是,不同的场景所对应的场景标识不同。
39.可选地,当用户对界面进行点击触发推荐请求,界面所在的终端将上述推荐请求发送至服务器,上述推荐请求中包括触发推荐请求的场景标识。
40.服务器接收上述终端发送的携带有场景标识的推荐请求。
41.步骤204,获取与场景标识对应的配置信息。
42.其中,配置信息为包括生成推荐服务的推荐环节、各推荐环节调用的配置插件和配置插件执行时的具体配置参数。需要说明的是,不同的场景下的推荐请求,需要返回的推荐信息不同,因此,不同的场景对应的生成推荐服务的配置信息不同。需要说明的是,各场
景下的配置信息是预先设置好的,并将各场景的场景标识与对应的配置信息关联存储。
43.服务器根据推荐请求中的场景标识获取对应的配置信息,上述配置信息包括生成推荐请求对应的推荐服务的推荐环节、各推荐环节调用的配置插件和配置插件执行时的具体配置参数。
44.步骤206,根据配置信息生成对应的推荐服务。
45.其中,推荐服务为根据推荐请求获取推荐信息的服务线程。
46.服务器根据推荐请求对应的配置信息生成对应的推荐服务。
47.步骤208,根据推荐服务得到推荐结果。
48.服务器根据推荐服务获取推荐请求对应的推荐信息即推荐结果,并将推荐结果发送至终端。
49.上述推荐请求处理方法中,通过推荐请求携带的场景标识,获取场景标识对应的配置信息,根据上述配置信息生成对应的推荐服务,根据推荐服务得到针对推荐请求的推荐结果。由于不同的场景标识对应不同的配置信息,因此,可以根据不同的配置信息生成不同的推荐服务。通过不同的配置信息即可生成不同的推荐服务,不用重复编写各配置信息对应的通用代码,提高了推荐服务的开发项目的开发效率。通过配置信息生成的不同推荐服务,不仅可以增加推荐服务的白盒化,还便于开发人员对推荐服务的实现和维护。
50.在一个实施例中,获取与场景标识对应的配置信息,包括:调用配置查询服务,从数据库中获取与场景标识对应的推荐环节;从数据库中确定各推荐环节对应的配置插件;从数据库中确定各配置插件对应的配置参数;将推荐环节、配置插件和配置参数作为配置信息输出。
51.其中,配置查询服务用于查找与场景标识对应的配置信息,上述配置信息包括具体地推荐环节、上述推荐环节调用的配置插件、以及各配置插件执行的配置参数。推荐环节为执行推荐服务得到推荐结果的一个中间环节,推荐环节包括但不限于预处理、召回、填充、过滤、合并、排序、重排序、缓存、规则处理、返回值处理环节。需要说明的是,不同的场景标识对应的配置信息中的推荐环节和顺序可能不同。各推荐环节可调用的配置插件的种类有多个。若一个配置环节调用多个配置插件,所调用的多个配置插件的种类可以相同,也可以不同。配置参数为配置插件的执行参数,以召回为例,召回的配置参数包括但不限于待召回候选对象的属性、召回地址、召回数量。需要说明的是,场景标识及其对应的配置信息的关联关系为预先设置好的关联关系。可选地,上述场景标识对应的配置信息存储在数据库中。
52.具体地,服务器调用配置查询服务,从数据库中获取与场景标识对应的推荐环节;从数据库中确定各推荐环节对应的配置插件;从数据库中确定各配置插件对应的配置参数;将推荐环节、配置插件和配置参数作为配置信息输出。
53.上述推荐请求处理方法中,通过配置查询服务可以快速的获取场景标识对应的配置信息。
54.在一个实施例中,调用配置查询服务,包括:调用配置查询服务,从缓存中获取与场景标识对应的推荐环节;若缓存中包括与场景标识对应的推荐环节,则从缓存中确定各推荐环节对应的配置插件;从缓存中确定各配置插件对应的配置参数;若缓存中不包括与场景标识对应的推荐环节,则从数据库中获取与场景标识对应的推荐环节;从数据库中确
定各推荐环节对应的配置插件;从数据库中确定各配置插件对应的配置参数。
55.可选地,缓存的一端连接调用配置查询服务,缓存的另一端连接数据库。上述缓存用于存储场景标识对应的配置参数。
56.具体地,服务器调用配置查询服务,从缓存中获取与场景标识对应的推荐环节;若缓存中包括与场景标识对应的推荐环节,则从缓存中确定各推荐环节对应的配置插件;从缓存中确定各配置插件对应的配置参数;若缓存中不包括与场景标识对应的推荐环节,则从数据库中获取与场景标识对应的推荐环节;从数据库中确定各推荐环节对应的配置插件;从数据库中确定各配置插件对应的配置参数,并将上述从数据库中获取的场景标识对应的配置信息加载至缓存中。
57.上述推荐请求处理方法中,通过缓存存储最近使用的场景标识对应的配置参数据,提高获取场景标识对应的配置信息的速度。
58.在一个实施例中,推荐请求携带有用户标识;获取与场景标识对应的配置信息,包括:从推荐环节的至少两组配置条件中,确定用户标识对应的配置条件;根据配置条件确定推荐环节对应的配置插件。
59.其中,用户标识用于表示触发推荐请求的用户,不同的用户对应的用户标识不同。需要说明的是场景标识对应的配置信息中的推荐环节可能包括两组配置条件,可选地,一组配置条件为实验组配置条件,一组配置条件为对照组配置条件。其中,若推荐环节的配置条件的组数大于2,对照组配置条件可以有多个,且实验组配置条件也可以有多个。其中,推荐环节对应的配置插件和配置插件对应的配置参数被统称为一个推荐环节的一组配置条件。当需要进行对照实验时,可能会对一个推荐环节配置至少两组配置条件,但推荐服务的生成仅需要一个推荐环节的一组配置条件,因此,服务器根据用户标识从推荐环节的至少两组推荐条件中确定其中的一组推荐条件为推荐环节的配置条件。
60.服务器接收的推荐请求包括用户标识。服务器获取与场景标识对应的推荐环节的至少两组配置条件,服务器根据用户标识从推荐环节的至少两组推荐条件中确定其中的一组推荐条件为推荐环节的配置条件。服务器根据确定的配置条件确定推荐环节对应的配置插件及上述配置插件对应的配置参数。可选地,服务器通过测试服务实现,根据用户标识从推荐环节的至少两组推荐条件中确定其中的一组推荐条件为推荐环节的配置条件的确定算法。
61.上述推荐请求处理方法中,服务器从各推荐环节的至少两组配置条件中,确定用户标识对应的配置条件,生成对应的推荐服务。通过服务器侧对实验组和对照组的推荐服务的使用用户进行分流,无需开发人员在推荐服务的代码测生成多个推荐服务。
62.在一个实施例中,根据推荐服务得到推荐结果之后,还包括:获取推荐服务的日志,日志包括根据推荐服务返回推荐结果;对各日志中的推荐结果进行分析得到日志分析结果,并根据日志分析结果对配置信息进行调整;基于调整后的配置信息进行推荐服务调试。
63.在一个实施例中,根据推荐服务得到推荐结果,包括:获取当前推荐环节中的当前插件;执行当前插件得到当前中间处理结果;获取下一推荐环节中的下一插件,将下一插件作为当前插件,并基于当前中间处理结果以及当前插件得到下一中间处理结果,将下一中间处理结果作为当前中间处理结果,并继续执行获取下一推荐环节中的下一插件的步骤,
直至所有的推荐环节执行完成,得到推荐结果。
64.其中,推荐服务包括至少一个推荐环节,上述推荐环节包括但不限于预处理、召回、填充、过滤、合并、排序、重排序、缓存、规则处理、返回值处理环节。以推荐服务的推荐环节包括预处理、召回、填充、过滤、合并、排序、重排序、缓存、规则处理、返回值处理环节为例进行说明。
65.服务器将预处理设置为当前推荐环节,获取预处理对应的第一插件;执行第一插件得到第一候选对象,将第一候选对象作为当前中间处理结果。其中,第一插件用于从不同维度加载需要过滤的第一候选对象,上述第一候选对象包括但不限于在预设时间范围内已对当前用户(即触发推荐请求的用户)推荐过的物品、在预设时间范围内曝光和/或点击次数大于预设值的物品。服务器获取下一推荐环节中的下一插件即第二插件,将第二插件作为当前插件,并基于当前中间处理结果(第一候选对象)以及当前插件(第二插件)得到下一中间处理结果即第二候选对象,将第二候选对象作为当前中间处理结果,并继续执行获取下一推荐环节中的下一插件即第三插件的步骤,直至所有的推荐环节执行完成,得到推荐结果。需要说明的是,第二插件用于召回初始候选对象,上述基于第一候选对象以及第二插件得到第二候选对象的过程包括,将初始候选对象中与第一候选对象重合的部分进行过滤,得到第二候选对象。
66.在一个实施例中,执行当前插件得到当前中间处理结果,包括:若当前插件的数量大于一,则根据各当前插件的预设标识,对各当前插件进行串行处理或并行处理,得到当前中间处理结果。
67.其中,预设标识用于指示当前插件的处理方式为串行或并行,若当前插件的处理方式为串行,预设标识还用于指示当前插件的处理顺序。
68.在一个实施例中,如图3所示,提供了一种推荐服务配置方法,包括:
69.步骤302,接收配置的场景标识。
70.服务器接收用户配置的场景标识。
71.步骤304,接收针对场景标识的配置信息。
72.需要说明的是,不同的场景标识对应不同的推荐服务,每个推荐服务的配置信息不同。
73.服务器接收针对场景标识的配置信息,上述配置信息包括但不限于推荐环节、各推荐环节调用的配置插件和配置插件执行时的具体配置参数。
74.步骤306,将场景标识和配置信息关联存储;配置信息包括推荐环节、各推荐环节的插件和插件对应的参数。
75.服务器将场景标识和对应的配置信息关联存储;配置信息包括推荐环节、各推荐环节的插件和插件对应的参数。可选地,将与场景标识对应的配置信息存储在数据库中。
76.上述推荐服务配置方法中,服务器通过接收针不同场景标识对应的不同配置信息,实现针对不同的场景标识生成不同的推荐服务,通过不同的配置信息即可生成不同的推荐服务,不用根据不同的推荐服务重复编写复杂代码,且配置信息的白盒化,使得开发流程透明,易于维护。
77.在一个实施例中,接收针对场景标识的配置信息包括:接收至少一个推荐环节的至少两组配置条件;将至少两组配置条件与推荐环节关联存储。
78.需要说明的是,服务器根据场景标识对应的推荐环节的一组推荐条件生成对应的推荐服务。
79.上述推荐服务配置方法中,服务器通过对推荐环节设置多组配置条件实现各推荐环节的实验组和对照组的配置条件的配置,仅需考虑各推荐环节的实验组和对照组的配置条件的设置,不用考虑如何将各推荐环节的实验组与对照组对应的用户进行匹配,且可以对各推荐环节进行实验组和对照组的配置条件进行添加,比较灵活。
80.在一个具体地实施例中,如图4所示,服务器通过manage-service(管理服务)接收场景标识以及针对场景标识对应的配置信息,并将场景标识对应的配置信息存储至数据库(mysql)。用户user触发推荐请求,并将推荐请求发送至服务器。服务器如连接线1所示,接收用户发送的携带有场景标识和用户标识的推荐请求,并将该推荐请求发送至backend-service(后端服务),后端服务将该推荐请求如连接线2所示,发送recengine(推荐引擎sdk),并通过recengine将上述场景标识和用户标识封装在上下文对象中,将上下文对象发送至config-service(推荐配置解析服务)即调用配置查询服务。config-service对上述上下文对象中的场景标识进行解析后,如连接线4所示,config-service通过连接线4从redis缓存中获取场景标识对应的配置信息。若缓存中无场景标识对应的配置信息,config-service从mysql(数据库)中获取场景标识对应的配置信息,并将从数据库中获取到的场景标识对应的配置信息存储至缓存。config-service对场景标识对应的配置信息进行判断,若配置信息中的任一推荐环节对应的配置条件大于1即推荐环节包括至少两组配置条件,则将推荐环节对应的多个配置条件以及上下文对象中的用户标识通过连接线6所示,发送至ab-test-service(ab实验平台)。上述ab-test-service根据内置算法与用户标识从推荐环节的至少两组配置条件中确定一组配置条件为上述推荐环节的最终配置条件,并将最终配置条件与用户标识的关联关系进行存储,将用户标识即对应的最终配置条件如连接线7所示返回config-service。config-service将场景标识对应的最终配置信息返回recengine。recengine根据最终配置信息生成对应的推荐服务;并根据推荐服务得到推荐结果,将上述推荐结果返回至用户。
81.可选地,log-collect-client(日志收集端)获取推荐服务的日志,所述日志包括根据所述推荐服务返回所述推荐结果,将推荐服务的日志发送至es(数据库)。manage-service从es中获取推荐服务的日志,对各所述日志中的推荐结果进行分析得到日志分析结果,并根据所述日志分析结果对所述配置信息进行调整;基于调整后的配置信息进行推荐服务调试。
82.可选地,manage-service可以模拟用户触发的推荐请求,将模拟推荐请求直接发送至recengine,进入recengine将模拟请求中的场景标识和用户标识封装在上下文对象中的步骤,实现对推荐服务的测试。
83.可选地,服务器通过manage-service(管理服务)接收场景标识以及针对场景标识对应的配置信息的实现,通过如图5所示的前端页面实现。图5中的scene(场景名称)即为场景标识,图5中的prefiller(预处理环节)、loader(召回)、filler(填充)、filter(过滤)、merger(合并)、ranker(排序)、reranker(重排序)、cache(缓存)、resultselector(规则处理)、responsefiller(返回值处理)、extparameter(定时器)为接收各推荐环节的配置插件和各配置插件对应的配置参数的选项。需要说明的是,场景标识对应的推荐环节可以包括
但不限于上述图5中的推荐环节,还可以自定义其他推荐环节,另外,对场景标识对应的推荐环节进行配置的过程中,可以仅使用上述图5中的推荐环节的一部分,且可以对上述图5中的推荐环节的顺序进行适应性改变。
84.可选地,用户可以对一个推荐环节配置多个配置插件,如图6所示,对召回配置两个插件为例。在loader配置界面,分别配置两个召回插件的名称,其中第一个召回插件的名称为redisloader,第二个召回插件的名称为esloader。对第一个召回插件的配置参数的配置如图7所示,存储结构(redisdatatype)为zset结构,value为candidate的主键id,score为对应candidate的得分。开发人员在使用redisloader插件时只需要配置redis的key即可获取召回的结果(对于redis的实例名称(图6中dbnamespace)在sdk中可提供默认配置,同时也支持页面上根据传入的配置解析获取对应实例)。对第二个召回插件的配置参数的配置如图8所示,开发人员只需要配置简单的查询语句、es的索引名、索引类型、es中candidate的主键字段名,就可以获取召回结果。recengine通过推荐服务得到推荐结果的过程中,在es召回插件(第二个召回插件)封装对es查询语句的解析,并实现将查询结果映射为candidate类,将查询结果中的_source内容自动填充到candidate的dynamicproperty集合中,将es的_score填充到candidate的score中以及完成对各种异常的处理。
85.可选地,如图9所示,对排序阶段进行配置,对排序阶段配置的配置插件为rank-service(一个在线排序服务,实现模型排序的功能),rank-service提供dubbo接口,配置插件对应的配置参数包括:模型名、模型类型、模型接口名,配置插件在配置配置参数后即可实现对候选集列表的个性化排序。recengine通过推荐服务得到推荐结果的过程中,排序阶段以基于dubbo泛化调用的形式来完成对rank-service的请求,获取各candidate候选对象对当前请求用户的实时模型得分,并完成基于分数的排序。
86.可选地,如图10所示,对重排序阶段进行配置,接收开发人员输入的配置条件及返回的分数。recengine通过推荐服务得到推荐结果的过程中,重排序阶段对配置条件进行解析,获取score分数,并完成根据candidate最终分数的排序。
87.服务器根据推荐服务得到推荐结果的流程如图11所示。
88.需要说明的是,各推荐环节可配置的配置插件为预先根据各技术栈抽象出通用的插件。
89.可选地,将候选集对象属性、请求上下文对象属性均定义为currenthashmap类,以支持动态参数传递。其中,上下文对象用于存储推荐请求的场景标识和用户标识。候选集对象属性用于存储候选对象的属性,候选对象为推荐结果的中间结果。
90.应该理解的是,虽然如上所述的各实施例所涉及的服务图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的服务图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
91.基于同样的发明构思,本技术实施例还提供了一种用于实现上述所涉及的推荐请求处理方法的推荐请求处理装置。该装置所提供的解决问题的实现方案与上述方法中所记
载的实现方案相似,故下面所提供的一个或多个推荐请求处理装置实施例中的具体限定可以参见上文中对于推荐请求处理方法的限定,在此不再赘述。
92.在一个实施例中,如图12所示,提供了一种推荐请求处理装置,包括:接收模块100、获取模块200、生成模块300和推荐结果获得模块400,其中:接收模块100,用于接收推荐请求,推荐请求携带有场景标识。获取模块200,用于获取与场景标识对应的配置信息。生成模块300,用于根据配置信息生成对应的推荐服务。推荐结果获得模块400,用于根据推荐服务得到推荐结果。
93.在一个实施例中,获取模块,包括:第一调用模块,用于调用配置查询服务,从数据库中获取与场景标识对应的推荐环节;第一确定模块,用于从数据库中确定各推荐环节对应的配置插件;第二确定模块,用于从数据库中确定各配置插件对应的配置参数;输出模块,用于将推荐环节、配置插件和配置参数作为配置信息输出。
94.在一个实施例中,第一调用模块,包括:第二调用模块,用于调用配置查询服务,从缓存中获取与场景标识对应的推荐环节;第三确定模块,用于若缓存中包括与场景标识对应的推荐环节,则从缓存中确定各推荐环节对应的配置插件;从缓存中确定各配置插件对应的配置参数;第四确定模块,用于若缓存中不包括与场景标识对应的推荐环节,则从数据库中获取与场景标识对应的推荐环节;从数据库中确定各推荐环节对应的配置插件;从数据库中确定各配置插件对应的配置参数。
95.在一个实施例中,获取模块,包括:第五确定模块,用于从推荐环节的至少两组配置条件中,确定用户标识对应的配置条件;第六确定模块,用于根据配置条件确定推荐环节对应的配置插件。
96.在一个实施例中,还包括:日志获取模块,用于获取推荐服务的日志,日志包括根据推荐服务返回推荐结果;日志分析模块,用于对各日志中的推荐结果进行分析得到日志分析结果,并根据日志分析结果对配置信息进行调整;调试模块,用于基于调整后的配置信息进行推荐服务调试。
97.在一个实施例中,推荐结果获得模块,包括:插件获取模块,用于获取当前推荐环节中的当前插件;执行模块,用于执行当前插件得到当前中间处理结果;循环模块,用于获取下一推荐环节中的下一插件,将下一插件作为当前插件,并基于当前中间处理结果以及当前插件得到下一中间处理结果,将下一中间处理结果作为当前中间处理结果,并继续执行获取下一推荐环节中的下一插件的步骤,直至所有的推荐环节执行完成,得到推荐结果。
98.在一个实施例中,执行模块,包括:处理模块,用于若当前插件的数量大于一,则根据各当前插件的预设标识,对各当前插件进行串行处理或并行处理,得到当前中间处理结果。
99.基于同样的发明构思,本技术实施例还提供了一种用于实现上述所涉及的推荐服务配置方法的推荐服务配置装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个推荐服务配置装置实施例中的具体限定可以参见上文中对于推荐服务配置方法的限定,在此不再赘述。
100.在一个实施例中,如图13所示,提供了一种推荐服务配置装置,包括:标识接收模块500、配置接收模块600和存储模块700,其中:标识接收模块,用于接收配置的场景标识;配置接收模块,用于接收针对场景标识的配置信息;存储模块,用于将场景标识和配置信息
关联存储;配置信息包括推荐环节、各推荐环节的插件和插件对应的参数。
101.在一个实施例中,标识接收模块包括:第一接收模块,用于接收至少一个推荐环节的至少两组配置条件;关联存储模块,用于将至少两组配置条件与推荐环节关联存储。
102.上述推荐请求处理装置和推荐服务配置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
103.在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图14所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过wifi、移动蜂窝网络、nfc(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种推荐请求处理方法和推荐服务配置方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
104.本领域技术人员可以理解,图14中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
105.在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:接收推荐请求,推荐请求携带有场景标识;获取与场景标识对应的配置信息;根据配置信息生成对应的推荐服务;根据推荐服务得到推荐结果。
106.在一个实施例中,处理器执行计算机程序时所实现的获取与场景标识对应的配置信息,包括:调用配置查询服务,从数据库中获取与场景标识对应的推荐环节;从数据库中确定各推荐环节对应的配置插件;从数据库中确定各配置插件对应的配置参数;将推荐环节、配置插件和配置参数作为配置信息输出。
107.在一个实施例中,处理器执行计算机程序时所实现的调用配置查询服务,包括:调用配置查询服务,从缓存中获取与场景标识对应的推荐环节;若缓存中包括与场景标识对应的推荐环节,则从缓存中确定各推荐环节对应的配置插件;从缓存中确定各配置插件对应的配置参数;若缓存中不包括与场景标识对应的推荐环节,则从数据库中获取与场景标识对应的推荐环节;从数据库中确定各推荐环节对应的配置插件;从数据库中确定各配置插件对应的配置参数。
108.在一个实施例中,处理器执行计算机程序时所实现的推荐请求携带有用户标识;获取与场景标识对应的配置信息,包括:从推荐环节的至少两组配置条件中,确定用户标识对应的配置条件;根据配置条件确定推荐环节对应的配置插件。
109.在一个实施例中,处理器执行计算机程序时所实现的根据推荐服务得到推荐结果之后,还包括:获取推荐服务的日志,日志包括根据推荐服务返回推荐结果;对各日志中的
推荐结果进行分析得到日志分析结果,并根据日志分析结果对配置信息进行调整;基于调整后的配置信息进行推荐服务调试。
110.在一个实施例中,处理器执行计算机程序时所实现的根据推荐服务得到推荐结果,包括:获取当前推荐环节中的当前插件;执行当前插件得到当前中间处理结果;获取下一推荐环节中的下一插件,将下一插件作为当前插件,并基于当前中间处理结果以及当前插件得到下一中间处理结果,将下一中间处理结果作为当前中间处理结果,并继续执行获取下一推荐环节中的下一插件的步骤,直至所有的推荐环节执行完成,得到推荐结果。
111.在一个实施例中,处理器执行计算机程序时所实现的执行当前插件得到当前中间处理结果,包括:若当前插件的数量大于一,则根据各当前插件的预设标识,对各当前插件进行串行处理或并行处理,得到当前中间处理结果。
112.在一个实施例中,处理器执行计算机程序时所实现的推荐服务配置方法包括:接收配置的场景标识;接收针对场景标识的配置信息;将场景标识和配置信息关联存储;配置信息包括推荐环节、各推荐环节的插件和插件对应的参数。
113.在一个实施例中,处理器执行计算机程序时所实现的接收针对场景标识的配置信息包括:接收至少一个推荐环节的至少两组配置条件;将至少两组配置条件与推荐环节关联存储。
114.在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:接收推荐请求,推荐请求携带有场景标识;获取与场景标识对应的配置信息;根据配置信息生成对应的推荐服务;根据推荐服务得到推荐结果。
115.在一个实施例中,计算机程序被处理器执行时所实现的获取与场景标识对应的配置信息,包括:调用配置查询服务,从数据库中获取与场景标识对应的推荐环节;从数据库中确定各推荐环节对应的配置插件;从数据库中确定各配置插件对应的配置参数;将推荐环节、配置插件和配置参数作为配置信息输出。
116.在一个实施例中,计算机程序被处理器执行时所实现的调用配置查询服务,包括:调用配置查询服务,从缓存中获取与场景标识对应的推荐环节;若缓存中包括与场景标识对应的推荐环节,则从缓存中确定各推荐环节对应的配置插件;从缓存中确定各配置插件对应的配置参数;若缓存中不包括与场景标识对应的推荐环节,则从数据库中获取与场景标识对应的推荐环节;从数据库中确定各推荐环节对应的配置插件;从数据库中确定各配置插件对应的配置参数。
117.在一个实施例中,计算机程序被处理器执行时所实现的推荐请求携带有用户标识;获取与场景标识对应的配置信息,包括:从推荐环节的至少两组配置条件中,确定用户标识对应的配置条件;根据配置条件确定推荐环节对应的配置插件。
118.在一个实施例中,计算机程序被处理器执行时所实现的根据推荐服务得到推荐结果之后,还包括:获取推荐服务的日志,日志包括根据推荐服务返回推荐结果;对各日志中的推荐结果进行分析得到日志分析结果,并根据日志分析结果对配置信息进行调整;基于调整后的配置信息进行推荐服务调试。
119.在一个实施例中,计算机程序被处理器执行时所实现的根据推荐服务得到推荐结果,包括:获取当前推荐环节中的当前插件;执行当前插件得到当前中间处理结果;获取下一推荐环节中的下一插件,将下一插件作为当前插件,并基于当前中间处理结果以及当前
插件得到下一中间处理结果,将下一中间处理结果作为当前中间处理结果,并继续执行获取下一推荐环节中的下一插件的步骤,直至所有的推荐环节执行完成,得到推荐结果。
120.在一个实施例中,计算机程序被处理器执行时所实现的执行当前插件得到当前中间处理结果,包括:若当前插件的数量大于一,则根据各当前插件的预设标识,对各当前插件进行串行处理或并行处理,得到当前中间处理结果。
121.在一个实施例中,计算机程序被处理器执行时所实现的推荐服务配置方法包括:接收配置的场景标识;接收针对场景标识的配置信息;将场景标识和配置信息关联存储;配置信息包括推荐环节、各推荐环节的插件和插件对应的参数。
122.在一个实施例中,计算机程序被处理器执行时所实现的接收针对场景标识的配置信息包括:接收至少一个推荐环节的至少两组配置条件;将至少两组配置条件与推荐环节关联存储。
123.在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:接收推荐请求,推荐请求携带有场景标识;获取与场景标识对应的配置信息;根据配置信息生成对应的推荐服务;根据推荐服务得到推荐结果。
124.在一个实施例中,计算机程序被处理器执行时所实现的获取与场景标识对应的配置信息,包括:调用配置查询服务,从数据库中获取与场景标识对应的推荐环节;从数据库中确定各推荐环节对应的配置插件;从数据库中确定各配置插件对应的配置参数;将推荐环节、配置插件和配置参数作为配置信息输出。
125.在一个实施例中,计算机程序被处理器执行时所实现的调用配置查询服务,包括:调用配置查询服务,从缓存中获取与场景标识对应的推荐环节;若缓存中包括与场景标识对应的推荐环节,则从缓存中确定各推荐环节对应的配置插件;从缓存中确定各配置插件对应的配置参数;若缓存中不包括与场景标识对应的推荐环节,则从数据库中获取与场景标识对应的推荐环节;从数据库中确定各推荐环节对应的配置插件;从数据库中确定各配置插件对应的配置参数。
126.在一个实施例中,计算机程序被处理器执行时所实现的推荐请求携带有用户标识;获取与场景标识对应的配置信息,包括:从推荐环节的至少两组配置条件中,确定用户标识对应的配置条件;根据配置条件确定推荐环节对应的配置插件。
127.在一个实施例中,计算机程序被处理器执行时所实现的根据推荐服务得到推荐结果之后,还包括:获取推荐服务的日志,日志包括根据推荐服务返回推荐结果;对各日志中的推荐结果进行分析得到日志分析结果,并根据日志分析结果对配置信息进行调整;基于调整后的配置信息进行推荐服务调试。
128.在一个实施例中,计算机程序被处理器执行时所实现的根据推荐服务得到推荐结果,包括:获取当前推荐环节中的当前插件;执行当前插件得到当前中间处理结果;获取下一推荐环节中的下一插件,将下一插件作为当前插件,并基于当前中间处理结果以及当前插件得到下一中间处理结果,将下一中间处理结果作为当前中间处理结果,并继续执行获取下一推荐环节中的下一插件的步骤,直至所有的推荐环节执行完成,得到推荐结果。
129.在一个实施例中,计算机程序被处理器执行时所实现的执行当前插件得到当前中间处理结果,包括:若当前插件的数量大于一,则根据各当前插件的预设标识,对各当前插件进行串行处理或并行处理,得到当前中间处理结果。
130.在一个实施例中,计算机程序被处理器执行时所实现的推荐服务配置方法包括:接收配置的场景标识;接收针对场景标识的配置信息;将场景标识和配置信息关联存储;配置信息包括推荐环节、各推荐环节的插件和插件对应的参数。
131.在一个实施例中,计算机程序被处理器执行时所实现的接收针对场景标识的配置信息包括:接收至少一个推荐环节的至少两组配置条件;将至少两组配置条件与推荐环节关联存储。
132.需要说明的是,本技术所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
133.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-only memory,rom)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(reram)、磁变存储器(magnetoresistive random access memory,mram)、铁电存储器(ferroelectric random access memory,fram)、相变存储器(phase change memory,pcm)、石墨烯存储器等。易失性存储器可包括随机存取存储器(random access memory,ram)或外部高速缓冲存储器等。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。本技术所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本技术所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
134.以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
135.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本技术专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术的保护范围应以所附权利要求为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1