为什么重要
APPS 是最早的大规模代码生成基准之一,按难度分为 Introductory / Interview / Competition 三级,覆盖从基础编程到竞赛难度。它为后续的 CodeContests、LiveCodeBench 等奠定了基础。
构建方式
- 从 Codeforces、Kattis、USACO 等平台收集编程题
- 按难度分三级
- 每题包含题目描述、示例输入输出、隐藏测试用例
任务示例
题目(Interview 级):给定一个数组,找到最长的连续递增子序列的长度。 输入:[1, 3, 5, 4, 7] 输出:3
关键发现
- Competition 级别仍是极大挑战
- 代码生成能力与模型规模高度相关
- 是 pass@k 评测范式的推广者
关联基准
- CodeContests:竞赛编程
- HumanEval:函数级代码生成
- MBPP:基础编程
- LiveCodeBench:动态编程评测
不足与展望
- 部分题目可能已被纳入预训练数据
- 不评测代码质量/可读性
- 但难度分层设计有参考价值