Workflow
问题生成
icon
搜索文档
Codeforces难题不够刷?谢赛宁等造了个AI出题机,能生成原创编程题
机器之心· 2025-10-20 04:50
研究背景与意义 - 大型语言模型正朝着通用人工智能迈进,测试其生成问题的能力变得日益重要,尤其是在高级编程任务的应用中[1] - 为编程竞赛出题需要比解决问题更深刻的算法理解,旨在评估对底层算法设计原则、数据结构和复杂性权衡的更深层次理解[2] - 提升出题能力将带来更严谨的竞赛编程基准测试,现有测试数据集存在高误报率和高漏报率的问题,造成扭曲的评估环境[2] - 成功提出新颖挑战可能为模型的自我完善和通用人工智能铺平道路,同时验证模型在复杂软件栈中的部署情况[3] AutoCode框架概述 - AutoCode是一个系统性框架,可在闭环、多角色系统中使用大型语言模型,自动化竞赛编程问题创建和评估的整个生命周期[3] - 该框架由验证器-生成器-检查器构成,验证器确保输入严格遵守问题描述的所有约束,是系统基石[8] - 生成器采用多样化策略创建广泛输入以减少误报率,无效案例会被验证器过滤[10] - 检查器用于评估参赛者输出,与参考解法输出进行比较,交互器则处理交互式任务的多轮对话判决[12][13] - 框架特别关注降低误报率,为强化学习从验证结果提供高质量的验证器[14] 测试用例生成性能 - 在包含7538个问题的基准上,AutoCode与官方判决的一致性达到91.1%,较之前方法最高81.0%有显著提升[21] - AutoCode将误报率大幅降低至3.7%,漏报率降低至14.1%,这两项指标相较于当前最先进技术均减少约50%[21] - 在更具挑战性的包含720个近期Codeforces问题的基准上,AutoCode实现了98.7%的一致性,验证了其在现代、困难问题上的有效性[24] - 通过消融实验验证了框架各组成部分的有效性,完整框架性能最优[26] 问题生成能力与发现 - 问题生成框架引入双重验证协议,利用暴力解法作为可靠的事实标准,实现自动化正确性校验[29] - 双重验证协议成功过滤掉27%的易错问题,将大型语言模型提供的参考解法正确率从86%提高至94%[30] - 超过80%的生成问题被标注为具有足够质量可作为模型训练数据,23%的问题涉及新颖或创造性设计[30] - 大型语言模型能够生成它们自己无法解决的可解问题,更擅长知识重组而非原创创新[34] - 生成问题的难度和相较于种子问题的难度增益,是比模型自我评估更好的问题质量指标[34] 研究总结与影响 - AutoCode在测试用例生成方面实现了最先进的可靠性,并能生成达到竞赛质量的全新问题[36] - 模型擅长算法知识的重组,但难以引入真正新颖的推理范式或无懈可击的样例设计[37] - 难度和难度增益可作为问题质量的可靠智能体信号,为实现自我博弈提供可扩展路径[38]