Skip to content
Gray379Public

About

Chrome 扩展(MV3):聚合 OpenRouter / models.dev / HuggingFace / LiveBench / Epoch AI / LMArena 等公开数据源,实时发现高热度新模型,并按价格、上下文与多榜单 Elo(含编码/数学/视觉等分类维度)做横向对比;零依赖、无后端、无构建步骤。(代码借助ai工具生成)

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

10 Commits

Folders and files

Repository files navigation

LLM Radar — 新模型热度雷达与价格/性能对比

LLM Radar 图标

一个 Chrome 扩展(Manifest V3,零依赖、无后端、无构建步骤),把多个公开数据源聚合成一份统一的模型档案:既能第一时间发现刚发布的高热度模型,也能横向对比价格、上下文、评测分和真实调用量。

为什么自己造:LMArena 只有投票分、Artificial Analysis 只有评测、OpenRouter 只有用量榜、HuggingFace 只有开源仓库——没有一个工具同时覆盖"新发布 + 热度 + 价格 + 性能"并主动提醒你。这个扩展就是在做这件事。

界面预览

雷达(宽屏双列) 并排对比(含 Arena 多榜单维度)
雷达 对比
图表(Y 轴可切 16 个指标,如编码 Elo) 侧栏视图 详情(分类 Elo 条形图)
图表 侧栏 详情

截图为本地预览(内置样例数据)渲染,非线上数据。

功能

能力 说明
🔭 新模型雷达 按 24h / 3天 / 7天 / 30天 / 90天 / 全部 时间窗筛选,支持热度、最新、性价比、质量、价格、上下文排序
🔟 列表不会只剩几条 时间窗筛出来不足 10 个时自动逐级放宽(24h→3天→7天→30天→90天→全部)并在顶部说明实际用了哪个窗口;阈值可改、可关
📝 中文模型说明 每条模型都有一句中文简介(厂商 / 开源闭源 / 模态 / 上下文 / 价格 / 评测强弱 / 热度),卡片上是两行摘要,详情里是完整版 + 上游英文原文
🤖 可选 AI 接入 想要更贴合模型的写法,可填自己的 OpenAI 兼容 API(DeepSeek / OpenAI / Kimi / GLM / 硅基流动 / 本地 Ollama 都行),带连接测试、批量生成(可限流、可中止)、结果本地缓存
🔥 热度分 可解释加权公式:新鲜度(半衰期 10 天)+ 开源社区热度 + OpenRouter 真实调用量 + 投票热度;同时给出数据完整度,避免"只有一个信号就满分"的误导
🏅 质量信号覆盖广 内置 LMArena 人类投票(浏览器内直接解析 parquet 榜单)+ LiveBench 客观评测 + 可选 Artificial Analysis 智能指数,实测 2535 个模型里有 404 个带质量分
📊 多榜单 + 分类维度 LMArena 同时抓 文本综合 / 视觉 / WebDev / Agent 四个榜(可开关),并保留 编码、数学、指令遵循、创意写作、多轮、中文、日语、韩语、专家级 等分类 Elo——对比表和图表的 Y 轴都能按维度切换(例如"编码 Elo vs 价格")
⚖️ 并排对比 勾选 2–6 个模型逐字段对比(价格、缓存价、上下文、模态、AA 指数、LiveBench 分项、Arena Elo、HF/OR 热度…),自动高亮每行最优值
📈 性价比散点图 质量分 vs 混合价格(对数轴),点大小 = 热度,颜色 = 是否开放权重,点击即加入对比
🔔 主动提醒 后台按 TTL 定时抓取,发现达标新模型时弹桌面通知 + 图标角标未读数(阈值 / 厂商白名单 / 关键词可配)
⭐ 关注清单 卡片上点 ☆ 收藏模型;每次抓取后和上次基准对比,价格 / Arena 名次 / 分类分变动超过阈值就弹通知;关注页能看到每个模型的变动明细,也能手动"记录当前为基准"
🧬 族视图 同一系列的多个版本(Qwen3.8 的 27B / Flash / Flash-Next、GLM 5.x、GPT-5.x…)折叠成一行,显示版本数、价格区间、最佳质量与最佳编码;展开看到每个版本,勾选/关注照常可用
🗓 发布日历 按周 / 按月把新模型排成时间线,带发布节拍条、最活跃厂商与"最热闹的一期"统计,一眼看出谁在什么时候发了什么
🧭 同类替代推荐 详情里自动列出"同能力更便宜"和"同价位更强"的候选(跨厂商一起比),直接给出"省 50%、质量持平"这类结论,一键加入对比或关注
🧩 跨源合并 同一模型的 OpenRouter / models.dev / HuggingFace / LiveBench / Epoch 记录自动对齐为一条,带匹配置信度与价格冲突提示(例如 OpenRouter 折扣价 vs 官方标价)
🩺 诊断面板 每个源的抓取状态、耗时、条目数、错误、原始响应片段;支持单源刷新与自定义端点覆盖,源挂了 5 分钟内可自修
📤 导出 CSV / Markdown / JSON 导出,对比表一键复制为 Markdown

