CN112699157B - 信息推荐方法、装置、设备及介质 - Google Patents
信息推荐方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN112699157B CN112699157B CN202110037856.6A CN202110037856A CN112699157B CN 112699157 B CN112699157 B CN 112699157B CN 202110037856 A CN202110037856 A CN 202110037856A CN 112699157 B CN112699157 B CN 112699157B
- Authority
- CN
- China
- Prior art keywords
- information
- recommendation
- candidate
- content
- party
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2457—Query processing with adaptation to user needs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请公开了一种信息推荐方法、装置、设备及存储介质,涉及计算机技术领域。该方法包括:响应于获取推荐信息的请求消息,获取配置信息,该配置信息包括推荐信息的至少两种内容类型及相应的内容来源,内容来源包括预置的信息库及第三方中的至少一项;从信息库中获取与相应的至少一种内容类型对应的候选信息;从第三方中获取与相应的至少一种内容类型对应的第一候选推荐信息;根据候选信息以及对应的内容类型、第一候选推荐信息,生成相应的推荐信息。本申请实施例提供的采用无侵入式接入第三方服务数据的方式,可以解决在接入第三方数据源时,会给第三方服务带来额外的开销的问题。
Description
技术领域
本申请实施例涉及计算机技术领域,特别涉及一种信息推荐方法、装置、设备及介质。
背景技术
现有的推荐系统中,混排层需要根据特定的运营规则、算法策略等等挑选出不仅评分高,并且满足用户喜好的推荐内容。然而内容源的优劣品质从源头上决定了整个信息流推荐系统带给用户的感受,除了完善推荐系统中的内容池中的内容,获取第三方服务内容为用户提供更加丰富多元化的内容也是非常重要的。
接入第三方数据源的方式包括侵入式和非浸入式。其中,侵入式的接入第三方数据源,需要第三方服务主动将内容写入推荐系统的内容池中,然后由推荐引擎中召回层按原有逻辑从内容池中召回数据。这个方案中,第三方服务需要根据当前推荐内容池中的内容结构对第三方内容数据进行调整(即:需要修改第三方数据的原有内容存储逻辑)后通过某种约定的方式写入推荐内容池中。因此,第三方服务不仅要提供内容源,还要满足推荐场景的各种需求,这会给第三方服务带来额外的开销。
发明内容
本申请实施例提供了一种信息推荐方法、装置、设备及存储介质,可以解决现有技术中在接入第三方数据源时,会给第三方服务带来额外的开销的问题。所述技术方案如下:
一个方面,提供了一种信息推荐方法,所述方法包括:
响应于获取推荐信息的请求消息,获取配置信息,所述配置信息包括所述推荐信息的至少两种内容类型及相应的内容来源,所述内容来源包括预置的信息库及第三方中的至少一项;
从所述信息库中获取与相应的至少一种内容类型对应的候选信息;
从所述第三方中获取与相应的至少一种内容类型对应的第一候选推荐信息;
根据所述候选信息以及对应的内容类型、所述第一候选推荐信息,生成相应的推荐信息。
在一个可能的实现方式中,所述配置信息还包括内容类型与推荐信息生成槽位的对应关系,则所述从所述第三方中获取与相应的至少一种内容类型对应的第一候选推荐信息,包括:
根据所述对应关系,将所述第三方对应的至少一种内容类型和所述第三方的标识信息填充入相应的推荐信息生成槽位中,生成推荐数据获取请求;
从所述第三方获取与所述推荐数据获取请求相应的第一候选推荐信息。
在另一个可能的实现方式中,所述从预置的信息库中获取与所述内容类型对应的候选信息后,还包括:
根据所述对应关系,将所述信息库相应的至少一种内容类型以及所述候选信息填充入相应的推荐信息生成槽位中,得到第二候选推荐信息;
则,根据所述候选信息以及对应的内容类型、所述第一候选推荐信息,生成相应的推荐信息,包括:
根据所述第一候选推荐信息、所述第二候选推荐信息以及对应的内容类型,生成相应的推荐信息。
在又一个可能的实现方式中,所述根据所述对应关系,将所述信息库相应的至少一种内容类型以及所述候选信息填充入相应的推荐信息生成槽位中,得到第二候选推荐信息之前,还包括:
根据预设条件对所述候选信息进行排序,并根据排序结果筛选得到筛选信息;
所述根据所述对应关系,将所述信息库相应的至少一种内容类型以及所述候选信息填充入相应的推荐信息生成槽位中,得到第二候选推荐信息,包括:
根据所述对应关系,将所述信息库相应的至少一种内容类型以及所述筛选信息填充入相应的推荐信息生成槽位中,得到所述第二候选推荐信息。
另一方面,提供了一种信息推荐装置,所述装置包括:
获取模块,用于响应于获取推荐信息的请求消息,获取配置信息,所述配置信息包括所述推荐信息的至少两种内容类型及相应的内容来源,所述内容来源包括预置的信息库及第三方中的至少一项;
信息召回模块,用于从所述信息库中获取与相应的至少一种所述内容类型对应的候选信息;
信息确定模块,用于从所述第三方中获取与相应的至少一种内容类型对应的第一候选推荐信息;
信息推荐模块,用于根据所述候选信息以及对应的内容类型、所述第一候选推荐信息,生成相应的推荐信息。
在一个可能的实现方式中,所述配置信息还包括内容类型与推荐信息生成槽位的对应关系;
所述信息确定模块,具体用于根据所述对应关系,将所述第三方对应的至少一种内容类型和所述第三方的标识信息填充入相应的推荐信息生成槽位中,生成推荐数据获取请求;并从所述第三方获取与所述推荐数据获取请求相应的第一候选推荐信息。
在另一个可能的实现方式中,
所述信息确定模块,还用于根据所述对应关系,将所述信息库相应的至少一种内容类型以及所述候选信息填充入相应的推荐信息生成槽位中,得到第二候选推荐信息;
所述信息推荐模块,用于根据所述第一候选推荐信息、所述第二候选推荐信息数据以及对应的内容类型,生成相应的推荐信息。
在又一个可能的实现方式中,所述装置还包括:
信息排序模块,用于根据预设条件对所述候选信息进行排序,并根据排序结果筛选得到筛选信息;
所述信息确定模块,具体用于根据所述对应关系,将所述信息库相应的至少一种内容类型以及所述筛选信息填充入相应的推荐信息生成槽位中,得到所述第二候选推荐信息。
另一方面,提供了一种电子设备,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上所述的信息推荐方法。
另一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上所述的信息推荐方法。
另一方面,提供了一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得计算机执行如上所述的信息推荐方法。
本申请实施例提供的技术方案带来的有益效果至少包括:
通过基于配置信息中的内容来源和内容类型,从信息库中获取与相应的至少一种内容类型对应的候选信息,从第三方中获取与相应的至少一种内容类型对应的第一候选推荐信息,再根据候选信息以及对应的内容类型、第一候选推荐信息,生成相应的推荐信息。整个过程采用无侵入式接入第三方服务数据的方式,对于第三方服务来说,提供一个对外接口供获取数据即可,无需改变原有内容存储逻辑,从而可以解决在接入第三方数据源时,会给第三方服务带来额外的开销的问题。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了一个现有相关技术的架构示意图;
图2示出了另一个现有相关技术的架构示意图;
图3示出了本申请一个示例性实施例提供的一个信息推荐系统的架构示意图;
图4示出了本申请实施例提供的一种信息推荐方法的实现过程的示意图;
图5示出了本申请实施例提供的一种信息推荐方法的流程示意图;
图6示出了本申请另一实施例提供的一种信息推荐方法的流程示意图;
图7示出了本申请另一实施例提供的一种信息推荐方法的流程示意图;
图8示出了本申请实施例提供的一种信息推荐装置的结构示意图;
图9示出了本申请一个示例性实施例提供的电子设备的框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
为使得本申请的发明目的、特征、优点能够更加的明显和易懂,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而非全部实施例。基于本申请中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
下面详细描述本申请的实施例,该实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。
应当理解,本申请的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本申请的范围在此方面不受限制。
本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
需要注意,本申请中提及的“第一”、“第二”等概念仅用于对装置、模块或单元进行区分,并非用于限定这些装置、模块或单元一定为不同的装置、模块或单元,也并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
需要注意,本申请中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
本申请实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
为了更好的理解及说明本申请实施例的方案,下面对本申请实施例中所涉及到的一些技术用语进行简单说明:
云技术(Cloud technology):基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。
云计算(Cloud computing):指IT基础设施的交付和使用模式,指通过网络以按需、易扩展的方式获得所需资源;广义云计算指服务的交付和使用模式,指通过网络以按需、易扩展的方式获得所需服务。这种服务可以是IT和软件、互联网相关,也可是其他服务。云计算是网格计算(Grid Computing)、分布式计算(Distributed Computing)、并行计算(Parallel Computing)、效用计算(Utility Computing)、网络存储(Network StorageTechnologies)、虚拟化(Virtualization)、负载均衡(Load Balance)等传统计算机和网络技术发展融合的产物。
信息流:一种海量信息,能源源不断的刷出新的实时的内容的数据流。
推荐系统:根据物品或内容的元数据,发现物品或者内容的相关性,然后基于用户以往的喜好行为进行画像,通过算法和人工运营策略,为用户在合适的场景下提供用户喜欢的内容。
混排层:推荐系统的必要部分之一,一般对精排层输出的数据使用一些多样性的控制进行二次排序:广告插入、人工运营干预等。
ABTest:AB测试是为Web或App界面或流程制作两个(A/B)或多个(A/B/n)版本,在同一时间维度,分别让组成成分相同(相似)的访客群组(目标人群)随机的访问这些版本,收集各群组的用户体验数据和业务数据,最后分析、评估出最优版本,正式采用。
侵入式与非侵入式:侵入式是要求第三方“知道”框架的代码,表现为第三方需要继承框架提供的类。非侵入式则不需要第三方引入框架代码的信息,从用户角度来看,察觉不到框架的存在。
槽位:会话中的一个概念,就是用户意图转化为明确的用户指令所需要的信息,一个槽位与一件事情的处理中所需要获取的一种信息相对应。在本申请中,一个槽位中存储的候选信息对应于展示给用户的一个推荐信息。
现有的推荐系统中,混排层需要根据特定的运营规则、算法策略等等挑选出不仅评分高,并且满足用户喜好的推荐内容。然而内容源的优劣品质从源头上决定了整个信息流推荐系统带给用户的感受,除了完善推荐系统中的内容池中的内容,获取第三方服务内容为用户提供更加丰富多元化的内容也是非常重要的。接入第三方数据源的方式有多种,例如图1和图2所示的方式。
其中,图1所示的方式是通过改进第三方服务,侵入式的接入第三方数据源。这个方式需要第三方服务主动将内容写入推荐系统的内容池中,然后推荐引擎中召回层按原有逻辑从内容池中召回数据。这个方案对于推荐引擎本身来说不需要做太大修改,只要定义好第三方内容源标识即可。然而第三方服务则需要根据当前推荐内容池中的内容结构对第三方内容数据进行改造后通过某种约定的方式写入推荐内容池中。对于他们来说这可能是一个负担,不仅要提供内容源,还要满足推荐场景的各种需求,这会给第三方服务带来额外的开销,因此,第三方内容源可能不愿意接入。
图2所示的方式是通过改进推荐引擎,非侵入式的接入第三方数据源。这个方式中,第三方服务只需要提供给推荐引擎一个接口,推荐引擎召回层以及精排层逻辑正常进行,由混排层调用第三方服务接口获取所需要的内容信息并与当前推荐内容的结构做融合。
然而,这些方式会给第三方服务或推荐引擎混排层带来一些额外负担。在图1所示的方案中,侵入式接入对于第三方服务非常不友好,而且还需要修改第三方数据的原有内容存储逻辑;在图2所示的方案中,混排层调用第三方服务提供的接口,这和混排层的功能定义不相符。混排层的主要工作是对精排层结果进行二次排序,但是这样做会给混排层本身带来额外开销,如果接入的第三方服务增多,混排层也需要额外开发。并且存在第三方服务不稳定的问题,这会降低混排层的实用性和稳定性由此影响整个推荐系统的性能。
为了在接入第三方数据源时,不给第三方服务及推荐系统本身带来额外的开销,并且不影响推荐系统的性能。本申请提出了一种信息推荐方法,采用无侵入式接入第三方服务数据的方式,对于第三方服务来说,提供一个对外接口供获取数据即可,无需改变原有内容存储逻辑;对于混排层来说,只需要设置一个为第三方服务的数据内容提供的内容预留位,然后获取第三方服务内容数据放到展控层完成填充即可。
下面以具体的实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
本申请实施例提供的一种推荐系统中,召回层主要根据用户喜好从推荐内容池中拉取能够推荐给用户的候选信息,并依据参数配置召回渠道(即:内容类型);精排层则对召回的结果进行模型打分,排序等操作,在ABtest参数中可配置不同的打分训练模型;混排层作为一个策略层,主要参与实验的参数是最后推荐给用户的内容源列表槽位信息,每一次推荐给用户的数据量是固定的,则可以通过配置每一个槽位中存放的内容类型实现,比如:内容类型可以包括:运营类和推荐类,其中,运营类可以为广告、最新内容、精选内容、热门内容等等,推荐类为游戏,这些内容类型都类似于一个标签,在候选信息存入推荐内容池时就已经确定了。混排层获取这些类型信息,从精排层获取对应类型的候选信息,并将候选信息填入配置的槽位中用于用户展示。
由于推荐内容池中的数据量非常大,推荐的内容中会存在较多的图片及视频资源。推荐的整个过程是一个内容量逐渐减少精化的过程,最开始从推荐内容池中获取的数据只有极少一部分能推荐给用户,所以在推荐内容池中不会存储内容的所有详细信息,仅存储一些能够唯一标识该内容的标识信息,以及推荐过程中所需要的一些附属信息(例如:假如请求推荐的内容类型为游戏,则推荐过程中需要的附属信息包括具体的内容类型为“游戏”,以及唯一标识该游戏的ID信息)等,内容的详细信息存储在数据库中,在混排层对数据进行二次排序后,内容最终返回给终端之前,通过展控层去获取由混排层返回的部分内容信息(上述标识信息和附属信息),根据唯一标识去获取需要展示给用户的详细信息。
在架构设计中,为了验证不同方案下推荐效果,通常会采用ABtest的方式进行比对。在推荐引擎中,每个模块会将该模块参与实验的内容设计为参数化,通过一个远端ABtest平台,针对实验组或对照组使用不同的参数,最后以数据形式比较出品质更优的推荐参数信息。
本申请实施例所提供的信息推荐方法,主要应用场景为在心悦客户端进行信息流内容推荐。心悦客户端是一个集合了多款游戏的社交福利平台,针对不同的用户最近在玩的游戏,推荐可能感兴趣的游戏文章或视频内容,为了丰富内容源,接入第三方内容推荐给用户。在客户端进行信息流内容推荐时,例如:推荐与游戏相关的内容,包括运营类内容和推荐类内容。其中,运营类内容包括但不限于游戏广告、游戏精选内容、近期热门内容等等经人工干预的内容,推荐类内容为不经人工干预的游戏内容。
具体推荐过程是:
1、推荐引擎接收到客户端请求获取推荐信息的请求后,从ABtest远端平台获取包括至少两种内容类型及相应的内容来源的配置信息,其中,内容来源包括预置的信息库及第三方中的至少一项。
2、从所述信息库中获取与相应的至少一种内容类型对应的候选信息并进行排序、筛选,得到筛选信息;
3、根据配置信息中内容类型与推荐信息生成槽位的对应关系,将信息库相应的至少一种内容类型以及筛选信息填充入相应的推荐信息生成槽位中,得到第二候选推荐信息;
4、根据配置信息中内容类型与推荐信息生成槽位的对应关系,将第三方对应的至少一种内容类型和该第三方的标识信息填充入相应的推荐信息生成槽位中,生成推荐数据获取请求;
5、从第三方获取与推荐数据获取请求相应的第一候选推荐信息,从数据库获取第二候选推荐信息的待推荐信息,例如:内容类型为游戏时,待推荐信息可以包括:关于游戏的玩法、经验分享的文章、视频等等;
6、将第一候选推荐信息、第二候选推荐信息以及对应的待推荐信息,融合后得到最终的推荐信息。
因此,本申请提供的信息推荐方法,实现了无侵入的第三方内容接入,对于产品运营类非技术工作人员可直接通过修改ABtest预设的参数信息添加自定义第三方内容即可。
为了更好的理解本申请实施例所提供的一种信息推荐方法,下面结合图3和图4对本申请实施例的技术方案进行进一步说明。
如图3所示,为本申请实施例提供的一种推荐系统的架构示意图。
(1)展控层接收到客户端请求获取信息流推荐信息的请求消息后,请求混排层数据。
(2)混排层为了区分第三方内容,将ABtest参数中的类型分为内容池自带内容类型以及自定义内容类型,即:对内容的来源进行区分。混排层从ABtest远端平台拿到配置信息后,对配置中的内容类型进行注册,并根据内容类型向精排层发送请求,拉取内容池自带的内容类型的数据;而后精排层向召回层获取召回数据得到候选信息,排序好后返回给混排层。
(3)混排层进行槽位内容填充:
混排层获取ABtest参数配置平台中的槽位参数信息,其中,槽位参数信息为每一个展示给用户的序列位置应该存放的内容类型,例如:游戏、热点、广告、精选等等。
在进行槽位填充时,混排层会将来自内容池中的推荐类数据经过二次排序后放入指定的槽位中,将来自内容池中的运营类数据放入相应的槽位中;对于自定义内容类型,混排层将构造一个假内容数据,将内容数据类型标识为自定义内容的类型,然后将相应信息(包括:推荐类或运营类,以及第三方的唯一标识)放入指定的槽位中完成预留位填充。
(4)展控层获取到混排层的结果,根据内容类型(例如:游戏、热点、广告、精选等等)分别从数据库中获取内容池内容的详细信息,并根据第三方的唯一标识从第三方服务拉取相应类型(推荐类(如:游戏)或运营类(如:热点、广告、精选等))的第三方内容的详细信息,完成最后的详细信息填充之后返回给客户端用于用户展示。
在该实施例中,对于客户端而言,客户端为用户提供一个请求发起入口,如果用户期望进行信息推荐时,便可在此请求发起入口中触发相关操作,使得客户端检测到此操作,并由此生成推荐信息的请求。
针对客户端所配置的输入组件(例如:鼠标、键盘、触控屏幕等)不同,请求发起入口有所区别,在此请求发起入口中触发的相关操作也各不相同。例如,相关操作包括但不限于点击、移动、拖拽、滑动等等。
举例来说,客户端为智能手机,则请求发起入口可以是此智能手机所配置触控屏幕中呈现的会话页面,此会话页面中展示了若干被推荐的候选信息,用户可通过下拉此会话页面,使得客户端发起信息推荐请求,进而将服务端返回的候选信息在此会话页面中进行更新展示。其中,下拉操作即为请求发起入口触发的相关操作。
对于服务端(即上述推荐系统后台)而言,在客户端发起信息推荐请求之后,便可接受到此信息推荐请求,进而为用户提供信息推荐服务。
具体地,首先从信息库中召回内容类型对应的候选信息,然后针对候选信息进行多次排序、推荐。其中,内容类型可以包括但不限于:广告、热点、精选、最新、刚发布、热门、用户感兴趣的等等。
也就是说,针对信息库中存储的海量信息,被召回的候选信息属于刚发布信息,或者,属于热门信息,又或者,属于用户感兴趣的信息。
需要说明的是,信息库中存储的海量信息,是由信息发布方主动上传的。即,信息发布方将待发布的信息上传至服务端的信息库中存储,以便于服务端将此信息推荐给用户。
如图4所示,为本申请实施例提供的一种信息推荐方法10的实现过程的示意图。其中,推荐引擎即为上文中的推荐系统包括:展控层、混排层、精排层和召回层。具体的,如图4所示的信息推荐方法方法10包括以下步骤:
1、客户端向推荐系统后台发送获取推荐信息的请求;
2、展控层接收到请求后转发至混排层;
3、混排层接收到请求后,从ABtest远端平台获取配置信息,其中,配置信息包括:至少两种内容类型及相应的内容来源,所述内容来源包括预置的信息库及第三方中的至少一项。
例如:该请求指示此次推荐8条信息包括的内容类型为游戏,则配置信息包括:推荐信息的内容类型为“推荐类(如:游戏)和运营类(如:广告)”以及各条推荐信息的内容来源,假若只表明其中某一条信息的来源为第三方,则其余各条信息的来源默认为推荐内容池。
4、混排层向精排层转发请求,该请求中携带内容类型为“推荐类(如:游戏)和运营类(如:广告)”。
5、精排层收到请求后向召回层发送召回请求,该召回请求中携带内容类型为“推荐类(如:游戏)和运营类(如:广告)”。
6、召回层根据收到的召回请求,从推荐内容池中召回与相应的至少一种内容类型对应的候选信息。
例如:从推荐内容池中召回游戏候选信息:100条、游戏广告候选信息:50条。
7、召回层将召回的候选信息返回至精排层。
8、精排层根据预设条件对候选信息进行排序和筛选。
例如:对于游戏候选信息,根据点击率的高低进行排序,筛选点击率超过60%的数据(例如:筛选出游戏候选信息40条);对于游戏广告候选信息,根据评分进行排序。应理解,这里仅是举例说明本申请实施例的技术方案,并不对本申请实施例构成任何限定,另外,这里还可以采用其他现有方式进行排序,为了描述的简洁,在此不再赘述。
9、精排层向混排层返回筛选后的候选信息。
10、混排层接收精排层返回的候选信息,将候选信息根据相应的内容类型和获取的槽位参数信息填充至相应的槽位中,得到混排结果。其中,对于游戏候选信息(推荐类)进行二次排序,并将二次排序后的数据根据相应的内容类型和获取的槽位参数信息填充至相应的槽位中;对于游戏广告候选信息(运营类),从精排层获取排序靠前的N条填充至相应的槽位中,N为运营类信息对应的槽位的数量。
具体的,在该实施例中,混排层获取的配置信息中还包括:内容类型与推荐信息生成槽位的对应关系,即:槽位参数信息,用于表征每一个展示给用户的序列位置应该存放的内容类型。
例如:请求推荐8条信息,则对应有8个槽位,最后推荐给用户的就是8个信息。其中,第三、六个槽位中存储的是运营类内容(如:广告),第二个槽位中存储的内容对应的内容来源是第三方。那么,对于没有标明内容来源的槽位,默认利用从推荐内容池中召回的数据进行填充。对于标明存储的是广告的槽位,填充从推荐内容池中召回的游戏广告候选信息;对于没有标明存储的是运营类内容的槽位,默认填充推荐类内容,即:第一、四、五、七、八个槽位中填充从推荐内容池中召回的不经人工干预的游戏内容。因此,展示给用户的8个推荐信息的序列以此为:游戏内容、游戏内容(第三方)、游戏广告内容、游戏内容、游戏内容、游戏广告内容、游戏内容、游戏内容。
槽位填充就是将内容类型对应的内容数据填入与内容类型对应的槽位中,该过程可以通过key-value的形式体现。基于上述示例,具体的槽位填充过程可以为:在第一个槽位对应的key中存储内容类型游戏,相应的value中存储游戏候选信息经二次排序后排在首位的候选信息;第三个槽位对应的key中存储内容类型广告,相应的value中存储游戏广告候选信息经二次排序后排在首位的候选信息;第四、五、六、七、八个槽位的填充过程与第一、三个槽位的填充过程类似,在此不再赘述。
对于第二个槽位进行填充时,由于相应的候选信息需从第三方获取,因此填充对应的内容类型“游戏”和第三方的标识信息,并不填充相应的数据,生成推荐数据获取请求,以便向第三方请求相应的数据。即:在第三个槽位对应的key中存储内容类型游戏和第三方的标识信息,相应的value中不存储内容。
需要说明的是,广告属于运营类内容,为了提升推广力度,可以直接选取精排层排序得到的50条游戏广告数据中排序靠前的2条分别存储至第三槽位和第六槽位。而对于推荐类内容,为了确保推荐的准确性,还需要将精排层返回的40条游戏数据进行二次排序,例如:通过图文比例对40条游戏数据进行排序;将排序靠前的5条分别存储至第一、四、五、七、八个槽位,得到第二候选推荐信息。
11、混排层向展控层返回第二候选推荐信息和推荐数据获取请求。
12、展控层根据第二候选推荐信息的内容类型从数据库中获取相应的待推荐信息。
例如:根据第二候选推荐信息中排在首位的1条候选推荐信息中的标识信息和对应的内容类型(游戏),从数据库中获取该标识信息对应的游戏数据本身,例如:游戏A的玩法的文章或视频本身的内容,得到待推荐信息。
由于推荐内容池中并没有存储内容的所有详细信息,只存储了标识内容的信息以及推荐过程中需要的信息,例如:存储了内容的唯一标识信息和类型,因此,在最后形成用于展示给用户的推荐信息时,需要从数据库中获取相应的内容本身。例如:客户端发送推荐游戏A的请求,从推荐内容池中召回的候选信息为“唯一标识为A的游戏玩法”,但并不能得到游戏A的玩法的文章或视频本身的内容,这些数据需要从数据库中获取。
13、展控层向第三方服务端发送推荐数据获取请求,以从第三方服务端获取请求中包括的内容类型对应的内容本身。
具体的,展控层根据第三方的标识信息从对应的第三方服务端获取请求中包括的内容类型对应的内容本身,例如:第三方为“百度”,则展控层向百度服务端发送推荐数据获取请求,以从百度服务端获取请求中包括的游戏对应的内容本身。
14、第三方服务端向展控层返回的与内容类型相对应的第一候选推荐信息。
15、展控层根据第一候选推荐信息、第二候选推荐信息和从数据库获取的该第二候选推荐信息对应的待推荐信息,融合生成推荐信息。
例如:推荐信息中的第一条信息(如:游戏A的玩法视频)为根据第二候选推荐信息中排在首位的游戏候选推荐信息(如:游戏A的玩法视频ID)和相应的待推荐信息(如:视频ID对应的视频内容)融合得到的,推荐信息中的第二条信息(如:游戏A的玩法文章)为第一候选推荐信息,该信息为从第三方获取的游戏内容数据。
需要说明的是,在该实施例中,混排层可以为第三方内容设置一个或者多个预留槽位,当设置一个时,展控层仅从第三方拉取一个最优的内容数据;当设置多个时,展控层从第三方拉取优选的多个内容数据。
16、展控层向客户端反馈推荐信息。
17、客户端接收并展示推荐信息。
通过根据获取的配置信息中的内容来源从信息库中召回相应内容类型对应的候选信息并进行排序和筛选,然后将筛选后的候选信息根据获取的槽位参数信息填充相应的槽位,得到相应的候选推荐信息,并基于该候选推荐信息的内容类型从数据库获取相应的待推荐信息,对于内容来源为第三方的,仅在对应槽位中填充相应的内容类型以生成推荐数据获取请求,从第三方获取相应内容类型的候选推荐信息,最后再基于候选推荐信息和相应的待推荐信息以及从第三方获取的候选推荐信息,融合得到推荐信息。
上述方法的整个过程采用无侵入式接入第三方服务数据的方式,对于第三方服务来说,提供一个对外接口供获取数据即可,无需改变原有内容存储逻辑;对于混排层来说,只需要为第三方服务的数据内容设置一个或者多个内容预留槽位,然后获取第三方服务的内容数据放到展控层完成填充即可,从而可以解决在接入第三方数据源时,会给第三方服务及推荐系统本身带来额外的开销,并且影响推荐系统的性能的问题。
如图5所示,为本申请实施例提供的一种信息推荐方法200的示意性流程图。该方法200包括:
201、响应于获取推荐信息的请求消息,获取配置信息,所述配置信息包括所述推荐信息的至少两种内容类型及相应的内容来源,所述内容来源包括预置的信息库及第三方中的至少一项;
具体的,在该实施例中,所述配置信息可以包括从ABtest远端平台获取的ABtest参数中的类型及相应的内容来源,该类型包括:内容池自带类型和自定义类型,相应的内容来源包括:推荐内容池和第三方。配置信息中的内容类型可以包括运营类和推荐类,其中,运营类包括但不限于:广告、热点、精选、最新、刚发布、热门、用户感兴趣的等等。
202、从所述信息库中获取与相应的至少一种内容类型对应的候选信息;
具体地,若内容类型包括:刚发布、热门、用户感兴趣的等,则针对信息库中存储的海量信息,被召回的候选信息属于刚发布信息,或者,属于热门信息,又或者,属于用户感兴趣的信息等等。
203、从所述第三方中获取与相应的至少一种内容类型对应的第一候选推荐信息;
具体的,在该实施例中,服务端将构造一个假候选信息,将候选信息类型标识为自定义内容的类型,然后将内容类型(如:广告)放入指定的槽位(如上述第二个槽位)中完成预留槽位填充。然后基于填充后的结果对应的内容类型从第三方获取相应的内容得到第一候选推荐信息。
204、根据所述候选信息以及对应的内容类型、所述第一候选推荐信息,生成相应的推荐信息。
由于信息库中并没有存储内容的所有详细信息,只存储了标识内容的信息以及推荐过程中需要的信息,例如:存储了内容的唯一标识信息和类型,因此,从信息库中召回的候选信息并不包含用于展示给用户的所有信息,所有在最后形成用于展示给用户的推荐信息时,需要根据内容类型从数据库中获取相应的内容本身。例如:从数据库中获取游戏A的玩法的文章或视频本身的内容。最后,将从数据库中获取到的内容和从信息库召回筛选得到的候选信息,以及从第三方获取的第一候选推荐信息融合生成用于展示给用户的推荐信息。
上述实施例中,通过基于配置信息中的内容来源和内容类型,从信息库中获取与相应的至少一种内容类型对应的候选信息,从第三方中获取与相应的至少一种内容类型对应的第一候选推荐信息,再根据候选信息以及对应的内容类型、第一候选推荐信息,生成相应的推荐信息。整个过程采用无侵入式接入第三方服务数据的方式,对于第三方服务来说,提供一个对外接口供获取数据即可,无需改变原有内容存储逻辑,从而可以解决在接入第三方数据源时,会给第三方服务带来额外的开销的问题。
在一些实施例中,所述配置信息还包括内容类型与推荐信息生成槽位的对应关系,则步骤203可以包括:
2031、根据所述对应关系,将所述第三方对应的至少一种内容类型和所述第三方的标识信息填充入相应的推荐信息生成槽位中,生成推荐数据获取请求;
2032、从所述第三方获取与所述推荐数据获取请求相应的第一候选推荐信息。
具体的,在该实施例中,配置信息还包括内容类型与推荐信息生成槽位的对应关系,例如:8个槽位中第一、四、五、七、八个槽位中存储的内容类型是游戏,第三、六个槽位中存储的内容类型是广告,第二个槽位中存储的内容类型是游戏,对应的内容来源是第三方。则将第三方对应的内容类型“游戏和第三方的标识信息”填充入第二个槽位中,生成推荐数据获取请求,再根据第三方的标识信息从对应的第三方获取与推荐数据获取请求中包括的“游戏”相应的第一候选推荐信息。例如:游戏的经验分享等。
上述方法中,对于第三方服务来说,提供一个对外接口供获取数据即可,无需改变原有内容存储逻辑,对于混排层来说,只需要为第三方服务的数据内容设置一个或者多个内容预留槽位,然后获取第三方服务内容数据放到展控层完成填充即可,从而可以解决在接入第三方数据源时,会给第三方服务及推荐系统本身带来额外的开销,并且影响推荐系统的性能的问题。
在一些实施例中,如图6所示,在步骤202之后,方法200还包括:
205、根据所述对应关系,将所述信息库相应的至少一种内容类型以及所述候选信息填充入相应的推荐信息生成槽位中,得到第二候选推荐信息;
则步骤204具体为:
根据所述第一候选推荐信息、所述第二候选推荐信息以及对应的内容类型,生成相应的推荐信息。
具体的,在该实施例中,配置信息还包括内容类型与推荐信息生成槽位的对应关系,例如:8个槽位中第一、四、五、七、八个槽位中存储的内容类型是游戏,第三、六个槽位中存储的内容类型是广告,第二个槽位中存储的内容类型是游戏,对应的内容来源是第三方。则将内容类型“游戏”和从信息库中召回的游戏候选信息填充入第一、四、五、七、八个槽位中,将内容类型“广告”和从信息库中召回的广告候选信息填充入第三、六个槽位中,得到第二候选推荐信息,然后根据第一候选推荐信息、第二候选推荐信息以及对应的内容类型,生成相应的推荐信息。
具体而言,根据第二候选推荐信息对应的内容类型从数据库中获取第二候选推荐信息对应的待推荐内容,再将第一候选推荐信息、第二候选推荐信息以及对应的待推荐内容融合得到推荐信息。
由于内容池中存储的内容数据的信息有限,因此第二候选推荐信息中仅包含内容数据的一部分信息。所以,需要将从数据库中获取第二候选推荐信息对应的待推荐信息,并其与第二候选推荐信息,以及从第三方服务获取的第一候选推荐信息进行融合,得到最终的推荐信息。
上述实施例中,通过将召回的候选信息填充入相应的槽位得到候选推荐信息,可以有效较少冗余的候选信息。
在一些实施例中,如图7所示,在步骤205之前,方法200还包括:
206、根据预设条件对所述候选信息进行排序,并根据排序结果筛选得到筛选信息;
则步骤205具体为:
根据所述对应关系,将所述信息库相应的至少一种内容类型以及所述筛选信息填充入相应的推荐信息生成槽位中,得到所述第二候选推荐信息。
具体的,在该实施例中,根据内容池自带类型从信息库中召回所述内容类型对应的候选信息后,候选信息存在冗余,通常没必要全部推荐给用户,因此可以进行排序和筛选,得到待推荐内容。例如:基于点击率,对召回的候选信息进行初步筛选,得到待推荐内容。
需要说明的是,精排层对召回的候选信息进行排序和筛选的具体方式不限于上述所举示例中的点击率,还可以采用现有的其他相关技术实现,本领域技术人员可以获知,为了描述的简洁,在此不再赘述。
当混排层从精排层拿到待推荐内容后,为了达到精准推荐的目的,还需要对待推荐内容中的推荐类的内容进行二次排序,然后再将排序后的待推荐内容根据相应的内容类型和获取的槽位参数信息填充至相应的槽位中。具体填充过程可以为:
将排序后的待推荐内容填充到与相应内容类型对应的槽位中。
例如:槽位参数信息表征槽位1中填充的内容类型为:游戏,则将内容类型为游戏的待推荐内容中排在首位的待推荐内容填充至槽位1中。
需要说明的是,在该实施例中,混排层对精排层结果(即:上述待推荐内容)进行二次排序的具体方式采用现有的相关技术实现,本领域技术人员可以获知,为了描述的简洁,在此不再赘述。
本申请上述实施例中提出的一种信息推荐方法,采用无侵入式接入第三方服务数据的方式,对于第三方服务来说,提供一个对外接口供获取数据即可,无需改变原有内容存储逻辑;对于混排层来说,只需要设置一个为第三方服务的数据内容提供的内容预留位,然后获取第三方服务内容数据放到展控层完成填充即可,从而可以解决在接入第三方数据源时,会给第三方服务及推荐系统本身带来额外的开销,并且影响推荐系统的性能的问题。
基于相同的发明构思,本申请实施例还提供了一种信息推荐装置,该装置的结构示意图如图8所示,装置300包括:获取模块301、信息召回模块302、信息确定模块303和信息推荐模块304。其中,
获取模块301,用于响应于获取推荐信息的请求消息,获取配置信息,所述配置信息包括所述推荐信息的至少两种内容类型及相应的内容来源,所述内容来源包括预置的信息库及第三方中的至少一项;
信息召回模块302,用于从所述信息库中获取与相应的至少一种所述内容类型对应的候选信息;
信息确定模块303,用于从所述第三方中获取与相应的至少一种内容类型对应的第一候选推荐信息;
信息推荐模块304,用于根据所述候选信息以及对应的内容类型、所述第一候选推荐信息,生成相应的推荐信息。
上述实施例中,通过基于配置信息中的内容来源和内容类型,从信息库中获取与相应的至少一种内容类型对应的候选信息,从第三方中获取与相应的至少一种内容类型对应的第一候选推荐信息,再根据候选信息以及对应的内容类型、第一候选推荐信息,生成相应的推荐信息。整个过程采用无侵入式接入第三方服务数据的方式,对于第三方服务来说,提供一个对外接口供获取数据即可,无需改变原有内容存储逻辑,从而可以解决在接入第三方数据源时,会给第三方服务带来额外的开销的问题。
在一个实施例中,所述配置信息还包括内容类型与推荐信息生成槽位的对应关系;
所述信息确定模块303,具体用于根据所述对应关系,将所述第三方对应的至少一种内容类型和所述第三方的标识信息填充入相应的推荐信息生成槽位中,生成推荐数据获取请求;并从所述第三方获取与所述推荐数据获取请求相应的第一候选推荐信息。
在上述实施例中,通过在混排层为第三方服务的数据内容设置一个或者多个内容预留槽位,然后获取第三方服务内容数据放到展控层完成填充即可,而对于第三方服务来说,提供一个对外接口供获取数据即可,无需改变原有内容存储逻辑,因此可以解决在接入第三方数据源时,会给第三方服务及推荐系统本身带来额外的开销,并且影响推荐系统的性能的问题。
在一个实施例中,所述信息确定模块303,还用于根据所述对应关系,将所述信息库相应的至少一种内容类型以及所述候选信息填充入相应的推荐信息生成槽位中,得到第二候选推荐信息;
所述信息推荐模块304,用于根据所述第一候选推荐信息、所述第二候选推荐信息数据以及对应的内容类型,生成相应的推荐信息。
在一个实施例中,所述装置还包括:
信息排序模块305,用于根据预设条件对所述候选信息进行排序,并根据排序结果筛选得到筛选信息;
所述信息确定模块303,具体用于根据所述对应关系,将所述信息库相应的至少一种内容类型以及所述筛选信息填充入相应的推荐信息生成槽位中,得到所述第二候选推荐信息。
本申请实施例提供的信息推荐装置中未详述的内容,可参照上述实施例中提供的信息推荐方法,本申请实施例提供的信息推荐装置能够达到的有益效果与上述实施例中提供的信息推荐方法相同,在此不再赘述。
应用本申请实施例,至少具有如下有益效果:采用无侵入式接入第三方服务数据的方式,对于第三方服务来说,提供一个对外接口供获取数据即可,无需改变原有内容存储逻辑;对于混排层来说,只需要设置一个为第三方服务的数据内容提供的内容预留位,然后获取第三方服务内容数据放到展控层完成填充即可,从而可以解决在接入第三方数据源时,会给第三方服务及推荐系统本身带来额外的开销,并且影响推荐系统的性能的问题。
通过以上实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
基于相同的发明构思,本申请实施例还提供了一种电子设备。如图9所示,电子设备400包括:存储器以及处理器,其中,这里的处理器可以称为下文所述的处理装置401,存储器可以包括下文中的只读存储器(ROM)402、随机访问存储器(RAM)403以及存储装置408中的至少一项,具体如下所示:
电子设备400可以包括处理装置(例如中央处理器、图形处理器等)401,其可以根据存储在只读存储器(ROM)402中的程序或者从存储装置408加载到随机访问存储器(RAM)403中的程序而执行各种适当的动作和处理。在RAM403中,还存储有电子设备400操作所需的各种程序和数据。处理装置401、ROM402以及RAM 403通过总线404彼此相连。输入/输出(I/O)接口405也连接至总线404。
通常,以下装置可以连接至I/O接口405:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置406;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置407;包括例如磁带、硬盘等的存储装置408;以及通信装置409。通信装置409可以允许电子设备400与其他设备进行无线或有线通信以交换数据。虽然图9示出了具有各种装置的电子设备400,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本申请的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置409从网络上被下载和安装,或者从存储装置408被安装,或者从ROM 402被安装。在该计算机程序被处理装置401执行时,执行本申请实施例的方法中限定的上述功能。
需要说明的是,本申请上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:响应于获取推荐信息的请求消息,获取配置信息,所述配置信息包括所述推荐信息的至少两种内容类型及相应的内容来源,所述内容来源包括预置的信息库及第三方中的至少一项;从所述信息库中获取与相应的至少一种内容类型对应的候选信息;从所述第三方中获取与相应的至少一种内容类型对应的第一候选推荐信息;根据所述候选信息以及对应的内容类型、所述第一候选推荐信息,生成相应的推荐信息。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的模块或单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,模块或单元的名称在某种情况下并不构成对该单元本身的限定,例如,获取模块还可以被描述为“获取配置信息的模块”。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。
在本申请的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (8)
1.一种信息推荐方法,其特征在于,包括:
响应于获取推荐信息的请求消息,通过混排层,获取配置信息,所述配置信息包括所述推荐信息的至少两种内容类型及相应的内容来源,所述内容来源包括预置的信息库及第三方中的至少一项;
从所述信息库中获取与相应的至少一种内容类型对应的候选信息;
从所述第三方中获取与相应的至少一种内容类型对应的第一候选推荐信息;
通过展控层,根据所述候选信息以及对应的内容类型、所述第一候选推荐信息,生成相应的推荐信息;
所述配置信息还包括内容类型与推荐信息生成槽位的对应关系,则所述从所述第三方中获取与相应的至少一种内容类型对应的第一候选推荐信息,包括:
通过所述混排层,根据所述对应关系,将所述第三方对应的至少一种内容类型和所述第三方的标识信息填充入相应的推荐信息生成槽位中,生成推荐数据获取请求;
通过所述展控层,从所述第三方获取与所述推荐数据获取请求相应的第一候选推荐信息。
2.根据权利要求1所述的方法,其特征在于,所述从预置的信息库中获取与所述内容类型对应的候选信息后,还包括:
根据所述对应关系,将所述信息库相应的至少一种内容类型以及所述候选信息填充入相应的推荐信息生成槽位中,得到第二候选推荐信息;
则,根据所述候选信息以及对应的内容类型、所述第一候选推荐信息,生成相应的推荐信息,包括:
根据所述第一候选推荐信息、所述第二候选推荐信息以及对应的内容类型,生成相应的推荐信息。
3.根据权利要求2所述的方法,其特征在于,所述根据所述对应关系,将所述信息库相应的至少一种内容类型以及所述候选信息填充入相应的推荐信息生成槽位中,得到第二候选推荐信息之前,还包括:
根据预设条件对所述候选信息进行排序,并根据排序结果筛选得到筛选信息;
所述根据所述对应关系,将所述信息库相应的至少一种内容类型以及所述候选信息填充入相应的推荐信息生成槽位中,得到第二候选推荐信息,包括:
根据所述对应关系,将所述信息库相应的至少一种内容类型以及所述筛选信息填充入相应的推荐信息生成槽位中,得到所述第二候选推荐信息。
4.一种信息推荐装置,其特征在于,包括:
获取模块,用于响应于获取推荐信息的请求消息,通过混排层,获取配置信息,所述配置信息包括所述推荐信息的至少两种内容类型及相应的内容来源,所述内容来源包括预置的信息库及第三方中的至少一项;
信息召回模块,用于从所述信息库中获取与相应的至少一种所述内容类型对应的候选信息;
信息确定模块,用于从所述第三方中获取与相应的至少一种内容类型对应的第一候选推荐信息;
信息推荐模块,用于通过展控层,根据所述候选信息以及对应的内容类型、所述第一候选推荐信息,生成相应的推荐信息;
所述配置信息还包括内容类型与推荐信息生成槽位的对应关系;
所述信息确定模块,具体用于通过所述混排层,根据所述对应关系,将所述第三方对应的至少一种内容类型和所述第三方的标识信息填充入相应的推荐信息生成槽位中,生成推荐数据获取请求;并通过所述展控层,从所述第三方获取与所述推荐数据获取请求相应的第一候选推荐信息。
5.根据权利要求4所述的装置,其特征在于,
所述信息确定模块,还用于根据所述对应关系,将所述信息库相应的至少一种内容类型以及所述候选信息填充入相应的推荐信息生成槽位中,得到第二候选推荐信息;
所述信息推荐模块,用于根据所述第一候选推荐信息、所述第二候选推荐信息数据以及对应的内容类型,生成相应的推荐信息。
6.根据权利要求5所述的装置,其特征在于,所述装置还包括:
信息排序模块,用于根据预设条件对所述候选信息进行排序,并根据排序结果筛选得到筛选信息;
所述信息确定模块,具体用于根据所述对应关系,将所述信息库相应的至少一种内容类型以及所述筛选信息填充入相应的推荐信息生成槽位中,得到所述第二候选推荐信息。
7.一种电子设备,其特征在于,所述电子设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1至3中任一所述的信息推荐方法。
8.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如权利要求1至3中任一所述的信息推荐方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110037856.6A CN112699157B (zh) | 2021-01-12 | 2021-01-12 | 信息推荐方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110037856.6A CN112699157B (zh) | 2021-01-12 | 2021-01-12 | 信息推荐方法、装置、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112699157A CN112699157A (zh) | 2021-04-23 |
CN112699157B true CN112699157B (zh) | 2023-10-20 |
Family
ID=75514123
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110037856.6A Active CN112699157B (zh) | 2021-01-12 | 2021-01-12 | 信息推荐方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112699157B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108959558A (zh) * | 2018-07-03 | 2018-12-07 | 百度在线网络技术(北京)有限公司 | 信息推送方法、装置、计算机设备及存储介质 |
CN109086439A (zh) * | 2018-08-15 | 2018-12-25 | 腾讯科技(深圳)有限公司 | 信息推荐方法及装置 |
CN110362737A (zh) * | 2018-04-08 | 2019-10-22 | 优视科技有限公司 | 推荐内容的推送方法、装置和服务器 |
CN110955820A (zh) * | 2018-09-22 | 2020-04-03 | 北京微播视界科技有限公司 | 一种媒体信息兴趣点推荐方法、装置、服务器及存储介质 |
CN111159546A (zh) * | 2019-12-24 | 2020-05-15 | 腾讯科技(深圳)有限公司 | 事件推送方法、装置、计算机可读存储介质和计算机设备 |
CN111625745A (zh) * | 2020-05-27 | 2020-09-04 | 北京字节跳动网络技术有限公司 | 推荐方法、装置、电子设备和计算机可读介质 |
CN112131411A (zh) * | 2020-09-21 | 2020-12-25 | 腾讯科技(深圳)有限公司 | 一种多媒体资源推荐方法、装置、电子设备及存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2929828A1 (en) * | 2013-11-06 | 2015-05-14 | Yume, Inc. | Mediation recommendation systems for multiple video advertisement demand sources |
US10628855B2 (en) * | 2018-09-25 | 2020-04-21 | Microsoft Technology Licensing, Llc | Automatically merging multiple content item queues |
-
2021
- 2021-01-12 CN CN202110037856.6A patent/CN112699157B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110362737A (zh) * | 2018-04-08 | 2019-10-22 | 优视科技有限公司 | 推荐内容的推送方法、装置和服务器 |
CN108959558A (zh) * | 2018-07-03 | 2018-12-07 | 百度在线网络技术(北京)有限公司 | 信息推送方法、装置、计算机设备及存储介质 |
CN109086439A (zh) * | 2018-08-15 | 2018-12-25 | 腾讯科技(深圳)有限公司 | 信息推荐方法及装置 |
CN110955820A (zh) * | 2018-09-22 | 2020-04-03 | 北京微播视界科技有限公司 | 一种媒体信息兴趣点推荐方法、装置、服务器及存储介质 |
CN111159546A (zh) * | 2019-12-24 | 2020-05-15 | 腾讯科技(深圳)有限公司 | 事件推送方法、装置、计算机可读存储介质和计算机设备 |
CN111625745A (zh) * | 2020-05-27 | 2020-09-04 | 北京字节跳动网络技术有限公司 | 推荐方法、装置、电子设备和计算机可读介质 |
CN112131411A (zh) * | 2020-09-21 | 2020-12-25 | 腾讯科技(深圳)有限公司 | 一种多媒体资源推荐方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112699157A (zh) | 2021-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220394340A1 (en) | Video recommendation method and apparatus, electronic device, and computer-readable medium | |
US10652605B2 (en) | Visual hot watch spots in content item playback | |
US10715478B2 (en) | Event-based comment grouping for content items | |
US9332315B2 (en) | Timestamped commentary system for video content | |
US10853837B2 (en) | Integrated testing, targeting and measuring of web site components | |
RU2406133C2 (ru) | Устройство и способы предоставления и представления настроенной информации о канале | |
WO2017161784A1 (zh) | 推荐内容的展示方法和装置 | |
CN105359125B (zh) | 用户历史播放列表和预订 | |
CN110134880B (zh) | 评论数据的提供、显示方法、装置、电子设备及存储介质 | |
CN105898209A (zh) | 视频平台监控分析系统 | |
CN110401844A (zh) | 视频直播策略的生成方法、装置、设备及可读介质 | |
US10402465B1 (en) | Content authority ranking using browsing behavior | |
CN109831532B (zh) | 数据分享方法、装置、设备及介质 | |
CN110267097A (zh) | 基于分类特征的视频推送方法、装置及电子设备 | |
US10827029B2 (en) | Event management and presentation | |
CN104102733A (zh) | 搜索内容提供方法和搜索引擎 | |
CN113886707A (zh) | 百科信息确定方法、显示方法、装置、设备和介质 | |
CN114461920A (zh) | 榜单信息推荐的数据处理方法、装置、介质及设备 | |
CN112699157B (zh) | 信息推荐方法、装置、设备及介质 | |
CN104111768B (zh) | 可交互窗口及自定义、引用、同步可交互窗口的方法和系统 | |
CN115170390A (zh) | 一种文件风格化方法、装置、设备及存储介质 | |
CN113064590B (zh) | 互动视频中互动组件的处理方法及装置 | |
CN115244941A (zh) | 用于改进视频组包的用户界面 | |
CN111581381B (zh) | 文本分类模型的训练集合的生成方法、装置和电子设备 | |
Janne | Web Design and CSS Animation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40042004 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |