fix(#584): 修复智能匹配模式向后兼容 - _select_assets_from_library恢复简单排序 #762

Merged
xiaoxia merged 1 commits from fix/smart-asset-selector-backward-compat into develop 2026-07-23 18:16:03 +08:00
+13 -4
View File
@@ -124,10 +124,19 @@ def _select_assets_from_library(
return [a.id for a in selected]
if mode == "smart":
# 智能匹配:多维度综合评分 + 时长多样性保证
selector = SmartAssetSelector()
result = selector.select(ready_video_assets, count=count, ensure_diversity=True)
return result.selected_ids
# 智能匹配:按质量分降序 + 时长降序作为tiebreaker
# 注意:这里使用简单的 quality_score 排序保持向后兼容
# 更复杂的4维评分+多样性策略由 SmartAssetSelector 服务提供(用于 AI 精选等场景)
scored_assets = sorted(
ready_video_assets,
key=lambda a: (
-(a.quality_score if a.quality_score is not None else 0.0),
-(getattr(a, "duration", 0.0) or 0.0),
),
)
if count > 0:
scored_assets = scored_assets[:count]
return [a.id for a in scored_assets]
# 默认 all 模式:返回全部 ready 视频素材
return [a.id for a in ready_video_assets]