Skip to content

AI-flower/Open-Model-Scout

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Open Model Scout · 开源模型选型顾问

把"开源模型选型"做成一个对话式 Skill:从用户的模糊诉求出发,给决策,不给排行榜

Skill Python Status Data

它在解决什么问题

公开榜单(HuggingFace / SuperCLUE / LiveBench / OpenCompass / LMArena)给数据,但不给决策。当你问"我该选哪个开源模型做 X"时,真正的答案不是"MMLU 第一是 Y",而是:

"用 Qwen3-32B,因为你的场景是中文 + 单卡 A100 + 要做指令微调;DeepSeek-V3 能力更强但需要多卡 H100;Llama3-70B 是 conservative fallback,社区生态最大。如果 3 个月后你的 GPU 升级到双卡 H100,重新评估。"

这种答案需要把场景反推 + 部署约束 + 能力维度 + 实时榜单揉在一起,是 LLM 擅长但市面上没人系统化做的事。Open Model Scout 把这个过程封装成一个 Claude Code Skill。

它和"直接问 Claude/ChatGPT"有什么不同

直接问 LLM Open Model Scout Skill
容易给出 top-N 榜单 强制 5 步流程,最后给 3 候选 + 行动指引
用训练时(旧的)模型知识 每次调用都从公开榜单 实时抓取(无数据库、无缓存)
容易忽略 license / 部署 / 中文等落地维度 把 license / GPU / 中文 / 微调 / 部署 列为硬过滤器
不区分"做调研" vs "选模型" 显式区分 Briefing mode(市场报告)和 Selection mode(3 候选)
编造分数 没有源就明说"无数据,查 [URL]",绝不编造

它怎么工作

Skill 在对话里强制走 5 步流程:

Step 1: 场景澄清 → 反推用户真正想问什么(hidden question)
Step 2: 约束收集 → GPU / 数据敏感度 / license / 团队能力 / 语种 / 时延
Step 3: 场景 → 能力维度映射 → 翻译成 "对话 high + 中文 high + 长上下文 mid"
Step 4: 候选筛选 + 决策   → 实时抓 source → 过滤 → 排序 → 输出 3 候选
Step 5: 行动指引          → 哪里下载 / 选什么量化 / 用什么推理框架 / 5 个自验证项

每一步都有"何时停问"和"两种 mode 切换"的明确规则,避免变成问卷调查。

快速开始

两种使用路径,按你的需求选:

路径 A · 只用 Skill(推荐 · 60 秒)

不需要 Python、不需要任何依赖。Skill 用 Claude 的推理 + 内置策展知识就能跑(Step 4 时如果没有实时数据后台,会 fallback 到 curated-models-2026.md 的策展库 + 引导用户去公开榜单 URL)。

# 1. clone 仓库到任意位置
git clone https://github.com/AI-flower/Open-Model-Scout.git
cd Open-Model-Scout

# 2. symlink skill 目录到 Claude Code 的 skills 路径
mkdir -p ~/.claude/skills
ln -s "$(pwd)/skill" ~/.claude/skills/open-model-scout

# 3. 重启 Claude Code

打开 Claude Code,在任何对话里说:

  • "帮我选个做客服的开源模型"
  • "现在最强的开源大模型是什么"
  • "对比一下 Qwen3 / DeepSeek / Llama3"
  • "我们公司想做 AI 转型,看看开源市场"

Skill 会被自动触发,开始走 5 步流程。

路径 B · Skill + 实时数据后台(数据驱动 · 5 分钟)

路径 A 在 Step 4 用的是策展知识 + 让用户去查榜单。如果你想让 skill 真的拿到当下最新的榜单分数,加装 scout-data Python 包:

# 在路径 A 的基础上继续:
cd Open-Model-Scout/data

# 安装 uv(如果还没有)
curl -LsSf https://astral.sh/uv/install.sh | sh

# 装依赖
uv sync
uv run playwright install chromium    # 仅当你要用 LMArena ELO 时才需要

