首页> 中国专利> 一种广告策略代码生成方法、广告投放方法及装置

一种广告策略代码生成方法、广告投放方法及装置

摘要

本发明提供了一种广告策略代码生成方法、广告投放方法及装置,预先为每种广告策略的策略类型设置代码模板以及代码生成器,在获取广告策略的策略类型和策略参数的情况下,通过将策略参数写入对应策略类型的代码模板,生成该广告策略的伪代码,并通过调用该广告策略的策略类型对应的代码生成器,将广告策略的伪代码自动转换为工程代码,整个代码生成过程自动化完成,不需要人工参与,有效缩短了代码开发时间,提高了广告策略代码的生成效率,有效降低了代码与策略之间的耦合度,提高了代码的可维护性,降低了bug率。

著录项

  • 公开/公告号CN112183049A

    专利类型发明专利

  • 公开/公告日2021-01-05

    原文格式PDF

  • 申请/专利号CN202011073259.0

  • 申请日2020-10-09

  • 分类号G06F40/186(20200101);G06F8/30(20180101);G06F40/151(20200101);G06Q30/02(20120101);

  • 代理机构11227 北京集佳知识产权代理有限公司;

  • 代理人王娇娇

  • 地址 410003 湖南省长沙市开福区湖南国际会展中心北四楼

  • 入库时间 2023-06-19 09:27:35

说明书

技术领域

本发明涉及计算机技术领域,更具体的,涉及一种广告策略代码生成方法、广告投放方法及装置。

背景技术

广告投放引擎,在广告约束条件下,为客户端每一次广告请求匹配最优的广告内容下发给客户端播放广告。为了匹配最优广告,实现千人千面的广告展示效果,广告投放引擎往往会利用大量复杂的策略,如基于用户标签的算法、Lookalike、地域定向等。

在实际应用中,广告投放引擎所涉及的广告筛选策略、广告约束条件和广告排序等策略种类繁多且复杂多变。若采用人工编写代码的方式实现,在广告投放引擎日常更新迭代中需要消耗较多的人力成本,广告策略代码生成效率低下,且容易出现程序bug。

发明内容

有鉴于此,本发明提供了一种广告策略代码生成方法、广告投放方法及装置,提高了广告策略代码的生成效率。

为了实现上述发明目的,本发明提供的具体技术方案如下:

一种广告策略代码生成方法,包括:

获取广告策略的策略类型和策略参数;

按照所述策略类型对应的代码模板的格式,将所述策略参数写入所述策略类型对应的代码模板中,生成所述广告策略的伪代码;

调用所述策略类型对应的代码生成器,将所述广告策略的伪代码转换为工程代码;

将所述广告策略的工程代码整合编译到广告投放服务器中。

可选的,所述按照所述策略类型对应的代码模板的格式,将所述策略参数写入所述策略类型对应的代码模板中,生成所述广告策略的伪代码,包括:

判断所述策略类型是否为广告匹配策略;

若是广告匹配策略,按照广告匹配策略对应的代码模板的格式,将所述策略参数写入广告匹配策略对应的代码模板中,生成广告匹配策略的伪代码;

若不是广告匹配策略,判断所述策略类型是否为广告筛选策略;

若是广告筛选策略,按照广告筛选策略对应的代码模板的格式,将所述策略参数写入广告筛选策略对应的代码模板中,生成广告筛选策略的伪代码;

若不是广告筛选策略,判断所述策略类型是否为广告排序策略;

若是广告排序策略,按照广告排序策略对应的代码模板的格式,将所述策略参数写入广告排序策略对应的代码模板中,生成广告排序策略的伪代码。

一种广告投放方法,应用于广告投放服务器,所述广告投放服务器中预先存储由上述实施例公开的广告策略代码生成方法生成的广告策略的工程代码,所述方法包括:

接收客户端发起的广告请求;

对所述广告请求进行解析,得到客户端用户信息、播放器信息和视频信息;

运行预先存储的广告策略的工程代码,确定与所述客户端用户信息、所述播放器信息和所述视频信息相匹配的候选广告;

将优先级最高的所述候选广告发送到所述客户端。

可选的,所述运行预先存储的广告策略的工程代码,确定与所述客户端用户信息、所述播放器信息和所述视频信息相匹配的候选广告,包括:

运行预先存储的广告匹配策略的工程代码,根据所述客户端用户信息、所述播放器信息和所述视频信息,对所述广告请求进行广告匹配,得到初选广告;

运行预先存储的广告筛选策略的工程代码,根据所述客户端用户信息、所述播放器信息和所述视频信息,从所述初选广告中筛选出所述候选广告。

可选的,所述将优先级最高的所述候选广告发送到所述客户端,包括:

运行预先存储的广告排序策略的工程代码,确定所述候选广告中优先级最高的所述候选广告;

将优先级最高的所述候选广告发送到所述客户端。

一种广告策略代码生成装置,包括:

广告策略获取单元,用于获取广告策略的策略类型和策略参数;

伪代码生成单元,用于按照所述策略类型对应的代码模板的格式,将所述策略参数写入所述策略类型对应的代码模板中,生成所述广告策略的伪代码;

代码转换单元,用于调用所述策略类型对应的代码生成器,将所述广告策略的伪代码转换为工程代码;

代码整合编译单元,用于将所述广告策略的工程代码整合编译到广告投放服务器中。

可选的,所述伪代码生成单元,具体用于:

判断所述策略类型是否为广告匹配策略;

若是广告匹配策略,按照广告匹配策略对应的代码模板的格式,将所述策略参数写入广告匹配策略对应的代码模板中,生成广告匹配策略的伪代码;

若不是广告匹配策略,判断所述策略类型是否为广告筛选策略;

若是广告筛选策略,按照广告筛选策略对应的代码模板的格式,将所述策略参数写入广告筛选策略对应的代码模板中,生成广告筛选策略的伪代码;

若不是广告筛选策略,判断所述策略类型是否为广告排序策略;

若是广告排序策略,按照广告排序策略对应的代码模板的格式,将所述策略参数写入广告排序策略对应的代码模板中,生成广告排序策略的伪代码。

一种广告投放装置,应用于广告投放服务器,所述广告投放服务器中预先存储由上述实施例公开的广告策略代码生成方法生成的广告策略的工程代码,所述装置包括:

广告请求接收单元,用于接收客户端发起的广告请求;

广告请求解析单元,用于对所述广告请求进行解析,得到客户端用户信息、播放器信息和视频信息;

策略代码运行单元,用于运行预先存储的广告策略的工程代码,确定与所述客户端用户信息、所述播放器信息和所述视频信息相匹配的候选广告;

候选广告发送单元,用于将优先级最高的所述候选广告发送到所述客户端。

可选的,所述策略代码运行单元,具体用于:

运行预先存储的广告匹配策略的工程代码,根据所述客户端用户信息、所述播放器信息和所述视频信息,对所述广告请求进行广告匹配,得到初选广告;

运行预先存储的广告筛选策略的工程代码,根据所述客户端用户信息、所述播放器信息和所述视频信息,从所述初选广告中筛选出所述候选广告。

可选的,所述候选广告发送单元,具体用于:

运行预先存储的广告排序策略的工程代码,确定所述候选广告中优先级最高的所述候选广告;

将优先级最高的所述候选广告发送到所述客户端。

相对于现有技术,本发明的有益效果如下:

本发明公开的一种广告策略代码生成方法,预先为每种广告策略的策略类型设置代码模板以及代码生成器,在获取广告策略的策略类型和策略参数的情况下,通过将策略参数写入对应策略类型的代码模板,生成该广告策略的伪代码,并通过调用该广告策略的策略类型对应的代码生成器,将广告策略的伪代码自动转换为工程代码,整个代码生成过程自动化完成,不需要人工参与,有效缩短了代码开发时间,提高了广告策略代码的生成效率,有效降低了代码与策略之间的耦合度,提高了代码的可维护性,降低了bug率。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明实施例公开的一种广告策略代码生成方法的流程示意图;

图2为本发明实施例公开的一种伪代码生成方法的流程示意图;

图3为本发明实施例公开的一种广告投放方法的流程示意图;

图4为本发明实施例公开的另一种广告投放方法的流程示意图;

图5为本发明实施例公开的一种广告策略代码生成装置的结构示意图;

图6为本发明实施例公开的一种广告投放装置的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

为了提高广告策略代码的生成效率,本发明整合广告投放服务器中复杂多样的广告策略,通过梳理总结出广告匹配策略、广告筛选策略和广告排序策略等广告策略,分别为每种广告策略类型设计代码模板以及代码生成器,实现广告策略代码的自动化生成。

具体的,请参阅图1,本实施例公开的一种广告策略代码生成方法具体包括以下步骤:

S101:获取广告策略的策略类型和策略参数;

广告策略的策略类型包括广告匹配策略、广告筛选策略和广告排序策略等广告策略。

策略参数为广告策略对应的匹配参数、筛选参数、排序参数等。

以广告策略的策略类型为广告筛选策略为例,其策略参数可以包括指定条件和执行逻辑,指定条件为指定客户端版本小于等于v1.0.1且素材类型为FF,执行逻辑为将此广告订单禁用。

