feat: 素材选取评分注入随机噪声,降低成片查重率 #1620
Reference in New Issue
Block a user
Delete Branch "feat/asset-selection-random-noise"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
背景
smart_match 评分排序是确定性的:同一批素材每次生成,选出来的素材组合完全相同(13 条素材永远选评分最高的 4 条),导致成片素材组合层面重复率高。
改动
两条素材选取路径的排序键注入 0~20 分随机噪声:
clips.py):sorted_candidates排序键-score改为-(score + random.uniform(0, 20))plan_generator_service.py):_sort_assets_by_smart_score排序加噪声SCORE_RANDOM_NOISE_MAX = 20.0(smart_match.py,评分满分 100,噪声 20 分 ≈ 20%)行为
测试
🚀 预览环境已部署
a37e44a6aato90b5951a81CI全绿,自动审批通过。
CI全绿,自动审批通过。
代码审查结果 - PR #1620
⚠️ 问题(0个需要修改)
无
💡 建议(1个可选)
sorted函数的key中保留了原有的random.random()作为第三排序键。由于第一排序键中已注入了random.uniform噪声,理论上已经保证了随机性,第三层的random.random()显得冗余。虽然这不会导致功能错误,但移除它可以略微减少计算开销。不过,保留它能作为极端情况下的最终“决胜局”,也不算错误,可视作代码风格选择,不强求修改。✅ 格式检查通过 | ✅ 逻辑审查通过 | ✅ 性能无明显问题
🤖 由 AI 代码审查机器人自动生成 | 2026-09-01 17:32:46 | 模型:
🗑️ 预览环境已清理
PR #1620 已关闭或合并,对应的预览环境已被清理。