CoCoNUT
收藏github2025-01-29 更新2025-02-10 收录
下载链接:
https://github.com/seal-research/structural-code-understanding-dataset
下载链接
链接失效反馈官方服务:
资源简介:
CoCoNUT数据集用于研究大型语言模型在理解结构化代码执行方面的能力。该数据集包含从Java和Python程序中生成的执行轨迹,涵盖了高级代码概念如面向对象编程、并发和递归。数据集还包含了用于生成这些轨迹的脚本和代码。
The CoCoNUT dataset is developed to investigate the capabilities of large language models in comprehending structured code execution. It includes execution traces generated from Java and Python programs, covering advanced code concepts such as object-oriented programming, concurrency and recursion. Additionally, the dataset provides the scripts and source code used to generate these execution traces.
创建时间:
2025-01-27
原始信息汇总
CoCoNUT: 结构化代码理解数据集
数据集描述
CoCoNUT 数据集旨在研究大型语言模型在结构化代码执行理解方面的能力。该任务涉及重现给定函数或一组函数在特定输入参数集上执行的代码行。此任务具有挑战性,因为它需要考虑多个因素,如回忆相关参数值、评估表达式、解析方法调用以及跟踪堆叠执行。
数据集包含用于生成和引出 Java 和 Python 程序跟踪的不同脚本。跟踪数据集也在 HuggingFace 上共享。
数据集结构
- Dataset:包含按功能分类的短程序,以及大部分跟踪和生成它们的代码。
- Results:包含不同模型生成的跟踪,分为 HumanEval 和复杂(例如高级概念)。
- Models:包含不同语言模型的具体配置文件以供本地运行。
- Visualizations:包含各种发现的基本可视化。
性能指标
性能指标分为两种评估设置:COT(Chain-of-Thought 推理)和直接提示。
COT 评估
- Acc Hard (%):所有测试完全正确跟踪的准确率。
- Acc Mean (%):所有示例的所有测试的平均准确率。
- Sim:预测和真实跟踪之间的平均相似度分数。
- False Sim:仅基于错误预测的相似度分数。
任务性能(高级概念)
- 面向对象:40 个程序,200 个跟踪。
- 递归:66 个程序,330 个跟踪。
- 并发:20 个程序,100 个跟踪。
引用
bibtex @misc{beger2025coconutstructuralcodeunderstanding, title={CoCoNUT: Structural Code Understanding does not fall out of a tree}, author={Claas Beger and Saikat Dutta}, year={2025}, eprint={2501.16456}, archivePrefix={arXiv}, primaryClass={cs.LG}, url={https://arxiv.org/abs/2501.16456}, }
搜集汇总
数据集介绍

构建方式
CoCoNUT数据集的构建旨在探究大型语言模型在理解结构性代码执行方面的能力。该数据集通过选取Java和Python程序,生成并提取执行跟踪,进而构建包含不同功能短程序的多个子集,以及相应的执行跟踪。数据集的构建涉及了从程序中提取执行路径、参数值、方法调用解析以及执行栈的跟踪等复杂过程。
特点
CoCoNUT数据集的特点在于其涵盖了代码执行的复杂性,包括对面向对象编程、并发和递归等高级代码概念的支持。数据集不仅包含了代码执行跟踪,还提供了多种语言模型在不同任务上的性能比较,以及针对高级概念的专门任务性能评估,为研究者提供了丰富的实验材料和基准。
使用方法
使用CoCoNUT数据集时,用户可以从HuggingFace平台下载相应的数据集。数据集的使用涉及加载不同功能的程序及其执行跟踪,通过比较不同语言模型在HumanEval和复杂概念任务上的表现,来评估模型在结构性代码理解方面的性能。用户可以利用数据集中的配置文件在本地运行特定的语言模型,并进行性能分析。
背景与挑战
背景概述
CoCoNUT数据集的研究背景源于对大型语言模型在结构化代码执行理解方面的能力探究。该数据集由Claas Beger和Saikat Dutta于2025年创建,旨在评估模型对于给定函数及其输入参数特定集合的代码行执行再现任务的表现。此任务因需回忆相关参数值、评估表达式、解析方法调用及跟踪嵌套执行而具有挑战性。数据集涵盖了诸如面向对象编程(OOP)、并发性和递归等高级代码概念,并在HuggingFace平台上共享了生成的迹数据。CoCoNUT数据集对于理解代码执行过程、提升程序理解自动化水平具有重要的研究价值,对软件工程和人工智能领域产生了显著影响。
当前挑战
CoCoNUT数据集面临的挑战主要包括:1)理解和再现结构化代码执行的复杂性,特别是在处理高级代码概念如OOP、并发和递归时;2)构建过程中,生成和收集代码执行迹的准确性,以及确保不同语言模型在各种代码理解和执行任务中的有效性和泛化能力。数据集的评估结果显示,即使是大型语言模型,在理解复杂代码结构和执行方面也存在一定的局限性,这提示了未来研究和模型改进的方向。
常用场景
经典使用场景
CoCoNUT数据集专注于探究大型语言模型对结构化代码执行理解的能力。其经典使用场景在于,通过给定的输入参数,重现特定函数或一系列函数所执行的代码行。这一过程涉及参数值回忆、表达式评估、方法调用解析以及执行堆栈跟踪等复杂任务,为理解和评估大型语言模型在代码执行理解方面的性能提供了重要基准。
解决学术问题
该数据集解决了在代码理解领域,尤其是结构化代码执行理解方面的多个学术研究问题。它为研究者提供了一个评估大型语言模型在处理如面向对象编程、并发和递归等高级代码概念时的性能的平台。CoCoNUT通过精确追踪和重现代码执行路径,帮助学术界深入理解代码执行过程中模型的推理能力和局限性。
衍生相关工作
基于CoCoNUT数据集,已经衍生出一系列相关研究工作,包括但不限于对现有模型的性能评估、新型语言模型的训练与测试,以及针对特定编程语言或编程范式(如面向对象编程、并发编程)的代码理解研究。这些工作进一步推动了代码理解领域的发展,拓宽了结构化代码执行理解的研究视野。
以上内容由遇见数据集搜集并总结生成