S102:按照所述策略类型对应的代码模板的格式,将所述策略参数写入所述策略类型对应的代码模板中,生成所述广告策略的伪代码;

每种策略类型分别对应唯一代码模板,代码模板预先配置了对应策略类型所需策略参数以及格式信息。

请参阅图2,广告策略的伪代码生成方法如下:

S201:判断策略类型是否为广告匹配策略;

若是广告匹配策略,S202:按照广告匹配策略对应的代码模板的格式,将策略参数写入广告匹配策略对应的代码模板中,生成广告匹配策略的伪代码;

若不是广告匹配策略,S203:判断策略类型是否为广告筛选策略;

若是广告筛选策略,S204:按照广告筛选策略对应的代码模板的格式,将策略参数写入广告筛选策略对应的代码模板中,生成广告筛选策略的伪代码;

若不是广告筛选策略,S205:判断策略类型是否为广告排序策略;

若是广告排序策略,S206:按照广告排序策略对应的代码模板的格式,将策略参数写入广告排序策略对应的代码模板中,生成广告排序策略的伪代码;

若不是广告排序策略,S207:提示伪代码生成失败。

S103:调用所述策略类型对应的代码生成器,将所述广告策略的伪代码转换为工程代码;

S104:将所述广告策略的工程代码整合编译到广告投放服务器中。

具体的,将广告匹配策略按广告匹配策略模板填写伪代码,利用代码生成器,将其模板伪代码生成工程代码Match类,可以直接编译应用到广告服务器项目中。

同理,可以将广告筛选策略按广告筛选策略模板填写伪代码,将其生成工程代码Filter类,可以直接编译应用到广告服务器项目中。

同理,可以将广告排序策略按广告排序策略模板填写伪代码,将其生成工程代码Weight类,可以直接编译应用到广告服务器项目中。

为了进一步对本实施例公开的广告策略代码生成方法进行说明,以下通过一个具体的场景示例进行详细介绍:

上线新广告功能,需要对老版本客户端过滤,这是一个十分频繁和繁琐的行为。通过编写计算机语言代码,由于计算机语言层次较低需要指定执行细节,工作量较大。且各种新功能对老版本的过滤,计算机语言代码分散,代码量较大,不利于统一管理和后续维护。在本发明提出的方案中,实现同一个需求所需要的业务模板代码量远少于计算机代码。用规则引擎的规则替换,同本发明提出的用广告业务语言替换,都能起到大大简化所需维护的业务代码量。但规则通过规则引擎解释执行,效率低下,容易成为系统性能的瓶颈。通过自定义的代码生成机制,可兼顾维护工作量小和执行效率两方面的优势。

新老版本案例使用过程:

场景:开机广告新增素材类型FF,v1.0.100版本客户端开始支持,小于v1.0.100的老版本客户端并不支持新素材,新素材类型不能下发给老版本客户端。

广告策略代码生成过程:

1.填写广告筛选策略模板,生成伪代码,指定条件:指定客户端版本小于等于v1.0.1且素材类型为FF,执行逻辑:将此广告订单禁用;

2.调用代码生成器,根据广告筛选策略模板的伪代码生成广告投放服务器工程代码,编译进广告服务器;

3.老版本客户端请求广告,运行该广告筛选策略的工程代码,会禁用包含新开机素材的广告订单,使得老客户端不会匹配上新素材订单,从而兼容功能升级。

可见,本实施例公开的一种广告策略代码生成方法,预先为每种广告策略的策略类型设置代码模板以及代码生成器,在获取广告策略的策略类型和策略参数的情况下,通过将策略参数写入对应策略类型的代码模板,生成该广告策略的伪代码,并通过调用该广告策略的策略类型对应的代码生成器,将广告策略的伪代码自动转换为工程代码,整个代码生成过程自动化完成,不需要人工参与,有效缩短了代码开发时间,提高了广告策略代码的生成效率,有效降低了代码与策略之间的耦合度,提高了代码的可维护性,降低了bug率。

本实施例公开了一种广告投放方法,应用于广告投放服务器,广告投放服务器中预先存储由上述实施例公开的广告策略代码生成方法生成的广告策略的工程代码,请参阅图3,该广告投放方法包括以下步骤:

S301:接收客户端发起的广告请求;

S302:对所述广告请求进行解析,得到客户端用户信息、播放器信息和视频信息;

其中,客户端用户信息包括用户标识、兴趣信息、性别信息、地域信息等信息。

播放器信息包括播放器类型和版本等信息。