安装(30 秒)

  1. 打开 chrome://extensions
  2. 右上角开启 开发者模式
  3. 点 加载已解压的扩展程序,选择本仓库的 extension/ 目录
  4. 点工具栏 LLM Radar 图标 → 打开侧边栏;也可以在侧栏点 ↗ 在新标签页打开完整视图

首次打开会自动抓取全部数据源(实测约 5 秒,合并出 2000+ 个模型),之后按 TTL 增量刷新。

模型中文说明开箱可用;想让 AI 写得更贴合,再去 设置 → AI 接入 填自己的 API(见下文),不填也完全能用。

数据源

源 提供 需要 Key 国内直连 TTL
OpenRouter 模型库 模型、价格、上下文、模态、首次收录时间 否 ✅ 6h
OpenRouter 用量榜 周维度真实 token 用量与排名(热度核心) 否 ✅ 12h
models.dev 官方定价、上下文、知识截止、是否开放权重 否 ✅ 24h
HuggingFace 开源模型 trendingScore / likes / 下载量 否 ⚠️ 默认走 hf-mirror.com 6h
LiveBench 客观评测(推理 / 编码 / 数学 / 数据分析 / 语言 / 指令遵循) 否 ✅ 3d
Epoch AI 发布时间、机构、参数量、开放权重 否 ✅ 3d
Artificial Analysis 智能指数、编码 / 数学指数、输出速度 是(免费注册) ✅ 24h
LMArena 人类投票 Elo:文本/视觉/WebDev/Agent 四榜 + 11 个分类维度 否 ✅ 走 hf-mirror 的 parquet 快照 24h

字段映射、备用端点与失效处理见 DATA_SOURCES.md。

模型中文说明

每条模型都会有一句中文简介,不配任何 API 也有:

  • 内置规则版(默认):用结构化字段拼出来,例如 OpenAI 的闭源视觉推理模型,2026-01-17 发布(3 天前)。上下文 400K,最大输出 128K;输入 $1.25 / 输出 $10.0 每百万 token。AA 智能指数 68(第 3),Arena Elo 1360(第 5 名)。OpenRouter 上周调用 120.0B tokens(第 4 名)。 字段缺失时只写有的部分,不会编造;卡片上显示两行摘要(悬浮可看全句),点"详情"看完整版。
  • AI 版(可选):在 设置 → AI 接入 里填自己的 API 后,可以让 AI 依据同一批结构化事实重写更贴合的一句话;生成结果按模型缓存,卡片上会带 AI 标记,详情里还能展开对照"上游英文原文"。

AI 接入怎么配

