Skip to main content

01fish-llm-radar

用 7 个客观 benchmark(GSM8K / MATH / MMLU / MMLU-Pro / C-Eval / IFEval / HumanEval)快速评测任意 OpenAI 兼容 API 的大模型。支持 DeepSeek 官方 / OpenRouter / 硅基流动 / 火山引擎 / 自部署 vLLM,一键多模型横评 + 单模型深度 profile。

ソース情報

リポジトリ
OrangeViolin/01fish-llm-radar
ソースの最終更新活動
2026年4月24日 21:17
検出された SKILL.md の言語
中国語
スター
0
フォーク
1

インストール方法

デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。

ソースファイルを確認

インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。

SKILL.md を表示中

SKILL.md
ソースの指示 · 読み取り専用プレビュー
name
01fish-llm-radar
title
LLM 能力雷达(基于北大 One-Eval 口径)
description
用 7 个客观 benchmark(GSM8K / MATH / MMLU / MMLU-Pro / C-Eval / IFEval / HumanEval)快速评测任意 OpenAI 兼容 API 的大模型。支持 DeepSeek 官方 / OpenRouter / 硅基流动 / 火山引擎 / 自部署 vLLM,一键多模型横评 + 单模型深度 profile。
# 01fish-llm-radar **定位**:独立开发者 / 创业者的**模型选型初筛工具**。30 分钟内把 20 个候选模型压缩到 5 个,再拿你的真实业务场景去复测那 5 个。 评测框架参照北大 [OpenDCAI/One-Eval](https://github.com/OpenDCAI/One-Eval) 的 `bench_gallery.json` 和 `bench_config.json` 配置选 benchmark,runner / scorer 自己写(One-Eval 是 agentic 评测框架,不适合纯跑分场景)。 --- ## 触发词 | 触发词 | 场景 | |--------|------| | `/llm-radar <模型>` | 单模型完整评测(7 bench × 50 题) | | `/llm-radar <模型A>,<模型B>` | 多模型横评 | | `/llm-radar compare A vs B` | 两模型直接对决,出差异报告 | | `/llm-radar --bench math,mmlu-pro <模型>` | 指定 bench 跑 | | `/llm-radar --custom <endpoint> <model-name>` | 评测自部署 vLLM / Ollama endpoint | | `/llm-radar report` | 扫描已有 summary 重新出报告 | | "评测模型 xxx" / "跑 benchmark xxx" / "横评 xxx" | 自然语言触发 | --- ## 支持的评测维度(7 个 bench) | # | Benchmark | 样本 | 考核能力 | 数据源 | |---|-----------|------|---------|--------| | 1 | GSM8K | 100 | 小学数学应用题(多步算术推理) | openai/gsm8k | | 2 | MATH | 50 | 竞赛级数学题(AMC / AIME 风格) | HuggingFaceH4/MATH-500 | | 3 | MMLU-数学 | 100 | 大学数学选择题 | cais/mmlu 数学 5 子集 | | 4 | MMLU-Pro | 50 | 高阶知识(10 选 1,最强区分度) | TIGER-Lab/MMLU-Pro | | 5 | C-Eval | 50 | 中文学科(52 科目均匀抽样) | ceval/ceval-exam | | 6 | IFEval | 50 | 指令遵循(程序化规则验证) | google/IFEval | | 7 | HumanEval | 50 | 代码生成 pass@1(沙箱执行) | openai_humaneval | 详细介绍见 `references/bench-gallery.md`。 --- ## 快速开始(3 步) ### 1. 配置 API Key 复制 `.env.example` 到 `.env`,填至少一个 provider 的 key: ```bash # DeepSeek 官方(仅支持 deepseek-v4-pro / deepseek-v4-flash) DEEPSEEK_API_KEY=sk-... # OpenRouter(推荐,一个 key 覆盖 100+ 模型) OPENROUTER_API_KEY=sk-or-v1-... # 硅基流动(可选,补充国内模型) SILICONFLOW_API_KEY=sk-... # 火山引擎(可选,用于字节 Doubao-Seed-2.0-Pro) VOLCES_API_KEY=... ``` ### 2. 安装依赖 ```bash cd scripts/ python3 -m venv .venv && source .venv/bin/activate pip install openai datasets python-dotenv tqdm ``` ### 3. 跑评测 ```bash # 单模型跑所有 7 个 bench(50 题) python runner.py --model deepseek-v4-flash --bench gsm8k --n 50 # 多模型横评(用 orchestrator) # 编辑 orchestrator.py 的 MODELS 列表,然后: python orchestrator.py # 生成对比报告 python compare.py # 深度分析(成本 / 性价比 / 思考效率 / 响应速度) python analyze.py ``` --- ## 核心文件 ``` 01fish-llm-radar/ ├── SKILL.md # 本文档 ├── README.md # GitHub 开源说明(面向外部用户) ├── scripts/ │ ├── runner.py # 主评测脚本(单 model × 单 bench) │ ├── benches.py # 8 个 bench 的 loader + prompt + scorer │ ├── orchestrator.py # 多模型并行跑 │ ├── compare.py # 生成对比报告(均分 + 矩阵 + 单项榜单) │ └── analyze.py # 深度分析(成本/思考效率/速度/稳定性) ├── references/ │ ├── SETUP.md # Key 获取和配置详细指南 │ ├── bench-gallery.md # 7 个 benchmark 的深度介绍 │ └── providers.md # 各 provider 配置(OR allowlist 等) └── .env.example # Key 模板 ``` --- ## 产出物 每次跑完评测,在 `results/` 目录生成: ``` results/ ├── report.md # 最终对比报告(含 5 个反直觉 + 单项榜单 + 性价比) └── raw/ ├── <bench>-<model-slug>.jsonl # 每题的 prompt / 输出 / reasoning / token / 耗时 └── <bench>-<model-slug>.summary.json # 汇总(accuracy / tokens / 耗时) ``` --- ## Provider 路由规则 基于 `resolve_provider()` 函数: | 模型前缀 | 走哪个 provider | 说明 | |---------|---------------|------| | `deepseek-v4-pro` / `deepseek-v4-flash` | DeepSeek 官方 API | 最便宜 | | `xiaomi/*` | OpenRouter + `provider.only=["xiaomi"]` | | | `qwen/*` | OpenRouter + `provider.only=["qwen"]` | 需 OR allowlist 开启 | | `moonshotai/*` | OpenRouter + `provider.only=["moonshotai"]` | | | `z-ai/*` | OpenRouter + `provider.only=["z-ai"]` | | | `minimax/*` | OpenRouter + `provider.only=["minimax"]` | | | `stepfun/*` | OpenRouter + `provider.only=["stepfun"]` | | | `bytedance-seed/*` | OpenRouter + `provider.only=["seed"]` | 注意 provider slug 不同 | | `tencent/*` | OpenRouter(不加 filter,走默认) | 目前走 siliconflow | | 其他 | OpenRouter 不加 filter | | 扩展新 provider:编辑 `runner.py` 的 `resolve_provider()` 函数。 --- ## 核心设计原则 1. **客观打分 only**:所有 7 个 bench 都是程序化打分,不用 LLM-as-judge(避免主观偏差) 2. **Thinking 模式默认**:适配 2026 年主流模型都带 reasoning 的现状,`max_tokens=8192` 3. **样本 50-100**:追求快速反馈而非统计严谨(±3-5% 抖动是可接受的选型信号) 4. **全透明原始数据**:每道题的 prompt / 输出 / 对错都保存 jsonl,可追溯 --- ## 故障处理 | 症状 | 处理 | |------|------| | OpenRouter 429 限流 | 降低 `--concurrency`,或换 provider | | provider "No allowed providers" | 去 [OR 设置](https://openrouter.ai/settings/preferences) 把对应 provider 加 allowlist | | HF 数据集 gated error | GPQA 等需 HF token,跳过或申请 | | 某模型最后几题卡死 | 已在 orchestrator 里自动跳过,看 summary 的 `partial: true` 字段 | | HumanEval 代码有副作用 | 默认 subprocess 执行 15s timeout,必要时可改 Docker 沙箱 | --- ## 参考资料 - 北大 One-Eval(上游 benchmark 配置来源):https://github.com/OpenDCAI/One-Eval - 本 skill GitHub:https://github.com/OrangeViolin/01fish-llm-radar --- ## 诚实声明 本 skill **不是严格的学术 benchmark**,定位为独立开发者 / 创业者的选型初筛工具。关键差异: - ❌ 单次运行,没有多 seed 平均 - ❌ 样本只有 50-100 题 - ❌ 未覆盖长文本 / Agent / 创意写作 / 多模态场景 - ✅ 客观打分、透明原始数据、多维度交叉验证 - ✅ 能在 30 分钟内筛掉 70% 的候选模型 **真正选模型,永远以"你自己业务场景里跑一批真实数据"为准**。本 skill 只是帮你节省初筛那一步。
GitHubで見る