视频信息包括视频标识等信息。

S303:运行预先存储的广告策略的工程代码,确定与所述客户端用户信息、所述播放器信息和所述视频信息相匹配的候选广告;

即利用广告策略对广告与客户端发送的广告请求进行匹配,得到候选广告。

S304:将优先级最高的所述候选广告发送到所述客户端。

具体的,当广告投放服务器预先存储的广告策略包括广告匹配策略、广告筛选策略和广告排序策略时,请参阅图4,广告投放方法包括:

S401:接收客户端发起的广告请求;

S402:对所述广告请求进行解析,得到客户端用户信息、播放器信息和视频信息;

S403:运行预先存储的广告匹配策略的工程代码,根据所述客户端用户信息、所述播放器信息和所述视频信息,对所述广告请求进行广告匹配,得到初选广告;

如运行预先存储的广告匹配策略的工程代码,进行广告类型匹配、广告源匹配、广告素材匹配等。

S404:运行预先存储的广告筛选策略的工程代码,根据所述客户端用户信息、所述播放器信息和所述视频信息,从所述初选广告中筛选出所述候选广告;

如运行预先存储的广告筛选策略的工程代码,进行地域筛选、兴趣筛选、性别筛选等。

S405:运行预先存储的广告排序策略的工程代码,确定所述候选广告中优先级最高的所述候选广告;

可以为基于广告效果的排序、基于广告收益的排序、基于库存规划的排序等广告排序策略,对候选广告的优先级进行排序,得到优先级最高的候选广告。

S406:将优先级最高的所述候选广告发送到所述客户端。

本实施例公开的广告投放方法,广告投放服务器中广告策略的工程代码与广告策略解耦,可以通过修改更高语义的模板中的相关参数修改广告策略代码,简化了广告策略的更新和维护工作,进而提高了广告策略更新到广告投放之间的时效性,进一步提高广告投放效率。

基于上述实施例公开的一种广告策略代码生成方法,本实施例对应公开了一种广告策略代码生成装置,请参阅图5,该装置包括:

广告策略获取单元501,用于获取广告策略的策略类型和策略参数;

伪代码生成单元502,用于按照所述策略类型对应的代码模板的格式,将所述策略参数写入所述策略类型对应的代码模板中,生成所述广告策略的伪代码;

代码转换单元503,用于调用所述策略类型对应的代码生成器,将所述广告策略的伪代码转换为工程代码;

代码整合编译单元504,用于将所述广告策略的工程代码整合编译到广告投放服务器中。

可选的,所述伪代码生成单元502,具体用于:

判断所述策略类型是否为广告匹配策略;

若是广告匹配策略,按照广告匹配策略对应的代码模板的格式,将所述策略参数写入广告匹配策略对应的代码模板中,生成广告匹配策略的伪代码;

若不是广告匹配策略,判断所述策略类型是否为广告筛选策略;

若是广告筛选策略,按照广告筛选策略对应的代码模板的格式,将所述策略参数写入广告筛选策略对应的代码模板中,生成广告筛选策略的伪代码;

若不是广告筛选策略,判断所述策略类型是否为广告排序策略;

若是广告排序策略,按照广告排序策略对应的代码模板的格式,将所述策略参数写入广告排序策略对应的代码模板中,生成广告排序策略的伪代码。

基于上述实施例公开的一种广告投放方法,本实施例对应公开了一种广告投放装置,应用于广告投放服务器,所述广告投放服务器中预先存储由上述实施例公开的广告策略代码生成方法生成的广告策略的工程代码,请参阅图6,所述装置包括:

广告请求接收单元601,用于接收客户端发起的广告请求;

广告请求解析单元602,用于对所述广告请求进行解析,得到客户端用户信息、播放器信息和视频信息;

策略代码运行单元603,用于运行预先存储的广告策略的工程代码,确定与所述客户端用户信息、所述播放器信息和所述视频信息相匹配的候选广告;

候选广告发送单元604,用于将优先级最高的所述候选广告发送到所述客户端。

可选的,所述策略代码运行单元603,具体用于:

运行预先存储的广告匹配策略的工程代码,根据所述客户端用户信息、所述播放器信息和所述视频信息,对所述广告请求进行广告匹配,得到初选广告;

运行预先存储的广告筛选策略的工程代码,根据所述客户端用户信息、所述播放器信息和所述视频信息,从所述初选广告中筛选出所述候选广告。

可选的,所述候选广告发送单元604,具体用于:

运行预先存储的广告排序策略的工程代码,确定所述候选广告中优先级最高的所述候选广告;

将优先级最高的所述候选广告发送到所述客户端。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号