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

AI 分析推送

TrendRadar 支持接入 AI 大语言模型,自动分析抓取到的热点新闻并生成洞察报告, 附加在推送消息中。开启后,你收到的不再只是新闻列表,而是带有深度分析的情报简报。
AI 三大功能一览
TrendRadar 提供三个独立的 AI 功能:分析(深度洞察报告)、筛选(智能分类替代关键词)、翻译(多语言标题翻译)。 三者共享同一个 ai 段的模型配置(api_key、model 等),可以任意组合启用,互不依赖。 翻译功能只翻译新闻标题,不会翻译 AI 分析报告的内容。
AI 分析推送效果

AI 分析的五个板块

AI 会从以下五个板块对你关注的热点新闻进行深度分析:
1. 核心热点与舆情态势(core_trends) :自动阅读所有命中关键词的热点新闻,提炼出当前最受关注的话题方向及舆情态势。
2. 舆论风向与争议(sentiment_controversy) :分析公众讨论的情绪走向、观点分布和争议焦点,帮你把握社会舆论动态。
3. 异动与弱信号(signals) :发现异常波动和初露端倪的弱信号,捕捉可能演变为重大事件的早期迹象。
4. RSS 深度洞察(rss_insights) :对 RSS 订阅源内容进行深度分析,提取有价值的信息和趋势。
5. 研判与策略建议(outlook_strategy) :综合研判热点事件的发展走向,提供应对策略和行动建议。

如何启用

启用 AI 分析需要配置以下三个必填项。推荐先在 config/config.yaml 中确认字段含义; Docker、GitHub Actions 等场景也可以使用环境变量覆盖,其中 GitHub Actions 应把密钥保存在 Secrets 中。
必填配置
config.yaml 字段环境变量覆盖示例值说明
config.yaml 字段
环境变量覆盖
示例值
说明
ai_analysis.enabledAI_ANALYSIS_ENABLEDtrue启用 AI 分析功能的总开关
ai.api_keyAI_API_KEYsk-xxxxxx你的 AI 服务 API Key
ai.modelAI_MODELopenai/deepseek-v4-flash模型标识(格式:提供商/模型名称)
以下片段仅用于说明字段位置,请在现有 config/config.yaml 的 ai 和 ai_analysis 段中逐项修改:
不要整段复制、覆盖或重复添加 ai 配置
请保留现有 config.yaml 的其他内容,只修改已经存在的对应字段。重复出现同名 YAML 段、缩进错误或覆盖整份文件,都可能导致配置失效或程序无法启动。
ai:
  model: "openai/deepseek-v4-flash"
  api_key: "sk-xxxxxx"
  api_base: "https://api.deepseek.com"
  timeout: 120
  temperature: 1.0
  max_tokens: 5000
  num_retries: 1
  fallback_models: []

ai_analysis:
  enabled: true
  language: "Chinese"
模型标识格式
ai.model(或 AI_MODEL)必须包含斜杠,写成 提供商前缀/模型 ID。前缀决定 LiteLLM 按哪种协议路由请求, 模型 ID 则必须与提供商或中转站实际接受的名称完全一致,不能只填控制台里的展示名称。

先选择接入方式

大多数中转站,以及不少模型厂商的官方 API,都提供 OpenAI 兼容接口。优先使用第一种写法, 只需知道接口实际接受的模型 ID、API Key 和基础地址,不必先到 LiteLLM 文档查供应商名。 只有兼容接口无法使用,或该服务必须依赖 LiteLLM 专用适配器时,才使用第二种供应商写法。
接入方式ai.model / AI_MODEL 示例备注
OpenAI 兼容接口(优先推荐)openai/<接口实际模型 ID>填写 api_base;适合大多数中转站和提供兼容接口的官方服务
LiteLLM 供应商模式(备用)<供应商前缀>/<模型 ID>兼容接口无法使用时,再去 LiteLLM Provider 文档查供应商前缀
Ollama(本地部署)ollama_chat/<本地模型名>设置 api_base;TrendRadar 中 api_key 需填任意非空占位值

接入配置示例

下面按四种实际场景组织配置。前两个标签页使用 DeepSeek 展示两种云端 API 写法, 本地 Ollama 与部署时的环境变量覆盖分别独立说明。
OpenAI 兼容接口
LiteLLM 供应商模式
本地 Ollama
环境变量 / Secrets
DeepSeek 示例
在模型 ID 前加 openai/,表示强制按 OpenAI Chat Completions 协议请求api_base。以下地址和模型 ID 来自 DeepSeek 官方 API 文档:
ai:
  model: "openai/deepseek-v4-flash"
  api_key: "<DeepSeek API Key>"
  api_base: "https://api.deepseek.com"
换成中转站时,只替换三个值
保留 openai/ 前缀,把后面的模型 ID、API Key 和 api_base 换成中转站给出的值。基础地址是否包含 /v1必须以中转站文档为准。DeepSeek 当前官方 Quick Start 使用 https://api.deepseek.com,同时也兼容 https://api.deepseek.com/v1;本文示例跟随当前官方写法。 两种地址都不要再追加 /chat/completions。

