Skip to main content
分数落在控制台的 Benchmarks 页,和所有其他 run 在同一个矩阵里—— 跨 run、跨方法、跨基座模型都可比。
StarForge 评测页

评测矩阵:纵向是 run,横向是基准,最高分高亮。

能给什么打分

给 run 打分要求它已经导出过。提交时加 --then export 就不用记着这件事了。

有哪些基准可用

内置:gsm8kmathhumanevalmmlucevalifeval,加上 RTL 系列。 所有以 benchmark 包发布的也会出现在这里。 这几个轴是刻意挑的——数学、代码、知识、中文、指令遵循。 后训练会稳定地改进其中一个,同时悄悄损伤另一个, 而同时跑好几个,正是让这件事在进入生产之前而不是之后被看见。

常用选项

--limit 的分数和完整跑出来的分数不可比,而且下游没有任何地方会标注它是截断的。 用它确认流程能跑通,然后去掉它再跑一次。
两个 runner 产出同一套分数契约,所以同一个基准无论谁跑的都直接可比。 选哪个 runner 不会扭曲这个数。

让每次 run 都自动打分

手动跑一次没问题。让它在每次 run 上都发生,才是阻止回退进入生产的东西:
或者在实验配置里声明评测门禁,让低于阈值的 run 被标记为未通过门禁—— 见你所用方法模板里的 eval: 段。

读懂这个矩阵

分数是幂等入库的:同一个 run 和同一个基准再报一次是更新那一行,而不是多出一行。 每个指标都带声明好的方向,所以对比视图不用猜哪边算好。 一个基准声明了多个指标时,它们之间的差往往才是有用的那部分—— GSM8K 的严格与宽松匹配拉开差距,意味着模型会算,但没按要求的格式输出。

在平台之外打分

harness 在这里跑不了时——有授权限制的工具、真实的测试台架——把分数报回来:
create 返回一个 run id,submit 把分数文件报给它。--train-run 是让评测门禁和模型版本 接受这些分数的关键——不带它,分数会被记录,但不具备权威性。 它们进同一个矩阵,并标记为外部产生。

确认成功

然后打开 Benchmarks 页。你那次 run 出现了一行、每个申请的列都有分数,就说明成功了。 某一列是空的说明那个 suite 失败了——作业日志里会说明是哪个。

下一步

写一个 benchmark 包

声明你自己的评测集:跑什么、读哪些数。

Rubric

规则打不了分的东西,用 LLM 裁判按成文标准打。