# 验证
uv run scout-data sources              # 应该列出 5 个 source
uv run scout-data scores --benchmark superclue-overall --limit 10

装完之后 skill 在 Step 4 会自动调 scout-data fetch ... 拿实时数据。第一次问的时候时延会比纯 Skill 多 3–40 秒(取决于场景需要的 source)。

时延参考

你问的场景 skill 默认会抓的 source 总时延
中文 RAG / 客服 hf + superclue ~6 s
代码 / Copilot hf + livebench ~33 s
通用推理 / 学科 hf + opencompass ~8 s
市场调研 (briefing) 4 个都抓 ~40 s
加 LMArena ELO 上面 + lmarena +60 s

使用示例

示例 1 · Selection Mode(有具体项目)

:我想用开源模型做一个内部 IT helpdesk 机器人,员工 200 人。

Skill:(Step 1)你的真实问题是不是"用一个开源模型替代我们现在的付费 API,跑在自己机器上,要中文好"?

:对。

Skill:(Step 2)你的 GPU 预算是什么级别?(消费卡 / 单 A100/H100 / 多卡)

:一张 A100 80G。

Skill:(Step 2 cont)数据需要完全本地,还是可以接私有云?

:完全本地。

Skill:(Step 3)你的场景核心维度是:中文 high + 对话 high + KB 问答 high + Agent mid。需要长上下文吗(>32k)?

:32k 够。

Skill:(Step 4 · 实时抓 hf + superclue + opencompass,~8s)

PRIMARY:   Qwen/Qwen3-32B
  Why:  中文 SuperCLUE 70.98(榜首 tier),Apache-2.0 商用 OK,A100 80G 跑 AWQ Q4 绰绰有余
  Risk: 工具调用稳定性中等,agent 场景可能需要再次微调

ALTERNATIVE: deepseek-ai/DeepSeek-V2.5
  When: 如果你后期要扩到双卡 H100,且 KB 问答比例 >50%

CONSERVATIVE FALLBACK: meta-llama/Llama-3.1-8B-Instruct
  Why: 部署最稳,社区资源最多,作为初版上线降低风险;中文需配合 prompt 工程

Skill:(Step 5)下载 Qwen/Qwen3-32B-AWQ(HuggingFace),用 vLLM 启动 --quantization awq --max-model-len 32768。上线前跑这 5 个验证:……(详见模板)

示例 2 · Briefing Mode(做市场调研)

:我们公司在做 AI 转型调研,想了解一下开源大模型市场现状。

Skill:(Step 1)你这个调研是为某个具体项目,还是公司层面的 awareness?

:公司层面,还没具体项目。

Skill:你的语境是 zero-constraint market briefing。进入 briefing mode,将输出能力地图而非 3 候选;用 default 假设填补未明确的边界(中文为主 / 关注 7B–70B / Apache 优先 / 能跑 vLLM 能微调)。任何 default 不符告诉我立即调整。

(Step 4 · 实时抓 4 source,~40s)

输出一份结构化报告(详见 skill/references/briefing-template.md),包括:

  • 顶部摘要(top 5 模型、当前 frontier、值得跟踪的 4 个趋势)
  • 5 类对比表(综合能力 / 中文 / 代码 / 长文档 / 多模态)
  • 8 个企业落地维度横截面
  • 季度复评 cadence + 行动 checklist

文档导览

文件 看它如果你想...
docs/design.md 理解整体架构、设计原则、版本演进
docs/onboarding.md 工程师上手 + 加一个新 source 的 60 分钟模板
skill/SKILL.md Skill 主体(5 步流程 + 两种 mode 的判定规则)
skill/references/scenario-map.md 企业场景 → 能力维度权重映射表
skill/references/enterprise-dimensions.md 8 个企业落地维度(license / GPU / 量化 / 微调 / 安全 / 长上下文 / vendor / 中文)
skill/references/data-sources.md 5 个公开榜单的对比说明书
skill/references/decision-templates.md Selection mode 的 3 候选输出格式
skill/references/briefing-template.md Briefing mode 的市场调研报告格式
skill/references/fetch-guide.md Skill 怎么在 Step 4 调实时数据
skill/references/curated-models-2026.md 2025–2026 模型策展库(实时 source 缺失时的应急参考)
data/README.md 数据层使用说明

