对于内容社区行业的客户,接入智能推荐平台需要准备 3 张数据表,具体字段需求参见下文“数据字段说明”:
用户表(user)
建议上传前做去重处理。user_id为用户唯一标识。
物品表(item)
此处指内容(doc),建议上传前做去重处理。doc_id为内容唯一标识。
行为表(behavior)
测试数据建议提供1-2周的数据,历史数据建议提供3个月以上数据,可同步的时间越长,效果往往会越好。
字段规范:
说明
建议尽可能多传字段,数据越丰富,预期推荐效果越好。
API传输数据类型规范:
注意
API对字段的校验规则:
如果因为类型校验失败,api会返回1001状态码,且在返回结果的errors字段中会有错误数据例子和错误原因说明。
字段名称 | 字段类型 | 字段等级 | 描述 | 字段作用 |
---|---|---|---|---|
user_id | string | 必选 | 用户id,不能包含中文 | user_id唯一标识一个用户,作用: |
age | string | 强烈建议 | 用户年龄或者年龄段 | 用作特征 |
city | string | 强烈建议 | 用户城市 | 用作特征 |
gender | string | 强烈建议 | 用户性别,例如:1:男性 2:女性 3:未知 | 用作特征 |
register_time | int32 | 强烈建议 | 用户注册时间戳,精确到秒,如1622476800 | 用作特征 |
tags | string | 强烈建议 | 用户标签,多个标签使用$##$分隔,如“标签1$##$标签2$##$标签3” | 用作特征 |
update_time | int32 | 强烈建议 | 用户信息更新时间戳,精确到秒,如1622476800 | 提供精确的字段更新时间,平台会根据此字段来判断是否做字段更新,如果该字段不准确则可能导致无法更新;如无法提供精确的更新时间,建议此字段传空。 |
area | string | 建议 | 用户所在商圈 | 用作特征 |
client_version | string | 建议 | 客户端版本 | 用作特征 |
country | string | 建议 | 用户国家 | 用作特征 |
device_id | string | 建议 | 设备标识 | |
device_model | string | 建议 | 设备型号,如HONER | 用作特征 |
district | string | 建议 | 用户所在区县 | 用作特征 |
id_type | string | 建议 | id类型,手机/邮箱/微信 等 | 用作特征 |
language | string | 建议 | 用户语言 | 用作特征 |
membership_level | string | 建议 | 用户会员等级 | 用作特征 |
network | string | 建议 | 网络类型,5G/WIFI | 用作特征 |
os | string | 建议 | 操作系统,如IOS,Android | 用作特征 |
os_version | string | 建议 | 设备操作系统版本 | 用作特征 |
last_login_time | int32 | 建议 | 用户最后一次登陆时间戳,精确到秒 | 用作特征和推荐策略 |
platform | string | 建议 | 平台,如APP,WAP,H5 | 用作特征 |
province | string | 建议 | 用户省份 | 用作特征 |
subscriber_type | string | 建议 | 订阅类型 | 用作特征 |
字段名称 | 字段类型 | 字段等级 | 描述 | 字段作用 |
---|---|---|---|---|
doc_id | string | 必选 | 内容id | doc_id唯一标识一个内容,作用: |
status | int32 | 必选 | 可推荐状态,0:不可推荐,1:可推荐 | 1)status=0的内容不会在推荐结果中出现 |
cate | string | 强烈建议 | 内容不同级类目之间用$##$分隔,且自左向右类目层级逐渐细化。类目值推荐全部传名称,举例如“美食分享$##$中餐”。某一段为空时直接传空字符串,如第二段为空, 则传“美食分享$##$”。 | 1)用作特征 |
cate_cnt | int32 | 强烈建议 | 内容类目层级数。cate_cnt必须等于len(cate.split('$##$')),用于校验cate数据。所有内容的分类体系应该一致,即对于所有内容来说,cate_cnt应该相同。(此字段即将弃用,不建议使用) | |
content | string | 强烈建议 | 正文内容,可以为空字符串 | 用作特征 |
copyright_end | int64 | 强烈建议 | 内容失效时间戳,精确到秒,如1622476800 | 时间在生效之前和失效之后的物品不可推 |
copyright_start | int64 | 强烈建议 | 内容生效时间戳,精确到秒,如1622476800 | 时间在生效之前和失效之后的物品不可推 |
create_time | int32 | 强烈建议 | 文章创建时间 | 用作特征 |
current_price | float | 强烈建议 | 物品现价 | 用作特征 |
doc_type | string | 强烈建议 | 内容类型,如video,small_video,doc,long_doc,short_doc,image。 | 1)用作特征 |
keyword | string | 强烈建议 | 关键词。多个关键词用英文逗号分割。 | 用作特征 |
pub_time | int32 | 强烈建议 | 内容发布时间戳,精确到秒,如1622476800 | 服务流会用到该字段进行召回过滤 |
tags | string | 强烈建议 | 内容标签,如"近期新闻",“时政热点”等,或者业务特有的。多值示例:“近期新闻$##$时政热点" | 用作特征 |
title | string | 强烈建议 | 内容标题 | 用作特征 |
update_time | int32 | 强烈建议 | 内容信息更新时间戳,精确到秒,如1622476800 | 提供精确的字段更新时间,平台会根据此字段来判断是否做字段更新,如果该字段不准确则可能导致无法更新;如无法提供精确的更新时间,建议此字段传空。 |
video_duration | int32 | 强烈建议 | 视频时长(单位为秒) | 用作特征 |
author_fans | string | 建议 | 作者粉丝数 | 用作特征 |
author_id | string | 建议 | 作者id。有相关类型的打散需求必传 | 1)用作特征 |
author_level | string | 建议 | 作者评级 | 用作特征 |
author_name | string | 建议 | 作者名 | 用作特征 |
chargeable | bool | 建议 | 是否收费。该字段已弃用,新项目不建议使用,存量项目仍可正常使用。 | 用作特征 |
collect_cnt | int32 | 建议 | 内容累计收藏次数 | 用作特征 |
collection | string | 建议 | 所属话题id | 用作特征 |
comment_cnt | int32 | 建议 | 内容累计评论次数 | 用作特征 |
description | string | 建议 | 物品描述 | 用作特征 |
detail_pic_num | int32 | 建议 | 详情页中的图片数量 | 用作特征 |
expire_time | int32 | 建议 | 内容过期时间戳,精确到秒,如1622476800(此字段即将弃用,建议使用copyright_end字段) | |
language | string | 建议 | 视频语言 | 用作特征 |
location_tag | string | 建议 | 地域tag | 用作特征 |
origin_price | float | 建议 | 物品原价/划线价 | 用作特征 |
pic_url | string | 建议 | 图片url,如果多张图,头图放在前面,使用$##$链接多个url | 用作特征 |
praise_cnt | int32 | 建议 | 内容累计点赞次数 | 用作特征 |
rating | string | 建议 | 内容评分。不同维度评分建议通过新增自定义字段区分。 | 用作特征 |
related_goods_ids | string | 建议 | 相关商品id,多个使用$##$来区分 | 用作特征,含义是内容详情页中描述/推销的商品集合。 |
sale_number | int32 | 建议 | 内容累积销量 | 用作特征 |
share_cnt | int32 | 建议 | 内容累计分享次数 | 用作特征 |
source_id | string | 建议 | 内容来源类型,如签约作者,自然up主 | 用作特征 |
topic_tag | string | 建议 | 所属话题tag | 用作特征 |
video_url | string | 建议 | 视频url。如果有多个,使用$##$链接多个url | 用作特征 |
字段名称 | 字段类型 | 字段等级 | 描述 | 字段作用 |
---|---|---|---|---|
bhv_time | int32 | 必选 | 行为发生时间戳,以秒为单位的unix timestamp,如1622476800,需要在当天时间分区内 | 作用: |
bhv_type | string | 必选 | 行为类型。不同行为的bhv_type值可以自定义。 | 作用: |
doc_id | string | 必选 | 内容id。用户行为和具体内容相关时此字段必传(如点击),用户行为和具体内容不相关时此字段留空(如搜索,或点击进入分类页)。 | 需要与候选表中的doc_id相匹配 |
scm | string | 必选 | scm主要用于标识行为产生自哪个合作方。如字节推荐接口返回的候选产生行为,scm可传bytedance,其他可传google、other等等。如无法区分其他合作方,历史数据中可传other,需要保证上线后字节推荐接口返回的候选产生的行为scm都传bytedance。 | 用于统计不同来源算法的效果 |
spm | string | 必选 | SPM(Super Position Model)全称超级位置模型,主要用于标识行为发生的位置。SPM位置编码由A/B/C/D四段构成,各分段分别代表 A:业务, B:页面, C:页面区块, D:区块内点位。段之间用$##$分隔,即A$##$B$##$C$##$D,spm各段建议传明文。某一段为空时直接传空字符串,如第二段为空, 则传“A$##$$##$C$##$D”。 | 作用: |
user_id | string | 必选 | 用户id | 登录用户需要与用户表中user_id一致;未登录用户建议使用device_id/imei填充user_id |
author_id | string | 强烈建议 | follow行为下,回传关注作者id | 用作特征 |
parent_doc_id | string | 强烈建议 | 进入详情页观看的内容的ID,该字段是生成详情页特征的必要字段 | 在相关推荐场景中,该字段用来注明行为发生于哪个内容的详情页中 |
query | string | 强烈建议 | 搜索query,在搜索行为或搜索结果页行为中传输 | 用作特征 |
request_id | string | 强烈建议 | 请求推荐接口时的request_id | 1)便于排查问题 |
stay_time | int32 | 强烈建议 | stay行为下,回传停留时长(单位为秒) | 优化目标=停留时长时使用 |
video_duration | int32 | 强烈建议 | 如果有视频,则回传视频的总时长(单位为秒) | |
video_play_time | int32 | 强烈建议 | 回传video_over事件的时候,回传的用户播放视频的总时长(真正播放的,拖动不算)(单位为秒) | |
area | string | 建议 | 用户发生行为的商圈 | 用作特征 |
city | string | 建议 | 用户发生行为的城市 | 用作特征 |
client_version | string | 建议 | 客户端版本 | 用作特征 |
country | string | 建议 | 用户发生行为的国家 | 用作特征 |
device_model | string | 建议 | 设备型号 | 用作特征 |
dislike_type | string | 建议 | 负反馈规则的维度。需要用到负反馈规则时,必须勾选并传输。例如,若不喜欢此内容,需同时过滤同一作者的其他内容,则传输author_id。需要用到多个属性做负反馈时,dislike行为分别传输多个dislike_type和dislike_value。 注意:1)当前doc_id不需要再填充到dislike_type,可直接用于负反馈规则;2)dislike_type必须为内容表中的字段,包括:doc_id, cate, doc_type, author_id, tags以及自定义字段;3)使用cate字段过滤时,必须指定到某一级,即:cate_1, cate_2...以此类推。 | 和dislike_value一起,作为负反馈规则的条件 |
dislike_value | string | 建议 | 负反馈规则的维度值,即dislike_type字段对应的字段值。需要用到负反馈规则时,必须勾选。例如,若不喜欢此内容,需同时过滤同一作者的其他内容,则传输author_id的值。若此字段不传,则默认使用当前doc对应的属性值过滤。 注意:1)使用tags字段过滤时,可以传输多个值(以$##$分隔),触发其中任意值的内容都视作触发负反馈规则;2)使用cate字段过滤时,传输dislike_type指定cate级别的值。 | 和dislike_type一起,作为负反馈规则的条件 |
district | string | 建议 | 用户发生行为的区县 | 用作特征 |
ipv4 | string | 建议 | ipv4地址 | 用作特征 |
ipv6 | string | 建议 | ipv6地址 | 用作特征 |
network | string | 建议 | 网络类型 | 用作特征 |
os | string | 建议 | 操作系统,如IOS,Android | 用作特征 |
os_version | string | 建议 | 设备操作系统版本 | 用作特征 |
platform | string | 建议 | 平台,如APP,WAP,H5 | 用作特征 |
province | string | 建议 | 用户发生行为的省份 | 用作特征 |
trace_id | string | 建议 | trace_id用于将用户的连续行为关联起来,例如用户曝光了某内容,并点击、查看了该内容,那么这一系列的行为可以用trace_id进行关联,将点击、查看事件归因到对应的曝光事件。此字段由客户侧生成。 | 后续平台支持trace_id用于归因 |
trans_data | string | 建议 | trans_data是个性化推荐请求api返回结果所携带的transData字段(详细作用可见api文档),用于追踪内容相关的所有行为,进行深入分析,提升推荐效果。 | 便于平台同学帮助客户分析优化点 |
内容社区行业支持以下18种模板行为,如需更多行为,可进行自定义,详见数据表定义。
bhv_type | 行为名称 | 说明 |
---|---|---|
exposure | 曝光 | 强烈建议传输 |
click | 点击 | 强烈建议传输 |
stay | 详情页停留 | 在退出详情页的时候触发 |
favorite | 收藏 | |
share | 分享 | |
follow | 关注 | |
comment | 评论 | |
search | 搜索 | 点击搜索按钮这个行为,bhv_type是search,这时候必填搜索的query,doc相关字段不填; 搜索结果页的点击、收藏等行为,bhv_type是click/favorite,通过spm标识来自搜索场景 |
praise | 点赞 | |
auto_play | 在列表页下的自动播放 | 在开始自动播放时触发 |
manual_paly | 在列表页下的手动播放 | 在开始手动播放时触发 |
video_over | 在列表页下的停止播放 | 在停止播放的时候触发,一个视频可能触发多次 |
cart | 加购物车 | |
click_cart | 点击购物车 | |
check | 详情页立即购买 | 点击“立即购买”的行为 |
order | 下单 | 提交订单(即建单)或者到了提交订单页面的行为 |
conversion | 购买成功 |
|
dislike | 不喜欢 |