论文

什么时候生成的代码难以理解?评估 AI 代理 Python 代码的实际熟练程度

When is Generated Code Difficult to Comprehend? Assessing AI Agent Python Code Proficiency in the Wild

摘要

AI 编码智能体 的快速采用正在从根本上将软件开发人员的角色从代码作者转变为代码审查者。虽然开发人员花费了大量时间阅读和理解代码,但这些代理生成的 Python 代码的语言熟练程度和复杂性在很大程度上仍未得到探索。这项研究调查了人工智能代理的代码熟练程度,以确定开发人员维护代码所需的技能水平。利用 AIDev 数据集,我们挖掘了 591 个拉取请求,其中包含由三个不同的 AI 代理生成的 5,027 个 Python 文件,并使用 pycefr(一种静态分析工具)来分析代码,该工具将 Python 构造映射到从 A1(基础)到 C2(精通)的六个熟练级别。我们的结果表明: AI 代理主要生成基础级代码,超过 90% 的构造属于 A1 和 A2 类别,不到 1% 属于掌握 (C2) 类别;人工智能代理和人类的拉取请求具有大致相似的熟练程度;人工智能代理的高效率代码来自功能添加和错误修复任务。这些发现表明,虽然具有基本 Python 技能的开发人员通常可以访问人工智能生成的代码,但特定任务可能需要高级熟练程度来审查和维护复杂的、代理生成的构造。