TrendRadarDocs项目来自sansansansan 个人项目与软件主页sandev.cc
首页文档社区企业合作个人支持致谢
  • 开始使用
    • 选择部署方式
    • 无服务器:GitHub Actions
    • 服务器 / NAS:Docker
    • 本机试用:本地运行
    • 配置内容与推送
  • 数据源配置
    • 平台配置
    • 自建热点源(AI 部署)
    • RSS 订阅配置
  • 内容筛选
    • 关键词配置
    • AI 智能筛选
  • 推送通知
    • 推送渠道
    • 推送模式
    • 调度系统
  • AI 增强
    • AI 分析推送
    • AI 多语言翻译
    • MCP 对话分析
    • MCP 提问指南
  • 数据与运维
    • 存储配置
    • 配置编辑器
    • 发布网页报告
    • 系统架构
  • 其他
    • 常见问题
  1. 文档
  2. /
  3. 内容筛选
  4. /
  5. AI 智能筛选
上一篇关键词配置下一篇推送渠道
© TrendRadar·GPL-3.0 License·官网·GitHub·by sansan

AI 智能筛选

AI 智能过滤是 TrendRadar 的高级筛选功能。 与传统的关键词匹配不同,你只需要用自然语言描述自己的兴趣, AI 就会自动理解并筛选出你真正关心的新闻。

工作原理

AI 智能过滤的工作流程分为四个步骤:
1
描述兴趣
在 config/ai_interests.txt 中用自然语言写下你关心的内容, 例如「我想看 AI 和新能源相关的新闻」。
2
AI 提取标签
AI 自动从你的描述中提取结构化的兴趣标签,用于后续的匹配评分。
3
批量评分
AI 将每条新闻与提取出的兴趣标签进行匹配,给出 0-1 的相关度评分。
4
阈值过滤
只有评分达到 min_score 阈值的新闻才会被推送, 低于阈值的新闻会被过滤掉。

如何启用

启用 AI 智能过滤只需要两步:编写兴趣描述文件,然后修改配置文件。

1. 编写兴趣描述

编辑 config/ai_interests.txt 文件,用自然语言描述你关心的内容。 不需要任何特殊语法,像写给朋友看的一段话就行。
ai_interests.txt 示例
我对以下领域感兴趣:

1. AI 技术发展动态,包括大模型、AI Agent、AI 应用落地
2. 电动汽车市场趋势,特别是特斯拉、比亚迪等头部品牌的动向
3. 中国重大政策变化,尤其是经济和科技政策
4. 半导体芯片行业的技术突破和产业链变动
语言不限
兴趣描述支持任意语言书写,中文、英文或混合都可以。AI 会自动理解你的意图。
标题质量要求
除了定义"想看什么",你还可以在 ai_interests.txt 末尾定义"不想看什么"。 例如添加"不要标题党"、"不要营销软文"等要求,AI 会综合考量,即使标题匹配了你的兴趣标签, 也会因为不符合质量要求而被降低评分或过滤。

2. 修改配置文件

在 config/config.yaml 中将过滤方式切换为 AI 模式, 并设置评分阈值:
filter:
  method: ai          # 切换为 AI 过滤(默认为 keyword 关键词过滤)

ai_filter:
  min_score: 0.7       # 最低评分阈值(0-1),低于此分数的新闻不推送
min_score 越高,过滤越严格,推送的新闻越少但相关度越高。 建议从 0.7 开始,根据实际推送效果再调整。
最终推送数量还受 report.mode 影响。incremental 模式只推送新增内容,current 只推送当前在榜的。
阈值范围效果适用场景
0.3-0.4宽松过滤,大部分新闻都会通过不想错过任何可能相关的内容
0.5-0.6适度过滤,保留明确相关的新闻大多数用户的推荐选择
0.7-0.8严格过滤,只保留高度相关的内容只想看最核心的消息
0.9-1.0极度严格,可能导致推送数量极少一般不建议设置这么高

核心特性

自动降级:AI 失败时回退到关键词过滤
如果 AI 服务出现故障(网络超时、API 限额耗尽等), 系统会自动回退到传统的关键词过滤模式,确保推送服务不中断。 恢复正常后,下次运行会自动切回 AI 过滤。
智能标签更新:按需重新分类
修改 ai_interests.txt 后,系统会智能判断变更幅度:
  • 小幅修改(如微调措辞):增量更新标签,不重新处理已分析的新闻
  • 大幅修改(如添加全新领域):完全重新提取标签并重新评分
这个机制避免了每次微调都消耗大量 API 调用。
按时间段定制:早间关键词,晚间 AI 过滤
在 timeline.yaml 中,每个时间段可以独立设置过滤方式。 例如早间使用快速的关键词过滤,晚间使用更精准的 AI 过滤:
periods:
  morning:
    start: "08:00"
    end: "10:00"
    filter: keyword       # 早间用关键词过滤,速度快

  evening:
    start: "19:00"
    end: "21:00"
    filter: ai            # 晚间用 AI 过滤,更精准
去重优化:已分析的新闻不重复处理
AI 过滤会记录已经评分过的新闻。下次运行时,只对新增的新闻调用 AI 评分, 已经分析过的新闻直接复用之前的评分结果。 这不仅加快了处理速度,也节省了 API 调用成本。

高级配置

以下配置项均有合理默认值,通常不需要修改。如需微调 AI 过滤的行为,可在 config.yaml 的 ai_filter 段中按需设置:
配置项默认值说明
batch_size200每批发送给 AI 的标题数
batch_interval2分批间隔(秒),避免请求过于密集
reclassify_threshold0.6全量重分类触发阈值(0~1),越低越倾向全量重分类(更准但更耗 token)
interests_file(默认)自定义兴趣描述文件名,放在 config/custom/ai/ 目录下。例如 "finance.txt" 则加载 config/custom/ai/finance.txt
相关全局配置
配置项默认值说明
filter.priority_sort_enabledtrueAI 模式下标签排序方式。true = 按兴趣描述中的定义顺序排序,false = 按匹配条数排序(多的在前)

模型配置

AI 智能过滤与 AI 分析推送共享模型配置。 如果你已经为 AI 分析配置了 AI_API_KEY 和 AI_MODEL, AI 过滤会直接复用,不需要重复配置。
一次配置,两处使用
在 config.yaml 的 ai 部分配置一次 api_key 和 model, AI 分析推送和 AI 智能过滤都会使用同一套配置。 详细的模型配置说明请参考「AI 分析推送」章节。

AI 过滤 vs 关键词过滤

两种过滤方式各有优势,你可以根据实际情况选择,也可以按时间段混合使用。
对比项关键词过滤(keyword)AI 过滤(ai)
配置方式编写关键词规则(支持正则、分组等高级语法)用自然语言描述兴趣,无需学习特殊语法
匹配精度精确匹配,但容易遗漏措辞不同的相关内容语义匹配,能理解同义词和上下文关联
速度毫秒级,几乎无延迟需要调用 API,有一定耗时
成本零成本消耗 API 调用额度(通常很少)
上手难度需要学习关键词语法(别名、正则、分组等)写几句话即可,零学习成本
选择建议
如果你不想花时间维护关键词列表,或者关注的话题经常变化,AI 过滤是更好的选择。如果你需要精确控制(例如只推送包含特定公司名的新闻),关键词过滤更合适。