AI 接入

  1. 打开 设置 → AI 接入,填三样东西:
    • API 地址:任何 OpenAI 兼容的 /chat/completions 端点。填 /v1 结尾的地址即可(https://api.deepseek.com/v1、https://api.openai.com/v1、https://api.moonshot.cn/v1、https://open.bigmodel.cn/api/paas/v4…);不带 /v1 会自动补,本地 Ollama 填 http://localhost:11434/v1。
    • API Key:本地服务可以留空。
    • 模型名:如 deepseek-chat、gpt-4o-mini、qwen2.5:7b。
  2. 点 测试连接:会真发一条最小请求,成功显示模型名与耗时(✔ 连接正常:deepseek-chat,用时 812ms,回复「正常」),失败会直接告诉你原因(Key 不对 / 404 端点写错 / 连不上 / 被限流)。
  3. 回到 雷达 页点 AI 生成中文简介:只处理当前筛选结果里还没有 AI 简介的模型,单次上限可配(默认 20 个),生成中可停止;一个都没成功且连续失败 3 次会自动中止,避免白烧 token。
  4. 单条模型也可以:展开详情 → AI 生成简介 / AI 重新生成。

安全与隐私

明文 HTTP 拦截

  • Key 只存本机:保存在 chrome.storage.local,除了你自己填的那个 API 地址之外不会发给任何第三方——扩展没有后端,请求由浏览器直连。
  • 明文 HTTP 有硬性限制:只有 localhost / 127.0.0.1 / *.local 走 http 才被允许;如果填了 Key 又指向公网 http 地址,扩展会直接拒绝发送并提示改用 https(避免密钥明文过网)。局域网 IP 的明文地址需要自行在 extension/manifest.json 的 optional_host_permissions 里添加。
  • 权限按需申请:自定义端点走 Chrome 的可选主机权限(optional_host_permissions),只有你点"测试连接 / 生成"时才按 origin 申请一次,安装时不索取任何第三方站点权限。
  • AI 简介可清空:设置页有"清空 AI 简介缓存";清空后不会自动重跑(会消耗 token)。

几点说明:

  • Key 只存在本机 chrome.storage.local,除了你自己填的那个地址之外不会发给任何第三方(本扩展没有后端)。
  • 扩展需要访问你自填的域名,第一次点"测试连接 / AI 生成"时浏览器会弹出可选权限授权框,同意后才会发请求;拒绝的话点一次按钮可以重新授权。
  • AI 简介是花钱换来的,"清空本地缓存"不会删它(快照仍在)——要删请用设置里的 清空 AI 简介缓存。
  • 生成的内容仅供参考,可能有错;事实性字段(价格、上下文、榜单分)仍以原始数据为准。

工作原理

  1. 抓取:每个源是一个独立适配器(extension/lib/sources/*.js),自带候选 URL 列表、超时与失败降级;失败时保留上一次的好数据,并在诊断页标红。
  2. 归一化:统一成一份模型档案,每个字段记录来源(provenance);价格统一为 $/1M tokens。
  3. 跨源合并:先归一化模型 ID(去厂商前缀、去日期与 -preview / :free / 量化后缀、版本点号统一),同 stem 再按厂商聚类,避免把同名不同厂的模型错误合并;置信度分为 多源一致 / 疑似同一 / 单源。
  4. 打分:热度 = Σ(权重 × 子分),缺失的子项按 0 计入(不重新归一化到满分),所以"数据完整度"低的模型不会被误捧。
  5. 提醒:chrome.alarms 定时跑同一套流水线,与历史已知模型集合做 diff,命中阈值才通知(首次运行只登记、不打扰)。
  6. 说明:先按结构化字段生成中文简介(描述器只读数据、不猜);配置了 AI 时改为调用你自己的端点重写,并缓存到 ai.desc。
  7. 存储:只存归一化后的数据(不存原始响应)+ AI 简介缓存,全部放在 chrome.storage.local,没有任何外部服务器。

关注清单与变动提醒

关注清单

点模型卡片上的 ☆(或详情里的"☆ 关注")加入关注,"雷达"工具栏会出现"★ 只看关注(n)"筛选,"关注"页签是它的主界面。

  • 基准 → 对比:Service Worker 每次抓取完会把关注模型的指标(输入/输出/混合价、Arena 综合 Elo 与名次、分类 Elo、质量分、热度)存成基准快照;下次抓取自动对比,超过阈值才提醒,避免噪声。默认阈值:价格波动 ≥5%、Elo 变化 ≥5 分、名次变动 ≥3 位、分类分变化 ≥10 分(设置页可调)。
  • 通知:达标时弹"关注的 N 个模型有变动",正文列出变动最大的 3 条,例如:GLM 5.3:混合价 ↓18%($1.25 → $1.02)。
  • 手动控制:关注页的"记录当前为基准"可以把当前指标重新设为基准(比如你刚发现一批变动、想从此刻开始看)。

同类替代推荐怎么算

详情面板底部会给出两组候选(只在同时有价格与质量分的模型里选,跨厂商一起比):

  • 更便宜:混合价更低,且质量分不低于它的 95%(默认容差)→ 按省下的比例排序;
  • 更强:质量分更高,且混合价不超过它的 1.25 倍 → 按质量提升排序。

每行都标注结论(如"省 50%,质量持平""质量高 10 分,贵 1.00 美元/1M"),可一键加入对比或关注;缺价格或缺质量分时不会硬凑推荐,而是说明原因。

族视图与发布日历

发布日历

族视图(同系列折叠)

雷达工具栏勾选「族视图(同系列折叠)」,同一系列的模型会折成一行:显示版本数、价格区间(如 $0.14 – $4.35/1M)、最佳质量与最佳编码 Elo;点「展开」列出每个版本,每行都能勾选对比或点 ☆ 关注。

家族判定规则(纯函数 lib/family.js,有单测覆盖):从模型 key 里截到第一个含数字的 token,所以 qwen3-8-27b / qwen3-8-flash → qwen3;claude-opus-4-6 / claude-opus-4-8 → claude-opus-4,而 claude-opus-5 是独立一族;没有版本号的 key(如 gpt-oss)不折叠。

发布日历

「日历」页签按周或按月把带发布日期的模型分桶,倒序排列:顶部是最近若干期的发布节拍条(每根柱子 = 一期的发布数量)与最活跃厂商统计,下面每期一块,列出发了哪些模型(按热度排序)、厂商分布与开源数量。

本地预览(不装扩展也能看 UI)

node tools/preview.mjs        # 打开 http://127.0.0.1:8787/preview.html

预览用测试夹具喂数据,离线可用,五个页签都能点。

开发

node --test tests/*.test.mjs        # 120 个离线单测(归一化/合并/打分/8 个源适配器/多榜单与容错/全链路/后台通知/导出/中文简介/AI 客户端/列表自动放宽与严格时间窗/关注变动 diff/替代推荐/图表数学/设置存储)
node tools/harness.mjs              # 真实联网跑一遍流水线,打印各源耗时、结果与热度 Top 榜
node tools/harness.mjs huggingface  # 只跑某个源
node tools/preview.mjs              # 用夹具数据起本地预览服务(无需装扩展)
python tools/make-icons-from-image.py assets/icon-source.png --flat-bg --trim --pad 0.02
                                    # 由源图重新生成 16/32/48/128 图标 + 深浅底对比预览
python tools/make_icons.py          # 没有源图时用代码生成占位图标
python tools/make-parquet-fixture.py  # 重新生成 LMArena parquet 测试夹具(需 pyarrow)
python tools/verify-parquet.py      # 用 pyarrow 读线上 parquet 做真值对拍

# 开发依赖(扩展本体零依赖,以下仅用于本地测试)
cd tools && npm install --registry=https://registry.npmmirror.com && cd ..
node tools/smoke-ui.mjs             # 33 项 jsdom 冒烟:五页签渲染、对比表、过滤排序、中文简介、自动放宽、app 启动
node tools/browser-check.mjs        # 30 项真实 Chrome 渲染测试(含"连接失败"与本地 mock 端点的完整 AI 链路),并把截图写到 tools/shots/

说明:Chrome 137+ 出于安全考虑已禁止用命令行加载未打包扩展,所以 browser-check 用真实 Chrome 打开预览页(同一套 UI 代码 + 夹具数据)来验证渲染、交互、性能与布局,扩展上下文(storage/alarms/通知/角标)则由 tests/service-worker.test.mjs 用 mock 的 chrome API 覆盖。

代码结构:

extension/
  manifest.json
  background/service-worker.js   定时抓取、通知、角标
  lib/
    http.js        超时/候选 URL/降级/POST(AI 调用也走它)
    store.js       chrome.storage 封装(Node 下自动退回内存实现,便于测试)
    schema.js      厂商别名、模型 ID 归一化(stem)
    labels.js      分类/榜单/数据源的中文标签
    merge.js       跨源合并、价格冲突检测
    scoring.js     热度/质量/性价比计算
    describe.js    中文简介生成(内置规则,纯函数、不联网)
    ai.js          OpenAI 兼容客户端:连接测试、单条/批量生成、错误可读化
    pipeline.js    抓取编排、缓存 TTL、新模型 diff
    export.js      CSV / Markdown / JSON
    sources/*.js   8 个数据源适配器
  ui/              侧栏 + 全页视图(原生 DOM,无框架)
tests/             离线单测 + 真实响应夹具
tools/             预览服务、夹具生成、真实抓取验证、图标生成

已知限制

  • 不是官方数据:热度分是启发式综合分,只用于"发现与排序",不应当作评测结论;具体分数请回到 LiveBench / Artificial Analysis 原始页面。
  • 国内网络:huggingface.co 直连可能不可达,HuggingFace 与 LMArena 两个源默认都走 hf-mirror.com(实测可用)。任意源都可以在设置里覆写端点(设置页会显示当前实际使用的 URL)。
  • 端点可能变更:上游改字段时该源会在诊断页报错并保留旧数据;按 DATA_SOURCES.md 的说明改适配器或直接覆写 URL,不影响其它源。
  • 热度只看可见信号:不在 OpenRouter / HF 上的闭源模型缺少热度数据,会显示较低的"数据完整度"——这是刻意设计(不猜)。
  • 价格:来自第三方聚合,可能滞后或含促销价;多源差异 >30% 会被标为"价格源有差异"并同时展示两个值。
  • 中文简介:内置规则版只复述已有字段,不做推断;AI 版可能出现幻觉,重要结论请回到原始榜单页面核对。
  • 自动放宽时间窗:默认开启(阈值 10 个)。它只影响"列表显示多少条",不会改动你的筛选条件本身——列表顶部会写明实际用的是哪个窗口,也提供"只看 X"和"关闭自动放宽"两个按钮。

第三方代码

扩展本体没有任何运行时依赖,只 vendored 了一个小库:

  • hyparquet(MIT,v1.31.1,约 268KB,内置于 extension/vendor/hyparquet/):在浏览器里直接解析 LMArena 的 parquet 榜单(含内置 Snappy 解压)。许可证随源码一起保留。升级方式:npm i hyparquet 后把 node_modules/hyparquet/src/ 覆盖到 extension/vendor/hyparquet/。

同类产品(如果只想用现成的)

  • 只看榜单:LMArena、LiveBench、SWE-bench
  • 只看质量 / 价格对比:Artificial Analysis、llm-stats.com
  • 只看用量热度:OpenRouter Rankings
  • 只看开源模型:HF Trending、models.dev
  • 只看新模型时间线:Epoch AI

它们各自都很强,但没有一个把"新发布 + 热度 + 价格 + 评测"合到一处并主动推送——这正是本项目的定位。

About

Chrome 扩展(MV3):聚合 OpenRouter / models.dev / HuggingFace / LiveBench / Epoch AI / LMArena 等公开数据源,实时发现高热度新模型,并按价格、上下文与多榜单 Elo(含编码/数学/视觉等分类维度)做横向对比;零依赖、无后端、无构建步骤。(代码借助ai工具生成)

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages