一、先拆口播:视频没给仓库名,这才是它最大的「坑」
这条视频介绍的 AIHOT(demo 域 aihot.news)是一个「自己找热点、自己写日报的网站框架」——把 Claude Code / Codex 当成你的运营:把信源和精选标准换成你自己行业的 KnowHow,它就变成你专属的行业热点站。口播点了五步能力:采信源 → 筛热点 → 写日报 → 聚簇排热度 → 出刊。它主打的不是「又一个 AI 新闻站」,而是把「曾经只有少数人能搭的能力」开放给金融、医疗、法律、政府、教育这些垂直行业的普通人。但视频口播本身有两个必须纠正的地方,我都实查了:
- 视频没给 GitHub 仓库名(只给了 demo 域 + 技术栈),要自己搜
aihot才找得到 —— 真仓是 KKKKhazix/AIHOT(作者「数字生命卡兹克」,MIT,2026-09-30 实查 2,834 星 / 890 fork); - demo 域
aihot.news今天(09-30)我 curl 拿的是403 Forbidden,不是 200。站可能加了反爬 / 访问限制,或临时下线——引用「在线 demo」前先自己探一下状态,别照视频里「点开就能看」的预期写进你的文案。
二、核心数字(以仓库 README + 源码实查为准)
截至 2026-09-30 实查 main 分支:Node.js 24 · TypeScript · React Router(服务端渲染)· Fastify · PostgreSQL · pg-boss(队列)· Tailwind · Docker Compose——比视频口播的「Node.js 24 / PostgreSQL 17 / Docker」多了 React Router SSR 和 pg-boss 两条。仓库自带 18 个公开的海外 AI 资讯源做示范(够跑起来看效果),但不带你自己行业的信源名单和运营数据(作者明说这是「火种」,行业 KnowHow 你自己填)。industry/ 目录是所有可定制点的集合:信源(sources.json)、六步流水线提示词(prompts/,25 个 .md)、评分门槛(selection.ts)、可选模块开关(features.ts)、品牌与页面(brand/ · pages/)——改行业基本不动代码,只动 industry/ 一个文件夹。
三、读源码才写得出的机制:它不是「让 LLM 随便挑」
视频口播说「筛选热点」,听起来像让 LLM 自由发挥。读源码发现它其实是一套三层防污染评分,这是它最有价值的地方,也是 README 里没展开讲清楚的机制:
第一层 · 双次独立评分(反自我强化)。每篇资料由评分模型独立打两次分(0–100),两次之和 ≥ 2×门槛才进精选,卡片上显示两次平均分。源码 industry/selection.ts 原文:「每篇资料由评分模型独立打两次分(0–100),两次之和 ≥ 2 × 门槛才进精选」。为什么打两次?防单次 LLM 幻觉把一篇普通稿打高分——两次独立采样,一次高一次低,就过不了门槛。
第二层 · 门槛按信源分级(反来源污染)。SELECTION.thresholds = { T1: 60, T1_5: 65, T2: 76 }——官方一手源(T1)门槛 60、官方账号/准官方(T1.5)65、媒体与个人(T2)76。同一篇内容,来自官网比来自自媒体更容易入选,因为「同一件事」在 T2 源上噪声更高。还有 understandFloor: 50:没进精选但平均分 ≥50 的,也走「内容理解」那套更贵的写作 pipeline,其余走便宜的「标题摘要翻译」。这是典型的成本分层。
第三层 · 评分 prompt 故意藏来源身份(反「大厂光环」)。读 industry/prompts/selection-score.md 原文:「输入故意不提供 T1、T1.5、T2、来源名称、一手性、旧模型分数或精选门槛。不要猜这些信息,也不要把大厂、名校、长正文、术语、数字很多或 SOTA 当成自动加分项。」——评分模型看不到这条来自 OpenAI 还是自媒体,只按事件本身的注意力价值打 0–100。这是防「品牌光环污染评分」的关键设计,也是很多「LLM 热点筛选」项目做不到的点。
热度榜 · 按事件不按文章,带 48h 窗口 + 24h 半衰期(反刷量)。读 packages/backend/src/events/hot.ts:注释第一行就写着 heat-v1-48h-halflife24h——「每个独立参与者在窗口内只算一次(重复抓取不加热度),24 小时半衰期衰减,用来源时间(不是抓取时间)把证据放进窗口」。也就是说,一家媒体同一篇稿发十遍、或者你的爬虫一天抓十次,都只算一次热度;越新的证据权重越高。这是「反刷量」的核心,也是它和「按文章数排序」的朴素热点榜的本质区别。
聚簇 · 事件不是文章(反重复报道刷屏)。events/ 目录下有 group.ts(批量聚簇)、pair.ts(两两判定是否同一事件)、relate.ts(后续进展归属)、merge.ts(拿不准时换一家模型再确认一遍)、digest.ts(事件综述)。五条源头的报道,读者只会看到一个事件 + 一篇综述,后续进展挂在同一事件下。这是「热点站」区别于「新闻聚合站」的根本——后者是「N 篇报道」,前者是「1 件事」。
四、六步流水线 + 行业定制(README 实查)
一条资料从信源进来走六步:① 采集 → ② 判重 → ③ 预筛(prefilter.md)→ ④ 两次独立评分 → ⑤ 写作(summarize-*.md 7 个 prompt)→ ⑥ 聚簇 + 热度 + 日报/周报/月报。日报每天 08:00、周报每周一、月报每月 1 日,按分类分节、带导语。给 Agent 用的出口有 RSS(精选/全部/全文/日报)· 公开 API · MCP · llms.txt——同一份内容「给人看也给 Agent 用」,这条对想让 AI 订阅你行业日报的场景很关键。
行业定制 = 改一个文件夹。作者的设计哲学:把行业 KnowHow 写在 industry/prompts/selection-score.md(评分标准)和 industry/selection.ts(门槛),不写代码。官方推荐姿势是把仓库丢给 Claude Code / Codex,说「请读 AGENTS.md 和 docs/customize.md,把这个站改成『法律』行业的热点站」,再把你觉得什么算重要什么不算重要写清楚。作者还强烈建议拿一两百条自己标注过的资料跑 scripts/eval-selection.ts,看它选得准不准再上线——这是「评分可校准」的闭环,很多「让 LLM 挑新闻」项目没有这一步。
五、横向对比 + 坑与边界(别照搬 README 吹的点)
- vs TrendRadar / awesome-llm-apps 类「AI 热点推送」:那些是「每日推 10 条到微信」的单向 feed,AIHOT 是事件级聚合 + 行业可定制 + 带热度榜 + 给 Agent 用的 MCP/llms.txt。你要的是「订阅一个 feed」用前者,要的是「搭一个行业站」用 AIHOT。
- vs 自建爬虫 + LLM 筛选脚本:自建要自己解决判重、双次评分、来源分级、聚簇、热度衰减这些脏活,AIHOT 把这些全做成了可改的 prompt + 门槛 + 算法,改行业不写代码。但代价是它强绑 Docker + PostgreSQL + LLM API key,不如脚本轻量。
- 实测边界(如实写):跑通它需要 Docker(本机 2C ECS 没装)+ PostgreSQL 17 + 一个 OpenAI 兼容 LLM API key(DeepSeek/千问/智谱都行,计费)+ 首跑约 30 分钟导入处理。我没有替你烧 LLM 费用实跑生产,以上机制全部来自本地读
main分支源码实查(selection.ts/prompts/selection-score.md/events/hot.ts/features.ts,读毕即删不占盘)。引用数据请用仓库 README + 源码为准,视频口播的星数/卡数永远是旧值。 - 坑 · demo 403:今天
aihot.news返回 403,可能加反爬或访问限制;引用「在线 demo」前先 curl 探状态,别照视频里「点开就能看」写。 - 坑 · 这是线上快照不是通用框架:作者明说「它来自 AIHOT 正在线上跑的代码,不是精心打磨的通用框架」「AIHOT 的信源名单和运营数据没放进仓库」「请不要用 AIHOT 的名字和 Logo,换上你自己的名字」。也就是说你 fork 后必须改名改信源改评分标准,把它当成「火种」不是「成品」。
- 坑 · 计费 LLM 首跑 30 分钟:第一次导入约半小时处理完,这段时间 LLM 在按双次评分 + 写作 + 聚簇全量跑一遍,费用按你选的模型线性放大。生产环境记得看
docs/deploy.md里「花多少钱」那一节。 - 坑 · AI 专属模块可关:
features.ts里leaderboard(模型榜)和codexResetMonitor(Codex 额度重置监控)默认true,做非 AI 行业时两个都设false或整块删(README 明说「别的行业一个开关关掉」),否则导航里会多出两个你不需要的入口。
适合谁:有 AI 编程助手(Claude Code / Codex)+ 一个 LLM API key(愿意付这点钱)+ 想给自己行业(金融/医疗/法律/政府/教育…)搭一个「每天出日报 + 热度榜 + 给 Agent 订阅」的热点站的独立开发者 / 一人公司 / 垂直内容团队。MIT 协议商用没问题,2,834 星(09-30 实查)、2026-09-28 还在推(仓库 pushed_at),活跃。
一句话:AIHOT 是「把热点站运营流程写成 prompt + 门槛 + 热度算法」的那套框架——你不用写代码,只要把你的行业 KnowHow 填进 industry/ 一个文件夹。
仓库:github.com/KKKKhazix/AIHOT · 在线 demo:aihot.news(今天 09-30 curl 403,引用前自探)· 星标 2,834 / MIT / Node 24 + PostgreSQL 17 + Docker Compose(截至 2026-09-30 实查;视频口播没给仓库名/星数,以上均为源码 + GitHub API 实查值)