Code-QA-Bench 数据与复现
查看真实任务、字段结构和发布版本;下载数据后,可使用公开评测框架重新运行模型并生成自己的结果。
- 公开任务
- 628
- 任务文件
- 2
- 数据格式
- JSON
- 复现状态
- 部分可复现
任务与框架已公开;论文逐任务输出和 Judge 记录尚未公开。
下载数据
所有文件均来自固定仓库提交。页面不重新打包或修改任务内容。
任务预览
以下样例来自公开任务文件,用于理解输入、参考答案范围和 Verify rubric。
- Task ID
- code-derivable:sympy_gen_03
- Repository
- sympy @ 693a559a
- Key files
- sympy/functions/elementary/_trigonometric_special.py · trigonometric.py · sympy/core/intfunc.py
Where does `ipartfrac` get called, and how does its data flow through `migcdex`, `igcdex`, and `gcdext`?
- Identify that ipartfrac is called in cos._eval_rewrite_as_sqrt, not directly in the sin implementation.
- Explain that ipartfrac uses functools.reduce with a multiplication function to compute the denominator product.
- Explain that complement values are constructed with denom // x and passed to migcdex.
- Task ID
- code-derivable:pytest_gen_04
- Repository
- pytest @ 8ecf49ec
- Key files
- src/_pytest/fixtures.py · src/_pytest/runner.py · src/_pytest/skipping.py
How does pytest handle finalizer failures during fixture teardown, and how are multiple exceptions from different teardown stages combined?
- Explain that FixtureDef.finish() runs all finalizers even when some fail and collects exceptions.
- Identify that finalizers are popped in LIFO order.
- Identify that multiple failures are wrapped in a BaseExceptionGroup with the exception list reversed.
- Task ID
- code-derivable:xarray_gen_01
- Repository
- xarray @ 92601de1
- Key files
- xarray/backends/common.py · xarray/core/utils.py · xarray/backends/api.py
What is the role and architecture of `_normalize_path` in xarray's backend system, and where is it used across the codebase?
- Describe the three overload signatures and the implementation accepting os.PathLike | str | T.
- Describe the os.fspath and local-path expansion transformations.
- Explain that is_remote_uri detects remote URIs and leaves them unchanged.
- Task ID
- code-derivable:django_gen_06
- Repository
- django @ 856c9153
- Key files
- django/contrib/gis/utils/ogrinspect.py · management/commands/ogrinspect.py · gdal/geomtype.py
Why is `ogrinspect` split into a public function and a private `_ogrinspect` generator, and how does the management command exploit that design?
- Explain that _ogrinspect yields model-definition lines while ogrinspect joins them into a string.
- Explain why the management command calls _ogrinspect directly before appending the mapping dictionary.
- Identify get_func_args(_ogrinspect) as the mechanism used to filter accepted CLI options.
字段结构
主任务集和诊断任务集使用同一套核心 JSON 字段。
idstring必填任务在所属任务集中的唯一标识。
repostring必填任务对应的固定版本代码仓库。
questionstring必填提供给被评模型的仓库级代码理解问题。
categoryenum必填问题类别:what、why、where 或 how。
sub_typestring必填更细粒度的能力类型,例如 architecture_exploration。
gold_answerstring必填由工具型生成流程产出的参考答案。
rubricstring[]必填Judge 逐项核对模型答案的评分要点。
key_filesstring[]必填支持答案的关键仓库文件路径。
source_docstring必填用于确定任务主题的原始文档片段。
verification_verdictenum必填自动审核结论:pass、warn 或 fail。
verification_issuesstring[]必填自动审核发现的问题与证据边界。
strip_verify_leakagenumber可选移除文档后仍可能残留的泄漏估计。
复现评测
命令来自仓库 README。重新运行需要模型 API 和 Judge API 凭证,结果可能随模型端点版本变化。
01 安装
创建环境并以 editable 模式安装仓库。
uv venv source .venv/bin/activate uv pip install -e ".[dev]"02 准备仓库
根据 repos.json 获取固定版本仓库并生成 stripped 版本。
code-qa-bench setup-repos code-qa-bench strip-repos03 运行模型
运行主任务集的 Code-only 条件;模型凭证配置在 config.json。
code-qa-bench run --model my-model --condition stripped04 评分与报告
使用 Judge 对已保存回答评分并生成聚合报告。
code-qa-bench judge results/my-model.json --judge-model judge-model code-qa-bench report results/my-model_judged_by_judge-model.json
证据与版本
明确区分可检查的数据、论文报告结果和尚未发布的运行级证据。
仓库提交了 528 个 code-derivable 和 100 个 doc-dependent 任务,并固定 10 个上游仓库 commit。
页面分数和 95% CI 来自 arXiv:2605.29277v1;CI 使用 10,000 次 bootstrap(seed 42)。
论文提供聚合表,但被审查的公开仓库提交中没有逐任务模型输出和 judge 结果,因此不标记为 fully verified。
v1 未进行人工验证,也没有报告 inter-judge agreement;这是正式比较时必须保留的限制。