背景与需求:为什么我们需要 TrendRadar?
在这个大数据算法横行的时代,我们每天被头条、抖音等平台投喂大量信息,不仅容易陷入信息茧房,还浪费了大量时间筛选有效资讯。
我的核心需求很简单:
- 拒绝算法绑架:需要一个个人定制化的新闻推送服务。
- 趋势追踪:能够按周期追踪特定领域的趋势和热点。
- AI 深度分析:不仅要看新闻,还要 AI 帮我总结、分析情感倾向,甚至通过对话深度探索。
TrendRadar 的核心价值:
- 零成本 AI 分析:支持接入免费的 NVIDIA 模型接口,体验信息提炼。
- 定制推送:定期推送到飞书、钉钉等即时通讯软件。
- MCP 协议支持:通过 Model Context Protocol (MCP) 协议,让 AI 工具(如 Cherry Studio)直接读取新闻数据库,进行深度对话分析。
1. 环境准备
在开始之前,请确保你拥有以下基础环境:
- 操作系统:Ubuntu 22.04(实体机或 VMware 虚拟机均可)。
- 网络环境:需要能够通畅访问 GitHub 和 Docker Hub(需配置网络代理)。
- 基础工具:Git, Docker, Docker Compose。
- AI 资源:大模型 API Key(推荐申请 NVIDIA 的免费 API,或者使用 DeepSeek、OpenAI)。
- 客户端工具:Cherry Studio(用于通过 MCP 与 AI 对话)。
2. 部署实战:关键步骤详解
2.1 下载代码仓
首先,将项目代码克隆到本地:
# 需要确保网络环境通畅
git clone https://github.com/sansan0/TrendRadar.git
2.2 启动 Docker 容器
⚠️ 避坑提示:官方文档中容易忽略的一点是,必须进入
docker子目录才能执行 compose 命令。
# 1. 进入项目 docker 目录
cd TrendRadar/docker
# 2. 拉取最新镜像(注意网络连接)
docker compose pull
# 3. 启动所有服务(trendradar 推送服务 + trendradar-mcp AI 分析服务)
docker compose up -d
3. 关键配置调整
默认配置通常只适合本机测试,为了在局域网访问以及更符合个人习惯,我们需要修改 docker/docker-compose.yml 和 config/config.yaml。
3.1 让 Web Server 支持局域网访问
默认情况下,Web Server 仅监听 127.0.0.1,导致局域网其他设备无法查看生成的 AI 新闻报告。
修改文件:docker/docker-compose.yml
修改内容:去掉 IP 限制,直接暴露端口。
# 修改前
ports:
- "127.0.0.1:${WEBSERVER_PORT:-8080}:${WEBSERVER_PORT:-8080}"
- "127.0.0.1:3333:3333"
# 修改后(允许局域网访问 Web 报告和 MCP 服务)
ports:
- "${WEBSERVER_PORT:-8080}:${WEBSERVER_PORT:-8080}"
- "3333:3333"
同时,在 docker/.env 中确保开启了 Web 服务:
ENABLE_WEBSERVER=true
3.2 配置新闻源与 AI 模型
修改文件:config/config.yaml
配置 AI 模型(以 NVIDIA 免费 API 为例):
💡 小技巧:NVIDIA 提供了许多免费的 API 端点(build.nvidia.com),兼容 OpenAI 格式。model 参数注意添加『openai/』头部。
ai:
# 格式:provider/model_name
# NVIDIA 提供的模型示例
model: "openai/minimaxai/minimax-m2.5"
# 你的 API Key
api_key: "nvapi-your_custom_api_key..."
# 关键:自定义 API 端点(NVIDIA 需要这个地址)
api_base: "https://integrate.api.nvidia.com/v1"
timeout: 120
temperature: 1.0
max_tokens: 131072
定制新闻源:根据自己的兴趣保留或删除平台(如只看 GitHub、掘金、华尔街见闻)。
platforms:
enabled: true
sources:
# 综合类
- id: "toutiao"
name: "今日头条"
- id: "baidu"
name: "百度热搜"
- id: "ifeng"
name: "凤凰网"
- id: "thepaper"
name: "澎湃新闻"
- id: "tencent-hot"
name: "腾讯新闻 综合早报"
# 财经投资
- id: "wallstreetcn-hot"
name: "华尔街见闻"
- id: "cls-hot"
name: "财联社热门"
- id: "gelonghui"
name: "格隆汇"
- id: "xueqiu"
name: "雪球"
- id: "jin10"
name: "金十数据"
- id: "fastbull"
name: "快讯通"
# 短视频、社区
- id: "zhihu"
name: "知乎"
- id: "bilibili-hot-search"
name: "bilibili 热搜"
- id: "douyin"
name: "抖音"
- id: "tieba"
name: "贴吧"
- id: "weibo"
name: "微博"
# 科技
- id: "github"
name: "GitHub"
- id: "hackernews"
name: "Hacker News"
- id: "juejin"
name: "掘金"
- id: "nowcoder"
name: "牛客网"
3.3 优化关键词匹配
修改文件:config/frequency_words.txt
建议使用正则表达式进行精准匹配,避免误报。例如:
[WORD_GROUPS] # ═══════════════════════════════════════════════════════════════ # 科技领域 # ═══════════════════════════════════════════════════════════════ # ▼ 优化:改用 /\bai\b/i,等价于原正则但更简洁规范,/i 负责忽略大小写,\b 负责边界 [AI 相关] /\bai\b/i 人工智能 大模型 神经网络 机器学习 /深度求索 | 幻方量化 | 梁文锋 | \bDeepSeek\b/ => DeepSeek /\bOpenAI\b|\bChatGPT\b|\bSora\b|\bDALL-E\b|\bSam Altman\b|\bGreg Brockman\b/i => OpenAI /\bAnthropic\b|\bClaude\b|\bDario Amodei\b/i => Claude [字节跳动] /字节 | 张一鸣 | 梁汝波 | 抖音 | \bByteDance\b|\bTikTok\b|\bDouyin\b|\bLark\b|\bCapCut\b/ @10 # ▼ 优化:补全主流国产大模型;加 /i 忽略大小写,统一去除大小写重复变体,补全 \b 边界 /通义千问 | \bqwen\b|\bminimax\b|智谱 | \bglm\b|月之暗面 | \bKimi\b|零一万物 | 阶跃星辰 | 混元 | 文心 | \bERNIE\b|豆包 | \bDoubao\b/i => 国产大模型 /自动驾驶 | 无人驾驶 | 智驾/ => 自动驾驶 [具身智能] 机器人 机器狗 机械臂 [芯片] 芯片 光刻机 半导体 内存 存储 显存 显卡 # ═══════════════════════════════════════════════════════════════ # 企业与品牌 # ═══════════════════════════════════════════════════════════════ /英伟达 | 黄仁勋 | \bNVIDIA\b|\bGeForce\b|\bRTX\b|\bCUDA\b|\bJensen Huang\b/i => 英伟达 /苏姿丰 | 锐龙 | 霄龙 | \bAMD\b|\bRyzen\b|\bEPYC\b|\bRadeon\b|\bLisa Su\b/i => AMD /机械狗 | 四足/ => 机器狗 /宇树 | 王兴兴 | \bUnitree\b/ => 宇树机器人 /智元 | 灵犀 | 稚晖君 | 彭志辉 | \bAgiBot\b/ => 智元机器人 /众擎 | \bEngineAI\b|赵同阳/ => 众擎机器人 /微软 | \bMicrosoft\b|\bWindows\b|\bAzure\b|\bSatya Nadella\b|\bCopilot\b/i => 微软 /谷歌 | 皮查伊 | 安卓 | 油管 | \bGoogle\b|\bAlphabet\b|\bAndroid\b|\bChrome\b|\bYouTube\b|\bGemini\b|\bDeepMind\b|\bWaymo\b/i => 谷歌 /库克 | \biPhone\b|\biPad\b|\bMacBook\b|\biOS\b|\bVision Pro\b|\bAirPods\b|\bApple\b|\bTim Cook\b/i => 苹果
3.4 推送配置
config/config.yaml 配置信息
notification:
enabled: true
channels:
feishu:
webhook_url: "https://open.feishu.cn/open-apis/bot/v2/hook/xxx***xxx"
飞书端操作步骤





3.5 Docker 全局配置
# 启动时开启 webserver 服务
ENABLE_WEBSERVER=true
# 开启 AI 分析
AI_ANALYSIS_ENABLED=true
# 每天 08:30 和 20:30 进行消息推送
CRON_SCHEDULE=30 8,20 * * *
# 运行模式:cron/once
RUN_MODE=cron
# 启动时立即执行一次
IMMEDIATE_RUN=true
4. 避坑指南:解决飞书推送 Markdown 不渲染问题
这是本次部署中最大的坑。默认代码在推送飞书消息时,使用的是 text 类型,导致飞书无法渲染 Markdown 语法(如 加粗、[链接]),体验极差。
问题现象:飞书收到的消息全是 **加粗** 这样的源码,没有格式。

原因分析:飞书 API 要求 Markdown 内容必须通过 interactive(卡片)类型的 lark_md 标签发送。
🛠️ 修复方案(代码修正):
我们需要修改 Python 源码。如果你使用 Docker 映射了代码目录,可以直接修改;否则需要进入容器修改。
修正 1:trendradar/notification/senders.py
找到 send_to_feishu 函数,将原来的 text 类型 payload 替换为 interactive 卡片类型。
# 修改前:
# payload = {
# "msg_type": "text",
# "content": {
# "text": batch_content,
# },
# }
# 修改后:
if is_flow_webhook:
# 兼容飞书捷径/自动化流程的 Webhook
payload = {"msg_type": "text", "content": {"text": batch_content}}
else:
# 标准飞书机器人 Webhook,使用卡片渲染 Markdown
payload = {
"msg_type": "interactive",
"card": {
"header": {
"title": {"tag": "plain_text", "content": "AI 热点推送"},
"template": "blue"
},
"elements": [{
"tag": "div",
"text": {"tag": "lark_md", "content": batch_content}
}]
}
}
注意:同样的逻辑也需要应用到
trendradar/notification/dispatcher.py和mcp_server/tools/notification.py中,确保所有推送入口(包括 RSS 更新通知和 MCP 工具调用)都能正确渲染 Markdown。
修正 2:docker/docker-compose.yml
volumes 中添加 - ../trendradar:/app/trendradar
Date: Mon Mar 2 15:34:40 2026 +0800 fixed: 飞书报告没有进行 markdown 渲染,显示的是源码,体验不好
diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml
index eb0e3192..269833b 100644
--- a/docker/docker-compose.yml
+++ b/docker/docker-compose.yml
@@ -5,11 +5,12 @@ services:
restart: unless-stopped
ports:
-${WEBSERVER_PORT:-8080}:${WEBSERVER_PORT:-8080}
volumes:
- ../config:/app/config:ro
- ../output:/app/output
+ - ../trendradar:/app/trendradar
environment:
- TZ=Asia/Shanghai
@@ -62,11 +63,12 @@ services:
restart: unless-stopped
ports:
-"3333:3333"
volumes:
- ../config:/app/config:ro
- ../output:/app/output
+ - ../trendradar:/app/trendradar
environment:
- TZ=Asia/Shanghai
5. 成果展示
5.1 飞书推送

5.2 Webserver

6. 进阶玩法:接入 Cherry Studio 进行 AI 对话
部署了 MCP 服务后,TrendRadar 就不再只是一个单向的推送工具,而是可以对话的知识库。
6.1 Server 端配置
确保在步骤 3.1 中已经开放了 3333 端口,且 docker-compose.yml 中包含了 trendradar-mcp 服务。
局域网地址示例:http://192.168.1.100:3333
6.2 Cherry Studio 客户端配置
- 添加模型服务:在设置中添加 NVIDIA 或其他兼容 OpenAI 的服务商,填入 API Key。
- 添加 MCP 服务器:
- 名称:TrendRadar MCP
- 类型:可流式传输的 HTTP (streamableHttp)
- URL:
http://192.168.xxx.xxx:3333/mcp(请替换为你部署机器的实际 IP)
6.3 效果展示
连接成功后,你可以在 Cherry Studio 中直接在这个 MCP 频道下提问:
Prompt: "我想了解 'AI' 这个话题,请依次完成以下步骤:搜索今天的相关新闻分析最近一周的热度趋势对比各平台的关注度分析最近一周的情感倾向 请展示每个步骤的完整结果。"
AI 将会自动调用 TrendRadar 的数据库,生成包含图表数据(如热度指数、情感占比、平台覆盖率)的专业分析报告。
# AI 话题分析与总结
## 🧑💻 User
我想了解'ai'这个话题,请依次完成以下步骤,并【展示每个步骤的完整结果】:
1. 搜索今天的相关新闻
2. 分析最近一周的热度趋势
3. 对比各平台的关注度
4. 分析最近一周的情感倾向
【重要】:请将 4 个步骤的结果全部展示出来,不要只展示最后一步。
---
## 🤖 Assistant
我来帮你完成关于"AI"话题的全面分析。让我依次执行 4 个步骤,并展示每个步骤的完整结果。
## 步骤 1:搜索今天的 AI 相关新闻
## 步骤 2:分析最近一周的热度趋势
## 步骤 3:对比各平台的关注度
## 步骤 4:分析最近一周的情感倾向
# AI 话题综合分析报告
根据 4 个步骤的完整分析结果,以下是关于"AI"话题的全面洞察:
---
## 📊 步骤 1:今天(2026-03-04)的 AI 相关新闻
**搜索结果概览**
- 总发现数:36 条
- 返回数量:20 条
- 搜索模式:关键词精确匹配
**今日热点新闻 TOP 10**
| 排名 | 新闻标题 | 平台 | 热度指数 |
|:---:|---------|------|:-------:|
| 1 | AI 可以让 WIFI 实现监控室内人体位置和姿态,无需摄像头? | 掘金 | 10 |
| 2 | 我做过的,被面试官夸爆的那些 Ai 项目 (一) | 牛客网 | 10 |
| 3 | 19 岁天才少年做 AI 应用年入 2 亿 | 今日头条/百度 | 8 |
| 4 | K-Dense-AI / claude-scientific-skills | GitHub | 8 |
| 5 | 春节后,有些公司明确要求 AI 经验了 | 掘金 | 8 |
| 6 | moeru-ai / airi | GitHub | 8 |
| 7 | CodebuffAI / codebuff | GitHub | 8 |
| 8 | 3.2 字节 AI 开发春招一面 | 牛客网 | 8 |
| 9 | 如何释放服务消费潜力?AI 发展会冲击就业岗位?委员这样看 | 澎湃新闻 | 5 |
| 10 | AI 加剧"电荒" 美国电网将迎史诗级扩建 750 亿美元聚焦"超高压"输电 | 财联社热门 | 6 |
**今日新闻特点**
- 技术类新闻占主导(GitHub 开源项目掘金技术文章)
- 就业/招聘类话题热度上升(春招、AI 岗位要求)
- 财经媒体关注 AI 对电网和能源的影响
- 社交媒体聚焦 AI 应用创收案例
---
## 📈 步骤 2:最近一周(2026-02-26 至 2026-03-04)热度趋势分析
**整体趋势数据**
- 总提及量:215 条
- 日均提及:30.71 条
- 峰值日期:2026-02-26(38 条)和 2026-03-02(38 条)
- 变化率:-5.26%
- 趋势方向:**稳定**
**每日热度分布**
| 日期 | 提及数 | 典型热点新闻 |
|:----:|:------:|------------|
| 02-26 | 38 | 韩女子用 AI 精密策划诱杀致 2 死 1 伤、中国 AI 调用量首次超过美国、汇丰逆市看多 AI |
| 02-27 | 30 | AI 挤崩电网引电价担忧、中国 AI 调用量首超美国、英伟达黄仁勋看好代理 AI |
| 02-28 | 24 | OpenAI 与国防部合作、多款 AI 开源项目发布 |
| 03-01 | 23 | Anthropic 供应链安全争议、多款 AI 项目迭代 |
| 03-02 | 38 | 多款 AI 开源项目发布、面试官谈 AI 岗招聘、技术文章井喷 |
| 03-03 | 26 | 投资专家谈 AI 浪潮下投资机遇 |
| 03-04 | 36 | 春招 AI 岗面试、AI 应用创收案例、能源影响讨论 |
**趋势洞察**
1. **周期性波动**:热度在周末(28-1 日)略降,工作日回升
2. **双重焦点**:技术进展与经济社会影响并重
3. **周末效应**:GitHub 项目发布主要集中在工作日
---
## 🏢 步骤 3:各平台 AI 话题关注度对比
**平台覆盖率排名**(AI 相关新闻占总新闻比例)
| 排名 | 平台 | AI 提及数 | 总新闻数 | 覆盖率 |
|:---:|------|:-------:|:-------:|:------:|
| 1 | **掘金** | 59 | 248 | **23.79%** |
| 2 | **GitHub** | 22 | 104 | **21.15%** |
| 3 | **牛客网** | 28 | 180 | **15.56%** |
| 4 | **华尔街见闻** | 14 | 95 | **14.74%** |
| 5 | **Hacker News** | 36 | 275 | **13.09%** |
| 6 | **财联社热门** | 10 | 137 | **7.30%** |
| 7 | **知乎** | 7 | 206 | **3.40%** |
| 8 | bilibili 热搜 | 9 | 297 | **3.03%** |
| 9 | 澎湃新闻 | 5 | 193 | **2.59%** |
| 10 | 腾讯新闻综合早报 | 5 | 108 | **4.63%** |
**各平台内容特点**
**技术主导型平台**
- **掘金**:技术教程、开源项目、AI 工具应用("AI"出现 40 次)
- **GitHub**:开源项目发布、AI 工具库("ai"出现 14 次,"claude"12 次)
- **Hacker News**:AI 技术讨论、行业趋势
**财经导向型平台**
- **华尔街见闻**:AI 投资机遇、英伟达动态、股价影响
- **财联社热门**:AI 对电网/能源的影响、企业财报
- **格隆汇**:AI 入口争夺战、行业发展
**求职招聘型平台**
- **牛客网**:AI 岗面试经验、面试题汇总、春招信息
- **今日头条/百度热搜**:AI 应用创收案例、社会热点
**社交讨论型平台**
- **知乎**:AI 发展反思、伦理讨论、后悔药话题
- **微博/抖音**:AI 娱乐应用、社会新闻
---
## 💭 步骤 4:最近一周情感倾向分析
基于 50 条代表性新闻标题的情感分析:
**情感分布统计**
| 情感类别 | 数量 | 占比 |
|---------|:---:|:---:|
| **正面** | 23 条 | **46%** |
| **负面** | 6 条 | **12%** |
| **中性** | 21 条 | **42%** |
**平台情感对比**
| 平台 | 正面 | 中性 | 负面 | 特点 |
|-----|:---:|:---:|:---:|------|
| **华尔街见闻** | 80% | 20% | 0% | 最乐观,聚焦投资机遇 |
| **今日头条** | 100% | 0% | 0% | 成功案例驱动 |
| **GitHub** | 17% | 83% | 0% | 技术导向,客观中立 |
| **Hacker News** | 80% | 20% | 0% | 技术创新积极讨论 |
| **牛客网** | 43% | 57% | 0% | 求职导向,务实中性 |
| **掘金** | 33% | 53% | 13% | 技术乐观,偶有警示 |
| **知乎** | 33% | 33% | 33% | 观点多元,正负均衡 |
| **微博** | 0% | 100% | 0% | 客观陈述,无明显倾向 |
| **财联社** | 0% | 100% | 0% | 中性报道能源影响 |
**整体情感趋势**
**主导情绪:谨慎乐观**
1. **积极信号**(占比 46%)
- 技术创新持续突破(Android 官方 AI 支持、Claude 工具链)
- 投资市场持续看好(汇丰逆市看多、英伟达积极展望)
- 就业市场有需求(春招 AI 岗、明确要求 AI 经验)
- 成功案例激励(19 岁年入 2 亿、字节面试)
2. **理性声音**(占比 42%)
- 技术社区客观报道进展
- 关注 AI 安全与伦理(Anthropic 供应链争议)
- 讨论 AI 对社会的影响
3. **担忧情绪**(占比 12%)
- AI 可能取代程序员("老板原话"类话题)
- AI 加剧电网压力、能源危机
- AI 代码质量与安全问题
- AI 内容输出的伦理风险
**典型样本**
**正面新闻样本**
1. "英伟达电话会:黄仁勋高呼代理 AI 拐点已至,'推理即收入'"
2. "19 岁天才少年做 AI 应用年入 2 亿"
3. "汇丰'逆市之言':软件将吞噬 AI,现在是抄底好时机"
4. "我用 Claude Code 搭了个四个 AI 的团队,居然真的能协作开发"
5. "解读 OpenAI 获千亿美元投资背后"
**负面新闻样本**
1. "警惕!AI 正在毁掉你的代码能力"
2. "我的网站被黑了:一天灌入 227 万条垃圾数据,AI 写的代码差点让我社死"
3. "老板原话:AI 要完全取代程序员了"
4. "AI 加剧'电荒' 美国电网将迎史诗级扩建"
5. "元宝向用户道歉,此前生成拜年海报中出现脏话"
---
## 🔍 综合洞察
### 关键发现
**1. AI 热度稳定但结构分化**
- 技术社区(掘金、GitHub)是 AI 话题的主阵地
- 财经媒体关注度上升,反映 AI 商业化进程加速
- 社交媒体热度相对较低,AI 尚未成为大众娱乐话题
**2. 情感基调:技术乐观 + 现实审慎**
- 专业人士普遍看好技术前景
- 普通用户和决策者保持理性观望
- 就业和能源问题是主要担忧点
**3. 平台生态差异显著**
- 技术平台:聚焦工具使用和技能提升
- 财经平台:关注投资机会和市场影响
- 求职平台:强调 AI 技能的重要性
- 社交平台:讨论社会影响和伦理问题
**4. 本周焦点事件**
- 中国 AI 调用量首超美国的里程碑意义
- 春招市场对 AI 能力的新要求
- AI 对能源消耗的基础设施影响
### 趋势预判
1. **短期**:AI 话题将保持稳定热度,春招季相关话题将持续升温
2. **中期**:随着更多 AI 应用落地,大众关注度有望提升
3. **长期**:AI 对就业市场和社会结构的影响将成为持续讨论焦点
7. 总结
通过本次本地部署,我们成功实现了:
- 数据自主:所有新闻数据存储在本地 SQLite/Docker 卷中。
- 体验升级:修复了飞书推送的渲染 bug,阅读体验大幅提升。
- 智能加持:利用免费的 NVIDIA 大模型实现了零成本的热点摘要。
- 深度交互:通过 MCP + Cherry Studio,把'看新闻'变成了'研判情报'。


