Codeforces难题不够刷?谢赛宁等造了个AI出题机,能生成原创编程题

文章摘要
【关 键 词】 AI研究、编程竞赛、测试生成、问题生成、LLM应用
Rich Sutton和爱因斯坦等学者强调了提出问题在科学进步中的核心作用,这一观点为评估大型语言模型(LLM)的创新能力提供了理论框架。随着LLM向通用人工智能(AGI)发展,其生成高质量问题的能力成为关键研究方向,尤其在编程竞赛领域,这种能力直接关系到模型对算法本质的理解和实际应用潜力。
竞赛编程问题的设计需要超越单纯解题的深度。标准问题可能通过模板化解决方案掩盖逻辑缺陷,而出题过程要求对算法设计原则、数据结构及复杂度权衡有系统性把握。现有基准测试数据集(如CodeContests+和TACO)存在显著局限性:高误报率使得低效算法通过随机测试,而漏报率则导致正确方案被错误拒绝。这种缺陷扭曲了模型评估环境,促使研究者开发更严谨的验证方法。
LiveCodeBench Pro团队提出的AutoCode框架通过多角色协作系统实现了突破。其核心创新在于“验证器-生成器-检查器”架构,结合双重验证协议,显著提升了测试用例生成的可靠性。验证器确保输入符合问题约束,生成器创建多样化测试案例以覆盖边界情况,检查器则对比参考解法输出。针对交互式任务,系统引入交互器进行多轮对话验证。在包含7538个问题的基准测试中,AutoCode将一致性提升至91.1%,误报率和漏报率分别降至3.7%和14.1%,较现有技术提升约50%。在更具挑战性的720个Codeforces问题测试中,一致性高达98.7%,验证了框架对复杂任务的适应性。
问题生成方面,AutoCode采用“种子问题”改造策略。模型基于现有问题通过增删改条件创造新题目,同时提供高效解法(std.cpp)和暴力解法(brute.cpp)。后者虽效率低但准确性高,可作为验证基准。通过双重验证(暴力解法初筛+完整测试生成周期复审),系统自动过滤27%的缺陷问题,将参考解法正确率从86%提升至94%。人类专家评估显示,80%的生成问题具备训练数据质量,23%包含创造性设计。
研究揭示了LLM在创造性任务中的典型行为模式:模型擅长知识重组而非原创突破。具体表现为:1)能生成自身无法解决的问题;2)倾向于组合现有框架而非发明新范式;3)生成问题难度普遍高于种子问题,且种子难度适中时质量最优;4)人类与模型对问题新颖性的评判标准差异显著;5)难度增幅比自我评估更能反映真实质量。这些发现为LLM能力边界提供了实证依据,表明当前技术更接近“高级重组工具”而非“独立创造者”。
AutoCode的实践意义在于为AGI发展提供了可扩展路径。通过将测试生成与问题创造结合,系统不仅建立了更可靠的评估基准,还探索了模型自我完善的机制。尽管LLM在原创性上存在局限,但其在结构化知识重构方面的表现,以及难度指标作为质量代理的可行性,为自动化竞赛编程和持续学习系统指明了发展方向。这项研究最终推动了对AI创造性潜力的量化理解,同时为复杂软件栈中的模型部署验证提供了方法论支持。
原文和模型
【原文链接】 阅读原文 [ 3296字 | 14分钟 ]
【原文作者】 机器之心
【摘要模型】 deepseek/deepseek-v3-0324
【摘要评分】 ★★★★★