架构

┌─────────────────────────────────────────────────────┐
│  用户接入:Claude Code Skill                          │
│  - 5 步流程强制走流程                                 │
│  - Selection / Briefing 双 mode                      │
└─────────────────────────────────────────────────────┘
                       │
                       │  Step 4 时按需调用
                       ▼
┌─────────────────────────────────────────────────────┐
│  scout-data Orchestrator (fetch.py)                  │
│  - 并发拉取选定 source 子集                            │
│  - 内存里派生 enterprise_dim 4 维(license / vendor / │
│    chinese / deploy)                                │
│  - 无持久化、无缓存、用完即丢                          │
└─────────────────────────────────────────────────────┘
                       │
                       ▼
┌─────────────────────────────────────────────────────┐
│  5 个 Live Source Fetchers                           │
│  ├── hf          ~3 s   HuggingFace Models API       │
│  ├── superclue   ~3 s   月度 xlsx(中文场景命门)       │
│  ├── opencompass ~5 s   CompassRank API v2026-05     │
│  ├── livebench   ~30 s  HF parquet + 历史 commit     │
│  └── lmarena     ~60 s  Playwright DOM(仅按需)       │
└─────────────────────────────────────────────────────┘

为什么去掉了持久化(v0.5):开源模型周更,"3 个月前 Qwen2 的 MMLU" 没人想看。v0.4 持久化曾导致 3 个数据准确性 bug(老 license 行未清理、中文维度覆盖不足、新老 benchmark 混入)。v0.5 把"当下最新"作为唯一语义,每次抓即用即丢,从架构上消除这类 bug。

仓库结构

Open-Model-Scout/
├── README.md                       本文件
├── docs/
│   ├── design.md                   设计原则、架构、演进
│   └── onboarding.md               工程师上手 + 加新 source 模板
├── skill/                          Claude Code Skill 本体
│   ├── SKILL.md                    5 步流程 + 两种 mode
│   └── references/                 7 篇引用文档(按需加载)
└── data/                           Python 实时数据层
    ├── pyproject.toml              uv 管理依赖
    ├── README.md                   数据层说明
    ├── scripts/                    recon / audit 开发期工具
    └── src/scout_data/
        ├── cli.py                  scout-data 命令行入口
        ├── fetch.py                Orchestrator + 4 维度派生
        └── scrapers/               5 个 source 抓取器

CLI 速查(路径 B 装了 data 后)

# 看可用 source 及时延
uv run scout-data sources

# benchmark 排名(自动选 source)
uv run scout-data scores --benchmark superclue-overall --limit 10
uv run scout-data scores --benchmark livebench-overall --limit 10
uv run scout-data scores --benchmark opencompass-mmlu-pro --limit 10

# HF top 模型(按 30d 下载)
uv run scout-data models --modality text --limit 15

# 单模型 4 维度(license / vendor / chinese / deploy)
uv run scout-data dims --model-id Qwen/Qwen3-32B --with-deploy

# 原始 JSONL(自己在 Python 里处理)
uv run scout-data fetch hf superclue --json | head

Python API:

from scout_data.fetch import (
    fetch_sources, fetch_hf_model, superclue_overall_map, enterprise_dims_for,
)

data = fetch_sources(["hf", "superclue"])                # 并发
hf_index = {r["id"]: r for r in data["hf"]}
sc_map = superclue_overall_map(data["superclue"])

dims = enterprise_dims_for(
    "Qwen/Qwen3-32B",
    hf_index.get("Qwen/Qwen3-32B") or fetch_hf_model("Qwen/Qwen3-32B"),
    superclue_score=sc_map.get("Qwen/Qwen3-32B"),
    check_deploy=True,
)
# {license: {...}, vendor: {...}, chinese: ..., deploy: {...}}

设计原则

  1. 决策优先于数据 —— 输出"用 X 因为 Y",不是 leaderboard
  2. 场景反推 over 用户自报 —— 80% 用户不知道想要什么,要 derive hidden question
  3. 企业落地维度 > 学术能力维度 —— 80% 商用失败来自 license / 部署 / 微调
  4. NULL ≠ 0 —— "无数据"和"分数=0"必须区分
  5. 每个数据点带日期 + 来源 —— 没有就明说,绝不编造
  6. 当下最新优于历史快照 —— 不为低价值历史数据付出准确性代价

已知局限

  1. LiveBench reasoning/math/data_analysis 数据冻结在 2024-10——upstream livebench/model_judgment 在 2025-04 误删,目前从历史 commit 5896e3b 拉数据
  2. 跨源模型命名不统一——每个 scraper 维护 *_TO_HF 映射;scripts/audit_mappings.py 可校验所有映射
  3. LMArena 闭源模型不进 HF JOIN——保留原名,但 ELO 仍可单独查询
  4. enterprise_dim 还差 4 维(quant 实测 / fine-tune 成本 / safety / 长上下文实测)——需 GPU 实测,是 v1.0 之后的事
  5. SuperCLUE 开源覆盖度低——通常只列 top 20–30,mid-tier 开源模型中文维度 NULL(OpenCompass fallback 接口已留但未实现)

路线图

  • v0.1 · Skill 静态 references + LLM 推理 ✅
  • v0.2 · HF / LiveBench / SuperCLUE scraper + DuckDB 持久化 ✅
  • v0.3 · OpenCompass / LMArena scraper + MCP server(v0.5 移除)✅
  • v0.4-alpha · enterprise_dim 4 维派生 ✅
  • v0.5 · 纯实时重构,删 DB / snapshots / MCP ✅
  • v0.5.1 (当前) · 数据可靠性 3 修:ghost 映射 audit、deploy 加社区 quant 搜索、单模型按需查 ✅
  • v0.6 (计划) · OpenCompass fallback for 中文维度 / Skill description 优化
  • v1.0 (远期) · 可选 30min TTL 轻量缓存 + 自有评测(quant 实测 / fine-tune 成本)

兼容性

  • Claude Code(macOS / Linux / Windows)—— 主要支持环境
  • Python 3.11+ —— 仅 data 层需要(路径 A 不需要)
  • uv —— 推荐用 uv 管依赖(不强制,pip + venv 也行但需自行翻译命令)

贡献

欢迎 PR 和 issue:

  • 加新 source(如 Vellum / Artificial Analysis / Chatbot Arena 子榜)—— 参考 docs/onboarding.md 的 60 分钟模板
  • 补 enterprise_dim 维度(quant / fine-tune / safety / longctx)—— 需要 GPU 实测,请先开 issue 讨论方案
  • 报告数据偏差 —— 跑 uv run python data/scripts/audit_mappings.py 看是否有 ghost 映射;offending model 直接开 issue
  • Skill 流程改动 —— 改 skill/SKILL.md + 对应 reference,PR description 里贴一段真实对话验证

代码风格:

  • Scraper docstring 顶部注明 reconnaissance 日期 + 数据源 URL + 已知限制
  • 新增维度信号要同步更新 skill/references/enterprise-dimensions.md
  • 不持久化(v0.5 架构红线)—— 任何 write_* / save_* / db.execute 都会被 reject

License

本项目以 MIT License 开源(待补 LICENSE 文件)。注意:本项目仅做选型推荐,模型本身的 license(Apache-2.0 / Llama Community / Qwen Research / DeepSeek 等)由各模型上游决定,使用时请自行核对。

致谢

数据来源:HuggingFace、SuperCLUE、OpenCompass / CompassRank、LiveBench、LMArena。本项目仅做客观汇总与场景化决策,不对各榜单的方法论或排名负责。

About

Open Model Scout

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages