最近我总是看到各种AI消息,搞得我有点迷茫:那么多新鲜事,真正值得我们点击的又有多少呢?各种模型、工具和企业案例混在一起,看得我眼花缭乱。于是,我决定开发一个小工具,简单明了地从几个固定来源收集资讯,用本地的Hermes根据我的阅读习惯筛选出一小部分内容,告诉我“发生了什么、为什么值得关注、还有哪些信息我不知道”。
这个小工具是用蓝耘元生代的 DeepSeek-v4.1-flash 实现的。我选用了GitHub上开源的TrendRadar作为数据采集的基础,再加上一些本地设置。整个过程,我都实际跑了一遍,下面我会分享一些关键的步骤和截图。

什么内容在这里
1. 结果展示:从50条中筛选出5条精华
最终的成果是一个本地的HTML日报,同时也有Markdown版本。页面上清晰标注了来源、发布时间和原文链接,还附上了每条信息的依据。

以上图展示了最终成果:左侧是5条精选内容,每条都有摘要、阅读理由和证据链接;右侧则展示了生成流程,并列出了17条未入选理由。这样,读者不仅能看到结果,还能清楚筛选依据。
在这个日报中,我记录了一些关键数字,这些数据可以在output/candidates.json 和 output/validation.json中验证:
| 环节 | 实测结果 |
|---|---|
| 公开RSS来源 | 3个,全部成功采集 |
| 原始条目数量 | 50条 |
| 近七天有效候选 | 22条 |
| 因时间窗排除 | 28条 |
| Hermes入选条目 | 5条 |
| 未入选候选理由 | 17条 |
这里的“日报”只是今天生成的一份阅读清单,回顾的窗口是近七天。它并不意味着每条信息都是新发布的,也不是全网热度榜。
最终入选的内容包括Copilot模型变更提醒、代码评审更新、一个模型应用案例、模型异常行为报告框架,以及Agent CLI的用量观察。你可能不一定同意我的选择,但能看到它们的筛选依据,能更好调整成自己的偏好。
2. 为什么这样做
Agent和Skill非常适合处理这类有清晰输入、操作步骤和交付成果的小任务。为了让这个组合更有意义,我把三个部分的任务明确分开:
公开 RSS ↓ TrendRadar:采集、解析、SQLite存档 ↓ 本地适配脚本:日期规范化、时间过滤、URL去重、候选ID ↓ Hermes + ai-daily-brief Skill ↓ 调用蓝耘元生代 deepseek-v4.1-flash 筛选、中文摘要、阅读理由、证据边界 ↓ 本地校验与渲染 → daily.html + daily.md
蓝耘元生代负责模型推理服务。在模型广场上,我能直接找到目标模型,页面上有调用入口、API示例和价格。这次我没在本地下载推理模型或配置GPU,Hermes负责运行工具,云端的模型推理则由蓝耘处理。
而Hermes则负责执行和内容决策。它读取本地Skill,运行采集脚本,处理候选数据,记录筛选结果,然后调用渲染命令。蓝耘的模型不仅仅是在配置表里,而是在整个工具调用和内容生成中扮演了重要角色。
TrendRadar则是已具备的采集能力,它提供RSS、存储和报告流程。我复用了这些功能,而没有重新编写RSS解析器。虽然TrendRadar自带AI功能,但这次我把AI分析、翻译和通知功能关闭了,让Hermes负责筛选,这样更能看清楚模型的实际参与情况。
这并不是说加上Hermes就一定比单独使用TrendRadar更好。如果你只是想按关键词查看新闻,TrendRadar的报告可能已经足够了。我选择Hermes,是为了把阅读偏好、证据约束和交付步骤写成可以重复使用的本地Skill。
这个项目来自sansan0/TrendRadar。我固定了提交792bcc3928b1617bba09df34989fd5675c159b86,对应项目版本6.10.0,它不是一个“新鲜出炉”的项目;而是把新的模型和Agent工作流结合起来的尝试。
3. 在蓝耘找到模型并配置到Hermes
3.1 模型名称和价格确认
打开蓝耘元生代模型广场,搜索deepseek-v4.1-flash,进入详情页。

当时页面显示的价格是:输入2元/百万Token,缓存命中输入0.04元/百万Token,输出8元/百万Token。这个价格是我实测时的记录,不同渠道的报价可能会有所不同。
在API KEY管理中创建本次使用的Key,备注填写为“Hermes个人AI日报”,方便以后识别。记得把完整凭证放在本机,不要直接写进文章或项目代码;截图中的Key保持遮蔽。

创建后,列表中会出现这条Key,状态为“使用中”,接下来要把它填入Hermes的API Key输入框。

这里的“使用中”说明Key处于启用状态,但是否能完成模型请求,还要通过后续的实际调用来验证。
3.2 Endpoint不要多填一段路径
蓝耘的OpenAI兼容调用文档提供的完整请求地址是:
POST https://maas-api.lanyun.net/v1/chat/completions
而Hermes的Endpoint URL只需要填基础地址:
https://maas-api.lanyun.net/v1
这两者不要混淆。客户端会自动处理具体接口路径。如果把完整的/chat/completions填进去,可能会导致错误的URL拼接。

文档里给出了请求地址、API Key鉴权方法,以及model、stream等字段说明。在复现时,应该用自己选中的模型ID填写model,不要直接照搬文档中的其他模型示例。
3.3 用独立Profile保存配置
我在Hermes中创建了lanyun-daily Profile,避免把此次实测设置混入原有会话。然后进入设置 → 提供者 → 自定义Endpoint,填写:
| 字段 | 本次填写 |
|---|---|
| Name | 蓝耘元生代 |
| Provider ID | lanyun |
| Endpoint URL | https://maas-api.lanyun.net/v1 |
| Default Model | deepseek-v4.1-flash |
| API Key | 自己填写刚创建的Key |
| Use for new chats | 开启 |
| Discover models | 本次关闭,直接指定模型 |

上图是填写前的状态:Custom Endpoints数量为0,模型名称与蓝耘模型广场一致。检查基础地址和模型ID后点击保存,确认列表中出现蓝耘配置。

保存后,Custom Endpoints数量变为1,蓝耘配置显示为Active,Key以环境变量引用形式显示。这证明配置已保存并选中,但是否能成功调用工具仍需后续验证。我的桌面端显示版本为v0.21.2 (+4736),其他版本菜单位置可能有所变化。
接下来创建一个“蓝耘AI日报”项目,工作目录指向新建的hermes-ai-daily文件夹。

在新项目中设置名称、选择项目文件夹,并在Idea中明确目标:通过蓝耘模型驱动Hermes,读取本地Skill,基于TrendRadar的公开资讯生成带来源的个人AI日报。这样会话就有了明确的工作目录和交付目标。
我先做个小的工具调用验证,没直接问“你好”,而是让模型执行pwd,读取项目中的vendor/TrendRadar/pyproject.toml,报告路径、版本和Python要求。

它成功返回了正确的工作目录、TrendRadar版本6.10.0和Python要求>=3.12。这一步验证了“模型能回答,并能通过Hermes调用本地工具”,比单纯保存成功更能接近后续任务的实际需求。
4. 准备项目:理清数据链路
这次我的环境是macOS arm64,Python版本为3.12.14。使用上游锁文件安装依赖,避免教程读者在之后重跑时遇到不同的环境问题。接下来,我会分享如何确保项目的稳定性和可复用性。







