BigO(Bench) —— 大语言模型能否生成具有控制时间和空间复杂度的代码?
计算与语言
2025-03-21 v2 人工智能
计算复杂性
摘要
我们介绍 BigO(Bench),这是一套新的编码基准,旨在评估生成式语言模型在理解和生成具有指定时间复杂度和空间复杂度的代码方面的能力。该基准解决了当前评估常常忽视模型理解和生成受计算复杂度约束代码的能力这一空白。BigO(Bench) 包括用于从概率测量推断任何 Python 函数算法复杂度的工具,包括来自人类或大语言模型生成的解决方案。BigO(Bench) 还包括 3,105 个编码问题和 1,190,250 个来自 Code Contests 的解决方案,这些解决方案标注了从复杂度框架推断的(人造)时间复杂度和空间复杂度标签,以及对应运行时间和内存占用值,这些值针对大量输入规模。我们展示了对多种前沿语言模型在此基准上进行评估的结果,凸显了它们在处理复杂度要求方面的优势和不足。特别是,基于 token 空间推理的模型在代码生成方面无与伦比,但在复杂度理解方面不行,这表明它们可能在没有在训练时给出奖励的任务上难以泛化。
引用
@article{arxiv.2503.15242,
title = {BigO(Bench) -- Can LLMs Generate Code with Controlled Time and Space Complexity?},
author = {Pierre Chambon and Baptiste Roziere and Benoit Sagot and Gabriel Synnaeve},
journal= {arXiv preprint arXiv:2503.15242},
year = {2025}
}