← 返回总榜 📋 评测方法论

📋 评测方法论

30题LLM综合能力榜 · 完全开放评测方案 · 任何人都可复刻验证

1测试设计原则

核心哲学:真实任务 vs 刻意难题

本评测拒绝"考试型题目"(背诵 factual knowledge、知道某个冷门日期),坚持使用真实场景中有区分力的题目:

题目分类(6维度 × 30题)

题目难度分层

⚠️ 刻意规避的题目类型
  • 需要联网检索的实时信息题(模型知识截止日期不同,测不准)
  • 纯粹考 factual recall 的题("XXX是哪年"类型)
  • 有标准答案但推理路径主观的创意写作题
  • 涉及版权内容的文本补全题
2评分标准(Rubric)

每道题由裁判模型独立打分,满分100分,评分维度及权重:

维度 权重 评分标准
正确性(Correctness) 50% 答案是否正确?结论/代码/计算是否与标准答案一致?
完整性(Completeness) 15% 是否回答了题目的所有子问题?是否有遗漏的部分?
深度(Depth) 25% 是否展示了深层理解?是否有洞见?推导过程是否严谨?
清晰度(Clarity) 10% 表达是否条理清晰、结构良好、术语使用准确?

最终得分公式:

score = c × 0.5 + comp × 0.15 + d × 0.25 + cl × 0.1

评分示例

例题:M03 — 斐波那契数列变形
"设 f(1)=1, f(2)=2, f(n)=f(n-1)+f(n-2)(n≥3)。求 f(10)。"
典型满分答案(100分):
正确识别递推关系,建立 f(1)=1, f(2)=2;列出完整推导 f(3)=3, f(4)=5, f(5)=8, f(6)=13, f(7)=21, f(8)=34, f(9)=55, f(10)=89;验证正确。
c=95, comp=95, d=85, cl=90 → score=92
次优答案(80分):
答案正确(89),但没有展示完整推导过程,只给了最终结果。
c=90, comp=70, d=75, cl=80 → score≈82.25

常见扣分模式

💡 为什么权重这样设计?

正确性50%是底线——答错了其他再好也没意义。深度25%是区分顶级模型和普通模型的关键。清晰度10%看似低,但代码类题目清晰度直接影响可运行性。

3裁判(Judge)选择

采用多裁判独立评分方案,避免单一裁判的偏见对结果产生决定性影响。

裁判-A
kimi-k2.5
风格:温和稳定型
打分区间:91~100(偏高)
成功率:100%
特点:尺度最宽松,对弱模型也会给相对高的分数
裁判-B
minimax-m2.7
风格:尺度最严型
打分区间:61~100(波动大)
成功率:100%
特点:会给满分也会给极端低分,是区分"真会"和"碰巧会"的关键
裁判-C
qwen-3.5-plus
风格:中等偏严型
打分区间:82~97
成功率:~50%(部分题目超时)
特点:Qwen 家族内部打分偏严,适合作为同族参考基准

为什么选这三个裁判?

⚠️ 裁判局限性

裁判模型本身也是大模型,存在自己的偏好和偏见。例如:minimax 对长文本理解题打分普遍偏低;qwen 对 Qwen 系列答案打分偏严。最终得分是多方面权衡的结果,而非绝对客观真理。

三裁判分数合并方式

最终得分 = 三个裁判的简单算术平均(不加权):

final_score = (kimi_score + minimax_score + qwen_score) / 3
4题目来源与标准答案

题目来源

标准答案(Ground Truth)

每道题都有预先生成的标准答案,由人工审核确认:

5如何复刻本评测

本评测方案完全开放,任何人都可以用自己的模型复刻验证。以下是完整复刻步骤:

Step 1:准备题目文件

📄
questions.json
30道题目 + 评分标准 + 标准答案。可联系作者获取。

Step 2:选择裁判模型

# 推荐裁判组合(任选其一): # 组合A:与原评测相同 JUDGE_A = "kimi-k2.5" JUDGE_B = "minimax-m2.7" JUDGE_C = "qwen-3.5-plus" # 组合B:全换为其他模型 JUDGE_A = "claude-sonnet-4.6" JUDGE_B = "gpt-5.4" JUDGE_C = "gemini-2.5-pro"

Step 3:批量获取模型答案

# 伪代码示例 for each question in questions: prompt = question.text + "\n\n评分标准:\n" + question.rubric answer = model.generate(prompt) save(question.id, answer)

Step 4:批量评分

# 伪代码示例 for each question in questions: score_prompt = ( "题目:" + question.text + "\n\n" + "标准答案:" + question.verified_answer + "\n\n" + "待评分答案:" + model_answer + "\n\n" + "请按以下标准评分(c/comp/d/cl 各0-100):" + question.rubric ) score = judge_model.generate(score_prompt) parse_and_save(question.id, score)
✅ 完全复刻的检查清单
使用完全相同的 questions.json✓ 必需
使用相同的 Rubric 评分标准✓ 必需
使用相同的三裁判组合✓ 必需
裁判 temperature = 0(确定性输出)✓ 强烈推荐
裁判 prompt 完全相同✓ 强烈推荐
题目顺序随机打乱(防止位置偏见)✓ 推荐
💡 如果你的结果与本评测不同

不同是正常的!可能原因:① 裁判模型版本不同 ② temperature 非零导致随机波动 ③ 题目顺序/格式微小差异 ④ 模型本身更新。建议用完全相同的配置复刻后再下结论。

6数据与透明性

数据公开范围

已公开
完整题目列表、评分标准、每题得分、各模型总分排名、裁判打分细节
🔒
未公开
标准答案完整内容(防止模型直接背答案)、API 调用日志

潜在利益冲突声明

已知局限性