Files
nagi-bench/README.md
T
Jesse ZhangandClaude Opus 4.8 7eaac09dc0 Sort models by version desc and clarify effort belongs to the model (#18)
Reorder the Opus (4.8>4.7>4.6>4.5), MiMo (keep the two variants
adjacent) and GLM (5.2>5.1>5 Turbo) entries so the registry sorts by
version high-to-low instead of the previous scrambled order, adjusting
each model JSON's `order` and regenerating the README registry tables.

Also revise the model-vs-harness explainer: reasoning effort is a
capability dial of the model itself (same weights at high vs low effort
reason like different models), so it belongs to the "model" dimension
alongside the weights rather than being framed as a side parameter of
the agent.

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-18 23:48:13 +01:00

9.3 KiB
Raw Blame History

NAGI BENCH

中文 | English

NAGI STUDIO 的 LLM 测评案例集:同一段提示词,不同「模型 × Harness × 思考配额」组合,一次生成、不许返工,并排对比它们交出的可运行作品。

线上站点: https://bench.nagi.fun/

X Discord Xiaohongshu Bilibili

模型与 Harness 的关系

Model + Harness = Agent —— 模型只是权重,套上运行环境才成为一个能干活的智能体(Agent)。本仓库的测评单位就是一个 Agent。

  • 模型(Model):权重与推理引擎本身,如 GPT-5.5、Gemini 3.1 Pro、Claude Fable 5。思考配额(effort)是模型自身的能力旋钮——同一份权重在高/低思考强度下的推理深度判若两个模型,因此它和权重同属「模型」这一维度,脱离 effort 谈模型表现并不公允;本仓库默认拉满(Max),并在每个组合里如实标注。
  • Harness(运行环境):包裹模型的产品/脚手架,如 Codex CLI、Cursor、AntiGravity、Claude 网页版——它决定工具调用、系统提示词、上下文管理与续写策略,对最终产出的影响往往不亚于模型本身。
  • 因此本仓库的测评单位是一个 Agent:同一个模型(含其思考配额)换一个 Harness,就是另一个 Agent,记为不同条目(例如 GPT-5.5 Pro 与跑在 Codex CLI 里的 GPT-5.5(xhigh)是同一模型家族的两个 Agent)。

已测组合 / Registry

此表由 bun scripts/update-registry.ts 从 models/*.json 自动生成;CI 会检查它是否最新。

模型 厂商 运行环境(Harness)× 思考配额 产出
Claude Fable 5 Anthropic Claude Web App · Max
Claude Code · Max
Cursor · High
06
Claude Opus 4.8 Anthropic Claude Code · Max 05
Claude Opus 4.7 Anthropic Claude Code · Max
Cursor · Max
05
Claude Opus 4.6 Anthropic Claude Code · Max
Cursor · Max
04
Claude Opus 4.5 Anthropic Cursor · Thinking 02
Claude Sonnet 4.6 Anthropic Claude Code · Max
Cursor · High
03
Claude Haiku 4.5 Anthropic Claude Code · Default 02
GPT-5.5 Pro OpenAI ChatGPT Web · Extended Pro 03
GPT-5.5 OpenAI Codex CLI · xhigh 02
GPT-5.4 OpenAI Cursor · xhigh
Codex CLI · xhigh
05
GPT-5.3 Codex OpenAI Cursor · xhigh 02
GPT-5.2 OpenAI Cursor · xhigh 02
Gemini 3.1 Pro Google AntiGravity · High
Cursor · Default
Google AI Studio · High
05
Gemini 3.5 Flash Google AntiGravity · High
Cursor · Default
Google AI Studio · High
05
Grok Build xAI Grok Build TUI · Max 02
Nex-N2-Pro Nex-AGI Claude Code · Max 02
Grok 4.3 xAI Cursor · Default 02
Composer 2.5 Cursor Cursor · Max
Cursor · Default
Grok Build TUI · Default
05
Mistral Medium 3.5 Mistral AI Vibe · Thinking 02
DeepSeek-V4-Pro DeepSeek Claude Code · Max 02
Doubao Seed 2.0 Pro ByteDance Doubao Web · Pro Mode 01
Doubao Seed 2.0 Mini ByteDance Doubao Web · Fast Mode 01
MiMo v2.5 Pro Xiaomi Claude Code · Max 02
MiMo v2.5 Pro UltraSpeed Xiaomi Web · Default 04
Kimi K2.7-Code Moonshot AI Kimi Code · Thinking 02
Kimi K2.6 Moonshot AI Kimi Code · Thinking 02
MiniMax M3 MiniMax MiniMax Code Web · Thinking 02
MiniMax M2.7 MiniMax MiniMax Code Web · Thinking 01
GLM-5.2 Zhipu AI ZCode · Max 03
GLM-5 Turbo Zhipu AI ZCode · Thinking 03
Qwen3.7-Max Alibaba Qoder · Default 02
Step 3.7 Flash StepFun Claude Code · High 02

待测:GLM-5.1(欢迎 PR 补充)

Arena 盲评与社区榜单

  • 每个案例默认进入 Arena 模式:随机抽两份产出匿名对战(A / B / 都不好),投完票才揭晓身份;右上角可切到 全部查看(按模型分组浏览,同一模型多个 Harness 可单看或并排对比)。
  • 累计投满 03 票后解锁社区榜单:按 Bradley-Terry 评分排名(LMSYS Chatbot Arena 同思路),「都不好」单独计入双败。
  • 投票默认存浏览器本地;部署 worker/(Cloudflare Worker + D1 + Turnstile 防刷,免费档即可)后自动升级为全站众包数据,步骤见 worker/README.md。

结构 / Structure

outputs/<artifact-dir>/<case-id>.<ext>  模型产出原文件(HTML / SVG),文件名 = 案例 id
models/<agent-id>.json                  Agent 登记:label / vendor / harness / effort / artifactDir / order / 各案例运行备注
cases.json                           案例定义:双语标题与提示词(维护者维护)
scripts/validate-data.ts             数据校验(CI 对每个 PR 自动执行)
scripts/update-registry.ts           README Registry 表生成(CI 检查是否最新)

站点与投票后端的源码在私有仓库 nagi-bench-site 中,部署于 Cloudflare Pages;本仓库是站点的数据源。

本地校验 / Validation

bun scripts/update-registry.ts # 从 models/*.json 更新 README Registry 表
bun scripts/validate-data.ts   # 与 CI 相同的数据校验

贡献一个模型产出 / Contributing a run

如果你是一个 AI Agent(Claude Code / Codex / Cursor 等),这一段是给你看的:

  • 你贡献的单位是一个 Agent = 模型 × 你所在的 Harness。 <agent-id>(小写字母 / 数字 / 连字符)就编码这个组合,如 gpt-5-5-pro、claude-fable-5-cc(cc = Claude Code)。同一模型换个 Harness 就是另一个 Agent、另一个 id。<agent-id> 是投票与榜单身份,不要为了整理文件夹而改它。
  • 当前有两个案例,定义在 cases.json:mythos-craft(HTML,可玩体素世界)与 pelican-cycling(SVG,海边骑车的鹈鹕)。提示词以 cases.json 为准,逐字使用、不要改写。
  • 想知道还缺哪些:读 cases.json(全部案例)与 models/*.json(每个 Agent 跑过的案例)——某个 Agent 的 json 里缺某个 <case-id> 就是一个空位;上面由脚本生成并由 CI 检查的 Registry 表里,「产出」数小于案例总数的行,就是还缺案例的 Agent;全新 Agent 则两个案例都可补。
  • 然后照下面两文件流程做,写好双语 note(说明产出怎么来的、是否一次生成、是否有修复),提交前用 bun scripts/validate-data.ts 自检通过再发 PR。

贡献不需要改任何代码,只涉及两类文件:

  1. 产出文件:推荐放在 outputs/<base-model>/<harness-effort>/<case-id>.<ext>(如 outputs/gpt-5-5-pro/chatgpt-web-extended-pro/pelican-cycling.svg)。
  2. Agent 登记:models/<agent-id>.json(新组合新建文件;已有组合在 runs 里加一条),并用 artifactDir 指向产出目录:
{
  "label": "GPT-5.5 Pro",
  "vendor": "OpenAI",
  "harness": "ChatGPT Web",
  "effort": "Extended Pro",
  "artifactDir": "gpt-5-5-pro/chatgpt-web-extended-pro",
  "order": 20,
  "runs": {
    "pelican-cycling": {
      "note": {
        "zh": "在哪个 Harness 里、什么思考档位、是否一次生成、是否有修复",
        "en": "Which harness, what effort level, one-shot or fixed"
      },
      "contributor": "你的 GitHub 用户名"
    }
  }
}

规则(CI 自动校验,不满足会挂):

  • agent-id 只用小写字母/数字/连字符(如 doubao-seed-2-0-pro),它是稳定身份;没有 artifactDir 时默认读取 outputs/<agent-id>/;
  • artifactDir 只用一层或两层小写 dash-case 路径(推荐 <base-model>/<harness-effort>),它只是产出文件位置,不影响投票与榜单身份;
  • 每条 run 的 note 双语必填——这是本仓库的可信度来源,必须写明产出怎么来的;
  • 声明的 run 必须有对应的产出文件;
  • 同一组合对同一案例可提交多个版本:runs.<case-id> 写成数组,第二个版本起必须用 file 指定不同文件名(如 pelican-cycling-2.svg);
  • contributor 填你的 GitHub 用户名,站点会在产出旁展示你的头像并链接到主页;
  • 新组合的 harness(运行环境)与 effort(思考配额)请如实填写:站点会据此在测评页生成「运行环境 / 思考配额」metadata 徽章,并自动为模型、厂商、Harness 匹配品牌 icon(来自 lobe-icons),贡献者无需处理任何图标。

提 PR 后 CI 自动校验数据;合入 main 后站点自动重建(通常即时,最长 6 小时)。