|
@@ -112,22 +112,40 @@ def video_rank(df, now_date, now_h):
|
|
h_recall_df = df[(df['lastonehour_return'] >= 20) & (df['score'] >= 0.005)]
|
|
h_recall_df = df[(df['lastonehour_return'] >= 20) & (df['score'] >= 0.005)]
|
|
h_recall_videos = h_recall_df['videoid'].to_list()
|
|
h_recall_videos = h_recall_df['videoid'].to_list()
|
|
log_.info(f'h_recall videos count = {len(h_recall_videos)}')
|
|
log_.info(f'h_recall videos count = {len(h_recall_videos)}')
|
|
-
|
|
|
|
- # 去重合并
|
|
|
|
- final_videos = [int(item) for item in h_recall_videos]
|
|
|
|
- temp_videos = [int(video_id) for video_id, _ in initial_data if int(video_id) not in final_videos]
|
|
|
|
- final_videos = final_videos + temp_videos
|
|
|
|
- log_.info(f'final videos count = {len(final_videos)}')
|
|
|
|
-
|
|
|
|
- # 重新给定score
|
|
|
|
- final_data = {}
|
|
|
|
- for i, video_id in enumerate(final_videos):
|
|
|
|
- score = 100 - i * config_.ROV_SCORE_D
|
|
|
|
- final_data[video_id] = score
|
|
|
|
-
|
|
|
|
- # 存入对应的redis
|
|
|
|
- final_key_name = f"{config_.RECALL_KEY_NAME_PREFIX_BY_H}{datetime.datetime.strftime(now_date, '%Y%m%d')}.{now_h}"
|
|
|
|
- redis_helper.add_data_with_zset(key_name=final_key_name, data=final_data, expire_time=24 * 3600)
|
|
|
|
|
|
+ # 写入对应的redis
|
|
|
|
+ h_video_ids =[]
|
|
|
|
+ h_recall_result = {}
|
|
|
|
+ for video_id in h_recall_videos:
|
|
|
|
+ score = h_recall_df[h_recall_df['videoid'] == video_id]
|
|
|
|
+ h_recall_result[int(video_id)] = float(score)
|
|
|
|
+ h_video_ids.append(int(video_id))
|
|
|
|
+ h_recall_key_name = f"{config_.RECALL_KEY_NAME_PREFIX_BY_H}{datetime.datetime.strftime(now_date, '%Y%m%d')}.{now_h}"
|
|
|
|
+ redis_helper.add_data_with_zset(key_name=h_recall_key_name, data=h_recall_result, expire_time=24 * 3600)
|
|
|
|
+
|
|
|
|
+ # 去重更新rov模型结果,并另存为redis中
|
|
|
|
+ initial_data_dup = {}
|
|
|
|
+ for video_id, score in initial_data:
|
|
|
|
+ if int(video_id) not in h_video_ids:
|
|
|
|
+ initial_data_dup[int(video_id)] = score
|
|
|
|
+ initial_key_name = f"{config_.RECALL_KEY_NAME_PREFIX_DUP_H}{datetime.datetime.strftime(now_date, '%Y%m%d')}.{now_h}"
|
|
|
|
+ redis_helper.add_data_with_zset(key_name=initial_key_name, data=initial_data_dup, expire_time=24 * 3600)
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ # # 去重合并
|
|
|
|
+ # final_videos = [int(item) for item in h_recall_videos]
|
|
|
|
+ # temp_videos = [int(video_id) for video_id, _ in initial_data if int(video_id) not in final_videos]
|
|
|
|
+ # final_videos = final_videos + temp_videos
|
|
|
|
+ # log_.info(f'final videos count = {len(final_videos)}')
|
|
|
|
+ #
|
|
|
|
+ # # 重新给定score
|
|
|
|
+ # final_data = {}
|
|
|
|
+ # for i, video_id in enumerate(final_videos):
|
|
|
|
+ # score = 100 - i * config_.ROV_SCORE_D
|
|
|
|
+ # final_data[video_id] = score
|
|
|
|
+ #
|
|
|
|
+ # # 存入对应的redis
|
|
|
|
+ # final_key_name = f"{config_.RECALL_KEY_NAME_PREFIX_BY_H}{datetime.datetime.strftime(now_date, '%Y%m%d')}.{now_h}"
|
|
|
|
+ # redis_helper.add_data_with_zset(key_name=final_key_name, data=final_data, expire_time=24 * 3600)
|
|
|
|
|
|
|
|
|
|
def rank_by_h(now_date, now_h):
|
|
def rank_by_h(now_date, now_h):
|