|
|
@@ -639,10 +639,10 @@ public class ContentPlatformPlanServiceImpl implements ContentPlatformPlanServic
|
|
|
private static final String MATCH_METHOD_PRIOR_SCENE = "场景已看视频";
|
|
|
/** match_method 取值,prior / posterior 池识别用 */
|
|
|
private static final String MATCH_METHOD_PRIOR = "视频库_解构特征_向量相似匹配";
|
|
|
- /** prior/posterior 池视频近 7 日 rov 下限(质量过滤):0.02 在 prior 池 0513 全量保留 ~41%,
|
|
|
- * cdjh 优质相似 0514 验证保留 ~54%,量大有意义;
|
|
|
- * priorScene 池基数小(单 channel 几十~百条),仍保持 >0(在 groupAndTopK 内兜底)。 */
|
|
|
- private static final double DEMAND_MIN_ROV = 0.02;
|
|
|
+ /** prior/posterior 池视频近 7 日 rov 下限(质量过滤):统一与 priorScene sceneSumRov 一致,0.03。 */
|
|
|
+ private static final double DEMAND_MIN_ROV = 0.03;
|
|
|
+ /** priorScene 池(场景已看视频)的 sceneSumRov 下限(质量过滤):与 rov 下限同口径 0.03。 */
|
|
|
+ private static final double PRIOR_SCENE_MIN_SUM_ROV = 0.03;
|
|
|
/** channel_name 映射:企微/小程序 type 直推,公众号入口按 ghName 反查 demand 表(见 resolveChannelName)。 */
|
|
|
private static final String CHANNEL_NAME_QW = "群/企微合作-稳定";
|
|
|
private static final String CHANNEL_NAME_XCX = "小程序投流-稳定";
|
|
|
@@ -1031,10 +1031,11 @@ public class ContentPlatformPlanServiceImpl implements ContentPlatformPlanServic
|
|
|
if (r.getVideoId() == null) continue;
|
|
|
bestPerVideo.putIfAbsent(r.getVideoId(), r);
|
|
|
}
|
|
|
- // 2. 过滤 rov<=0/null
|
|
|
+ // 2. 过滤 rov<=0/null,以及 sceneSumRov < PRIOR_SCENE_MIN_SUM_ROV(场景关联弱视频砍掉)
|
|
|
List<ContentPlatformDemandVideo> filtered = new ArrayList<>(bestPerVideo.size());
|
|
|
for (ContentPlatformDemandVideo r : bestPerVideo.values()) {
|
|
|
if (r.getRov() == null || r.getRov() <= 0) continue;
|
|
|
+ if (r.getSceneSumRov() == null || r.getSceneSumRov() < PRIOR_SCENE_MIN_SUM_ROV) continue;
|
|
|
filtered.add(r);
|
|
|
}
|
|
|
// 3. 按 sceneSumRov DESC 排序,次级 total_rov DESC
|
|
|
@@ -1174,7 +1175,7 @@ public class ContentPlatformPlanServiceImpl implements ContentPlatformPlanServic
|
|
|
dt, channelName, null, DEMAND_STRATEGY_POSTERIOR, null, null, null, ghName, null, category, MATCH_METHOD_PRIOR, crowdPackage, fetchLimit, true);
|
|
|
}
|
|
|
|
|
|
- // 近 7 日 rov 下限,与 prior 池一致(cdjh 0514 验证 ≥0.02 保留 ~54%)
|
|
|
+ // 近 7 日 rov 下限,与 prior 池一致(DEMAND_MIN_ROV,统一到 0.03)
|
|
|
rows = rows.stream()
|
|
|
.filter(r -> r.getRov() != null && r.getRov() >= DEMAND_MIN_ROV)
|
|
|
.collect(Collectors.toList());
|
|
|
@@ -2023,13 +2024,13 @@ public class ContentPlatformPlanServiceImpl implements ContentPlatformPlanServic
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 搜索:在当前入口的 demand 白名单(rov >= 0.02)内做 title LIKE 关键字命中,按 rov DESC 排序。
|
|
|
+ * 搜索:在当前入口的 demand 白名单(rov >= 0.03)内做 title LIKE 关键字命中,按 rov DESC 排序。
|
|
|
* 门控:
|
|
|
* - 用户身份 type ∈ {2 自营, 3 代理},否则返回空
|
|
|
* - 渠道 ∈ {小程序投流-稳定, 公众号投流-稳定},否则返回空
|
|
|
* - 小程序投流必填 crowdPackage,公众号投流必填 ghName,否则返回空
|
|
|
* 流程:
|
|
|
- * 1. demand 白名单(channel + crowdSegment/channelLevel3 + demand_strategy IN (人群需求,优质相似) + rov>=0.02)
|
|
|
+ * 1. demand 白名单(channel + crowdSegment/channelLevel3 + demand_strategy IN (人群需求,优质相似) + rov>=0.03)
|
|
|
* SQL 已 ORDER BY rov DESC, id ASC
|
|
|
* 2. 同 video_id 去重:putIfAbsent 取 max rov 代表行 —— 与搜索 rov DESC 排序对齐,
|
|
|
* 与 priorScene 池(取 max sceneSumRov 代表行)有意区别;同 dt 内稳定,跨 dt 重灌可能换代表行。
|