合作伙伴接入示例

以下是合作伙伴提供的可选模型服务接入方式,配置规则与上面的通用方式一致,可按实际需要选择。
火山引擎合作伙伴
火山方舟可通过 OpenAI 兼容接口或 LiteLLM 火山引擎供应商模式接入。两种方式都使用火山方舟 API Key:
接入方式ai.model / AI_MODELai.api_base / AI_API_BASE
接入方式
ai.model / AI_MODEL
ai.api_base / AI_API_BASE
OpenAI 兼容(推荐)openai/doubao-seed-2-1-pro-260628https://ark.cn-beijing.volces.com/api/v3
LiteLLM 火山引擎(备用)volcengine/doubao-seed-2-1-pro-260628留空(自动使用默认地址)
示例使用豆包 Seed 2.1 Pro。也可以将模型 ID 替换为控制台中的其它完整 ID,例如 deepseek-v4-flash-260425;使用自定义推理接入点时,替换为对应 Endpoint ID。 请填写火山方舟 API Key,不要填写 IAM Access Key / Secret Key。
首次使用只需完成两步
先开通需要的模型,再创建并复制火山方舟 API Key。
1. 开通模型2. 创建 API Key
更多官方资源(按需查看)
本接入指南由火山引擎赞助支持。合作说明与专属活动

可选配置

以下配置项均有合理的默认值,通常不需要修改。如果有特殊需求(例如使用代理、调整输出长度等), 可以按需设置。
可选配置项
配置字段默认值说明
配置字段
默认值
说明
ai.api_base空API 基础地址;是否包含 /v1 以服务商文档为准,不要追加 /chat/completions;可由 AI_API_BASE 覆盖
ai.temperature1.0采样温度(0-2);仅支持在 config.yaml 中调整
ai.max_tokens5000最大生成 token 数;设为 0 时不向提供商发送 max_tokens
ai.timeout120请求超时时间(秒),可由 AI_TIMEOUT 覆盖
ai.num_retries1请求失败后的重试次数;仅支持在 config.yaml 中调整
ai.fallback_models[]主模型失败后按顺序尝试的备用模型列表
ai_analysis 段配置项
以下配置项在 config.yaml 的 ai_analysis 段中设置,用于控制分析报告的内容和范围。
配置字段默认值说明
配置字段
默认值
说明
languageChinese分析报告的输出语言
max_news_for_analysis150参与分析的新闻数量上限(控制 token 成本)
include_rssfalse是否包含 RSS 内容进行分析
include_standalonetrue是否纳入独立展示区数据
include_rank_timelinetrue排名时间线详细程度(true=完整轨迹,false=简化格式更省 token)
模型自动降级(fallback_models)
你可以在 config.yaml 中配置 fallback_models 列表, 当主模型请求失败时,系统会自动按顺序尝试备用模型。当前实现会让备用模型共享同一组 api_key 和 api_base;使用中转站时可填写 ["openai/model-b", "openai/model-c"]。如果备用模型属于不同服务商且密钥不同, 应先通过同一个兼容网关统一访问,否则不能只靠这一份共享配置完成跨服务商切换。

推送模式

启用 AI 分析后,你可以选择推送消息中包含哪些内容:
both(新闻 + AI 分析)
only_analysis(仅 AI 分析)
推送消息中同时包含新闻列表和 AI 分析报告。这是默认模式,适合大多数用户。
push:
  mode: both    # 新闻列表 + AI 分析报告

分析模式

AI 分析支持四种模式,每种模式的分析范围不同。 在 timeline.yaml 中,每个时间段可以独立设置分析模式, 例如早间使用增量分析、晚间使用全天总结。
模式分析范围适用场景
模式
分析范围
适用场景
follow_report跟随本次推送内容自动跟随 report.mode 的值。例如 report.mode=daily 时 AI 分析全天数据,report.mode=incremental 时只分析新增内容
daily全天数据适合晚间总结,回顾全天热点趋势
current当前榜单快照分析此刻各平台的热门内容
incremental仅新增条目只分析自上次推送以来的新内容
# timeline.yaml 中为不同时间段设置不同分析模式
periods:
  morning:
    start: "08:00"
    end: "10:00"
    analysis: incremental    # 早间只分析新增内容

  evening:
    start: "19:00"
    end: "21:00"
    analysis: daily           # 晚间回顾全天热点

自定义分析提示词

AI 分析的风格和角度可以通过编辑提示词文件来调整。 修改 config/ai_analysis_prompt.txt 文件即可自定义 AI 的人设和分析风格。
提示词编辑建议
提示词文件格式说明
调试模式
如果分析结果不符合预期,可在 config.yaml 中设置 advanced.debug: true 开启调试模式,查看发送给 AI 的完整提示词和原始响应, 便于排查问题。
成本提示
AI 分析会消耗 API 调用额度。使用 DeepSeek 模型时,单次分析成本通常在 0.01 元以内。如果你对成本敏感,可以通过减少分析频率(例如只在晚间总结时启用)来控制开支。