--- name: exec_summary_rows description: 仅在需要写入 process_trace.json 时,用于记录最终输出的每条视频的寻找过程 --- ## 目标 生成用于记录最终输出的每条视频的寻找过程的**summary_json** ## 强约束(必须遵守) 1. **视频选择**:只能对 `output.json.contents` 中出现的 `aweme_id` 生成 rows;不得输出任何不在 contents 的视频(包括淘汰候选/搜索过程中的视频)。 2. **rows 数量必须等于 contents 数量**:一条入选内容必须对应且仅对应一行 row。 3. **字段固定且统一**:每行 row 只允许包含下列 key(不得增删改名): - `aweme_id`:视频id - `title`:视频标题 - `author_nickname`:作者名称。 - `strategy_type`:寻找策略。"case出发" / "特征出发"。 - `from_case_aweme_id`:case出发策略关联的内容id - `from_case_point`: case出发策略 关联的灵感点。 - `from_feature`: 特征出发 关联的特征词。 - `search_keyword`: 搜索词,该内容从哪个搜索词来。 - `channel`:寻找方式 "抖音搜索" / "索引榜单搜索" / "垂类推荐流" / "订阅账号作品搜索" - `decision_basis`:筛选的方式 "基于case出发策略筛选" / "内容点赞用户画像" / "账号粉丝画像" / "其他" - `decision_notes`:筛选的理由 - `input_features`: Agent起始输入的特征词 4. **值使用中文枚举** 5. **input_features**:必须是 `list[str]`;默认从 `output.json.query` 按逗号拆分得到(兼容中文逗号)。 ## 依据 - `output.json`(必须读取并以 `contents` 为准) - `query`:用于 `input_features` 拆分 - `contents[]`:每条入选内容,含 `aweme_id/title/author_nickname/reason/portrait_data.source` 等 - `log.txt`:用于判断内容的 strategy_type(来自哪种策略)、from_case_point(来自哪个灵感点)、search_keyword(搜索词)与渠道等 ## summary_json输出格式(必须严格) 只输出一个 JSON 对象(不要 Markdown、不要解释、不要多余文本): ```json {"rows":[{...},{...}]} ```