|
|
@@ -0,0 +1,103 @@
|
|
|
+---
|
|
|
+name: article_filter_strategy
|
|
|
+description: 文章过滤与筛选策略(老年人兴趣向)
|
|
|
+---
|
|
|
+
|
|
|
+# 文章过滤与筛选策略(老年人兴趣向)
|
|
|
+
|
|
|
+## 目标
|
|
|
+
|
|
|
+在 `article_finding_strategy` 拿到候选文章后,调用 `fetch_article_detail` 获取详情,筛选出更适合老年人、且老年人更感兴趣的内容,输出可直接使用的高质量文章集合。
|
|
|
+
|
|
|
+---
|
|
|
+
|
|
|
+## 输入与输出
|
|
|
+
|
|
|
+### 输入
|
|
|
+- `input_query`(用户原始需求)
|
|
|
+- 候选文章列表(至少包含 `url`、`title`、`statistics.time`)
|
|
|
+- 目标数量 **M**
|
|
|
+
|
|
|
+### 输出
|
|
|
+- 通过筛选的文章列表(最多 M 条)
|
|
|
+- 每条保留:`title`、`url`、`publish_time`、`reason`(入选原因)
|
|
|
+- 可选附加:`score`(用于内部排序)
|
|
|
+
|
|
|
+---
|
|
|
+
|
|
|
+## 工具使用规则
|
|
|
+
|
|
|
+### 必用工具
|
|
|
+- `fetch_article_detail`:用于查询文章详情(正文、摘要、标签、互动信息等)
|
|
|
+
|
|
|
+### 调用顺序
|
|
|
+1. 先基于候选列表做初筛(去重、基础质量过滤)
|
|
|
+2. 对初筛后的文章逐条调用 `fetch_article_detail`
|
|
|
+3. 根据详情做老年人兴趣打分与淘汰
|
|
|
+4. 按得分排序,输出前 M 条
|
|
|
+
|
|
|
+---
|
|
|
+
|
|
|
+## 筛选框架(老年人导向)
|
|
|
+
|
|
|
+采用三阶段筛选:**相关性判断** + **硬性淘汰** + **兴趣评分**。
|
|
|
+
|
|
|
+### 一、相关性判断(与 `input_query` 对齐)
|
|
|
+
|
|
|
+先判断文章与用户需求是否相关,再进入后续评分。
|
|
|
+
|
|
|
+- **核心意图匹配**:文章是否回答了 `input_query` 的主要问题
|
|
|
+- **关键信息匹配**:主题、对象、人群、场景是否与 query 一致
|
|
|
+- **偏题惩罚**:仅关键词相似但实际内容跑题,判定为低相关
|
|
|
+
|
|
|
+建议先按高/中/低分档:
|
|
|
+- 高相关:直接围绕 query 展开,信息可直接用于需求
|
|
|
+- 中相关:部分覆盖 query,需要用户二次判断
|
|
|
+- 低相关:偏题或仅弱关联,优先淘汰
|
|
|
+
|
|
|
+### 二、硬性淘汰(任一命中即排除)
|
|
|
+- 内容明显低俗、猎奇惊悚、过度煽动情绪
|
|
|
+- 医疗健康类但存在明显不实或夸大表述
|
|
|
+- 标题党严重、正文信息密度极低
|
|
|
+- 与用户主题完全无关
|
|
|
+
|
|
|
+### 三、兴趣评分(建议维度)
|
|
|
+- **需求价值(query-driven)**:是否真正解决 `input_query`,并给出可执行、可理解的信息
|
|
|
+- **可读性**:结构清晰、语言直白、专业术语少
|
|
|
+- **可信度**:来源可靠、论述相对客观、有明确依据
|
|
|
+- **情感适配**:积极稳健,不过度制造焦虑
|
|
|
+- **时效性**:在可接受时间范围内(避免过旧信息误导)
|
|
|
+
|
|
|
+> 说明:先用相对评分即可(高/中/低),后续再细化成数值阈值。
|
|
|
+> 价值判断不再限定固定品类,而是以 `input_query` 为核心做动态匹配。
|
|
|
+
|
|
|
+---
|
|
|
+
|
|
|
+## 结果数量控制
|
|
|
+
|
|
|
+- 若通过数 **C >= M**:按评分取前 M 条输出
|
|
|
+- 若 **M × 0.8 <= C < M**:输出当前结果并标注“数量接近目标”
|
|
|
+- 若 **C < M × 0.8**:返回上游继续补充候选,再进入本流程
|
|
|
+
|
|
|
+---
|
|
|
+
|
|
|
+## 数据真实性与一致性
|
|
|
+
|
|
|
+- 仅使用工具返回数据,不编造字段
|
|
|
+- `title`、`url`、`publish_time` 必须来自同一条记录
|
|
|
+- `reason` 必须基于可验证内容生成(例如“涉及防诈骗案例且表达清晰”)
|
|
|
+
|
|
|
+---
|
|
|
+
|
|
|
+## 输出建议格式
|
|
|
+
|
|
|
+```json
|
|
|
+[
|
|
|
+ {
|
|
|
+ "title": "文章标题",
|
|
|
+ "url": "完整链接",
|
|
|
+ "publish_time": 1710000000,
|
|
|
+ "reason": "适合老年人阅读:主题实用、表达清晰、信息可信"
|
|
|
+ }
|
|
|
+]
|
|
|
+```
|