导语: 由于信息过载,推荐系统基本成为互联网产品的标配, 如何快速的让自己的产品具有推荐的能力呢?稀缺专业人员投入、用户数据积累、用户冷启动问题等等都是自建推荐系统必须跨越的障碍。本文介绍如何接入腾讯云智能推荐, 快速获得上百人专业算法团队、二十亿+用户画像、几乎覆盖全部网民的推荐系统能力。
本文介绍如何使用豆瓣图书的openAPI抓取图书信息,上报图书信息、用户浏览点击行为到腾讯云智能推荐系统,通过API获取推荐结果。主要的步骤包括:
首先介绍下什么物料, 物料就是我们需要推荐的物品。推荐系统通过物料的属性、用户和场景的属性以及用户的历史行为,生产推荐结果。
为了方便的获取物料属性,这里我们使用douban图书API获取图书的基本信息。Api参考:https://developers.douban.com/wiki/?title=book_v2
其中,重要的信息包括:
接下来, 我们购买主机和CDB,使用python脚本遍历豆瓣图书api,我们将感兴趣的属性记录到db中, 获得原始的物料库,如下表所示:
步骤1我们已经获取到了物料库, 接下来通过腾讯云智能推荐item上报API上报物料,API详情参考API文档。
物料上报协议中, 重要的字段包括:
物料上报协议如下所示:
{
'data_type': 1,
'tags': u'\u9c81\u8fc5,\u4e2d\u56fd\u6587\u5b66....',
'bid': 'b_teg_openrecom_xxxx,
'describe': u '\u9c81\u8fc5\u5168\u96c6(2)',
'free': 0,
'item_id': u '9787020015252',
'MD5': '8764084918781ab51493eaf43e6d0166',
'url': u 'https://book.douban.com/subject/1002055/',
'publish': 1,
'platform': 1,
'score': 9.5,
'request_id': '1488358987',
'vender': u '\u4eba\u6c11\u6587\u5b66\u51fa\u7248\u793e',
'price': 31.75
}
智能推荐的所有行为都是围绕场景展开的, 首先上传适合当前场景的物料,接下来, 拉取当前场景下对用户的推荐结果;再上报用户在当前场景的流量、点击、转换等行为数据, 修正推荐结果。 场景可以理解为产品的一个推荐位, 比如很多产品有猜你喜欢的栏目。
可以在腾讯云官网智能推荐控制台创建场景, 获得场景id。 本文规划两个场景: 首页推荐和详情页推荐,申请两个场景id。
物料库上报以后, 就可以通过用户id从物料库中生成推荐结果了。这里使用请求服务接口。注意, 请求服务的地址与物料上报、行为上报地址不同。重要的字段包括:
推荐结果请求如下所示:
{
'scene_id': 538659,
'request_num': 50,
'uid': '3496892xx',
'request_id': '1487861252',
'service_type': 3,
'bid': 'b_teg_openrecom_xxxx',
'uid_type': '0',
'MD5': '05bae728925ee937e760b06669089c27'
}
用户行为上报接口, 上报某个时间点、某个场景下、某个用户发生了特定行为。 利用用户行为可以进一步优化推荐结果。 用户行为包括: 曝光、点击、转化、点赞等等; 行为上报时,需要保证事件发生的时间顺序,严格按照先有曝光,点击,再有转化, 否则系统会认为用户点击、转化行为行为无效。重要的字段:
Ø trace_id: 用户一系列行为的会话id。通过trace_id, 推荐系统可以串联用户行为。 trace_id的生命周期从曝光开始,依次在点击、转化、点赞等行为中传递。 下一次曝光需要生成新的trace_id;
协议如下所示:
{
'uid': '3496892xx',
'data_type': 2,
'bid': 'b_teg_openrecom_xxx',
'item_id': u '9787109061385',
'scene_id': u '538659',
'MD5': '8764084918781ab51493eaf43e6d0166',
'action_time': 1487905960,
'trace_id': u '1487905944',
'action_type': 2,
'request_id': '1487905960',
'uid_type': '0'
}
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。