Benchmark · coding

MBPP

saturated 3 条结果 3 个模型

MBPP(Mostly Basic Python Problems)是一个代码生成基准,包含约 1000 道用浅显英文描述的入门级 Python 编程任务,每道题都配有自动测试用例。它衡量模型第一次尝试就写出正确函数的频率,以 pass@1 指标报告。

了解更多
示例
一个典型题目要求模型根据一行描述编写一个小的 Python 函数——例如「写一个返回第 n 个 Fibonacci 数的函数」或「判断一个字符串是否为回文」——随后用附带的几个基于 assert 的测试来运行它。
评分方式
指标是 pass@1:对每道任务模型生成一个解答,得分是生成代码通过该任务全部测试用例的任务所占的比例。
验证方式
解答由自动方式判定:生成的函数会在该任务基于 assert 的单元测试上运行,只有全部测试通过才算正确(没有人工评判,也不做精确字符串匹配)。
为何重要
MBPP 是一个历史悠久、易于运行的基础 Python 代码生成基线;由于如今的强模型得分已接近上限,它被认为已经饱和(saturated),如今更多用作合理性检查,而不是区分顶尖系统的手段。
示例解析
任务
MBPP 风格题目:“编写一个 python 函数,统计给定小写字符串中元音字母(a、e、i、o、u)的个数。”它附带三个隐藏的 assert 测试,例如 assert count_vowels('hello') == 2assert count_vowels('world') == 1assert count_vowels('rhythm') == 0;函数名必须与测试调用的名称一致。
解答
def count_vowels(s):
    return sum(1 for ch in s if ch in 'aeiou')
解析
遍历字符串并统计属于元音集合 'aeiou' 的字符,对三个输入分别得到 2、1、0,因此所有 assert 都通过。MBPP 通过对全部三个附带的 assert 测试运行所生成的函数来判定通过/失败(功能正确性,pass@k)。
0 19.5 39 58.5 78 2024-12-17 2025-10-01 2026-07-16 Falcon3-10B-Base · 73.8 · 2024-12-17 Qwen3.5-4B · 13 · 2026-07-13 Granite 4.0 3B · 63.2 · 2026-07-16
Falcon3-10B-Base Qwen3.5-4B Granite 4.0 3B
时间线
日期 模型 得分 来源
2026-07-16 Granite 4.0 3B 63.2% IBM开源CodeAlchemy,一个包含高质量代码的海量合成数据集
2026-07-13 Qwen3.5-4B 13.0% Flint压缩推理轨迹以减少令牌使用量同时保持准确性
2024-12-17 Falcon3-10B-Base 73.8% Falcon3 系列发布五款开源模型,提升科学、数学和代码能力