Movie Finder
用于通过帧分析和两个 AI 的讨论,从 TikTok 视频中识别电影或剧集。所有工作文件(视频、帧、转录、结果)均通过 rclone 保存到 Google Drive —— 本地仅临时使用,之后会被清理。
用户可设置的参数(根据请求提问或推测)
| 参数 | 默认值 | 说明 |
|---|---|---|
| 帧数 | 10 | grab_frames.sh 的第二个参数 |
| 讨论模式 | per-gambar | 每帧 3 轮讨论(较重,10 帧约需 30 次讨论)。batch 模式 = 所有帧一次性 3 轮讨论(更节省,适用于大多数情况) |
| 轮数 | 3 | AI1 ↔ AI2 的交替回复对数 |
| rclone 远程路径 | gdrive:Linux-Server/movie-finder | 可通过环境变量 MF_REMOTE 覆盖 |
| 保留本地 | 0 | 第三个参数,1 = 同时在本地保存视频 |
流程
1. 下载 + 拆分帧
bash scripts/grab_frames.sh "<url_tiktok>" [num_frames] [keep_local]
- 输出 JSON 包含:
gdrive(目标文件夹)、frames_local(帧 jpg 路径)、duration_sec、video_size、scratch_dir。 - 脚本自动执行:下载 → 提取帧(跳过开头/结尾 10%)→ 上传到 gdrive → 删除本地视频。帧在会话期间保留在本地(你需要能够查看它们)。
- 下载失败(区域/年龄限制):告知用户,建议提供替代链接。
2. 查看所有帧
使用读取工具(图片)读取 frames_local 中的每个 jpg 文件。自行记录线索:服装、地点、演员、时代/胶片颗粒、屏幕上的文字、水印、摄影风格、片头字幕。
3. 两个 AI 的讨论(通过工具子代理,代理: general)
交替运行两个角色,类似 WhatsApp 聊天:
- 🕵️ AI 1 侦探 — 提示:分析帧的视觉(说明你看到的具体线索),猜测 1-3 个候选
标题 + 年份 + 理由,给出置信度。AI 1 必须直接读取帧文件(提供其路径)。 - 🔍 AI 2 怀疑者 — 提示:使用网络搜索工具验证每个候选(搜索
"<标题> <年份> 电影"+ 独特场景细节),用链接证据反驳或确认,可提议新的候选。
规则:
- 1 轮 = AI 1 分析 → AI 2 验证。默认为 3 轮。
- 在转录和回答中记录并显示每个 AI 使用的模型(示例标题:
🕵️ AI 1 — 侦探 [model: custom/auto])。从子代理元数据/配置中检查模型名称;如果两个角色使用相同模型,如实记录。也包含在diskusi.md和最终回答中。 per-gambar模式:对每个帧重复,始终包含上一轮转录 + 现有候选上下文,以便讨论连贯。去重:如果在不同帧中重复出现相同候选,只需 1 轮加强确认,无需完整的 3 轮。batch模式:在单次 3 轮讨论中发送所有帧(路径列表)。- 不要设置子代理的
model参数(使用默认值)。 - 建议限制每个子代理:AI 1 只分析(不需要工具),AI 2 专注于网络搜索。
4. 结论
整理:标题 + 年份 + 置信度(高/中/低)+ AI 2 提供的参考链接 + 如果未达成共识则注明。
对于剧集/电视剧,AI 2(最后一轮)必须尝试补充:
- 季 & 集:片段最可能来自哪一集(线索:已识别的场景/角色/服装 + 网络搜索“剧集指南”,每集梗概,TMDB 每集演职员表)。
- 剧集标题(如果有)。
- 精确到分钟:秒的剧集时长(格式
47:23),来自 IMDb(技术规范/剧集页面)或 TMDB —— 不是粗略估计。 - 如果无法确定具体剧集,明确写明“无法确定剧集” + 剧集时长即可。
- 额外奖励(尽力而为,标注“估算”):根据已识别的场景在剧集指南/梗概中的位置,估算片段在剧集中的时间戳位置。
对于电影:注明精确到 小时:分钟:秒 的电影时长(格式 1:52:47),来自 IMDb 技术规范/TMDB,而不是“±120 分钟”。
5. 保存结果到 gdrive(不创建新的本地文件)
- 完整转录 →
rclone rcat "<DEST>/diskusi.md"(聊天格式:emoji 🕵️/🔍,角色名称,回复内容)。 - 结论 →
rclone rcat "<DEST>/hasil.md"。
serail/hasil.md 模板(必须填写剧集详情):
# 识别结果 — Movie Finder
- 标题 / 类型 / 年份 / 平台 / 创建者 / 置信度
## 剧集详情
- 季 & 集 : S01E05(如果可以确定,否则“无法确定”)
- 剧集标题 : "Beautiful Billionaires"
- 剧集时长 : 47:23(分钟:秒,来自 IMDb/TMDB)
- 总剧集数 : 11(S1)
- 片段估计位置 : ±12:40 在剧集中(尽力而为,估算)
## 为何匹配
...主要证据...
## 参考链接
...链接...
对于电影:将“剧集详情”部分替换为“电影时长: 1:52:47(小时:分钟:秒)”。
6. 本地清理
rm -rf <scratch_dir>
7. 回答用户
回答顺序:如果是剧集,先说剧集详情 & 时长(季,集号,剧集标题,运行时长)或电影时长 + 简短的讨论要点总结 + 参考链接 + gdrive 文件夹位置 —— 然后把最终猜测(🎬 结果:标题/年份)放在最底部作为结尾。除非被要求,否则不要显示完整转录。
转录示例
🕵️ AI 1 — 侦探 [model: custom/auto]: 帧 3 显示 19 世纪英军制服... 候选: "1917" (2019), "The Northman" (2022)
🔍 AI 2 — 怀疑者 [model: custom/auto]: 我查一下... [网络搜索] "The Northman" 是维京时代,不匹配。"1917" 匹配:战壕战,一镜到底。已验证: [链接]