Files
MediaOrganizer/docs/adr/0019-ai-match-siblings-context.md
Shuery c1ed1795c2
CI / lint + test + build (push) Canceled after 0s
docs: 重写 README、新增项目报告与开发工具配置
- README 现代化重写:徽章区、特性一览、统一 GitHub 提示块格式、修正版本号与 AI 默认值
- 新增 docs/PROJECT_REPORT.md 学术项目报告(含许可证合规分析与死链修复记录)
- 收录 23 份 ADR 架构决策记录与 CONTEXT.md 领域术语表
- 新增开发配置:.editorconfig / .shellcheckrc / .markdownlint-cli2.jsonc
- .gitignore 补充 mo_map/、检查报告、编辑器临时文件
- 新增 config.example.json 配置模板(不含真实密钥)
2026-08-14 22:41:40 +08:00

1.5 KiB
Raw Permalink Blame History

match_entries 同目录上下文(siblings)

AI 匹配甄别此前只看单个文件(文件名/时长/分辨率 + TMDB 候选)——"这个 90 分钟文件是剧场版还是合集里的一集"这类判断依赖上下文:同目录还有 23 个 24 分钟文件 → 这是整季 BD,当前文件是剧场版;目录只有它一个 → 独立电影。决定:build_ai_input_json 构造 match_entries 时为每条待甄别文件附加 siblings——同目录其他视频文件名(≤20 个,排除自身,纯目录扫描零额外请求),并在 AI_BATCH_PROMPT 说明用法(目录持整季 BD → 剧集;电影时长文件混在剧集文件旁 → TMDB season 0 的剧场版;兄弟文件名透露发布组与整批编号方案)。

边界语义:① 仅文件名(不含路径/时长)——体积可控,且路径信息已由 file/directory 提供;② 上限 20 个防 prompt 膨胀(整季 BD 也在此限内);③ 与时长信号互补:时长回答"这个文件多长",siblings 回答"它和什么在一起";④ 零新请求(目录扫描本地完成);⑤ AI 仍只做判断(choice/season_shift),命名归脚本——siblings 只影响判断质量。

Considered Options: 整目录一次性映射(BAR 模式,AI 输出全量 file_mapping)——prompt 与输出契约大幅复杂化,且与我们"单文件判断 + 消费端重处理"流水线不兼容;不加(原状)——剧场版混 TV 场景只能靠时长猜,误判进 AI 兜底轮。