AI智能总结
生成 AI 和劳动生产率 : 编码的现场实验 列奥纳多 · 甘巴科尔塔、韩秋、硕山和丹尼尔 · M · 里斯 货币和经济部 2024 年 9 月 JEL 分类: D22, G31, R30 关键词 : 人工智能 , 生产力 , 现场实验 , 大技术 国际清算银行(BIS)工作论文由国际清算银行货币与经济部门的成员撰写,有时也会由其他经济学家撰写,并由银行出版。这些论文关注当前热点议题,具有技术性。论文中表达的观点是作者个人的意见,不一定代表国际清算银行的立场。 该出版物可在 BIS 网站(www. bis. org) 上获得。 版权所有 © 国际清算银行 2024。所有权利保留。简短摘录可能被复制或翻译,前提是来源需被声明。 ISSN 1020 - 0959 (打印) ISSN 1682 - 7678(在线) 生成 AI 和劳动生产率 : 编码的现场实验 莱昂纳多 · 甘巴科尔塔、韩秋、硕山和丹尼尔 · M · 里斯 * Abstract 本文探讨了生成型人工智能(Gen AI)对劳动生产率的影响。2023年9月,蚂蚁集团推出了CodeFuse,这是一种大型语言模型(LLM),旨在帮助编程团队进行编码工作。当一组程序员使用了此LLM时,另一组未被告知有关此LLM的信息。我们利用这一事件,对这两组程序员进行了实地实验。我们将使用CodeFuse的员工识别为处理组,并将其与控制组中具有可比性的员工配对,以评估AI对其生产力的影响。我们的研究发现,Gen AI的使用使代码输出增加了超过50%。然而,只有初级或较低级别员工的生产力提升在统计学上具有显著性,而对于更高级别的员工,其影响较为不明显。 JEL 代码 : D22 , G31 , R30 。关键词 : 人工智能 , 生产力 ,现场实验 , 大技术。 1. Introduction 生成人工智能 (gen AI)1工具具有提升工人生产力的潜力。各种通用人工智能(gen AI)模型在临床护理、教育、语言建模、艺术、音乐和设计等领域展示了与人类相当的能力(Gupta等,2024年)。目前,关于商业和非商业应用的研究文献正在增多(Luo等,2022年;Shaji George和Gabrio Martin,2023年)。) , 道德考虑 (Nassar 和 Camal , 2021 年 ;Shet 和 Baker , 2024), 监管框架 (布拉德福德 , 2023 年 ;Aldasoro 等人 , 2024a) , 暗示安全(Sandoval等人,2022年;Aldasoro等人,2024年b)和教育(Kasneci等人,2023年;Bahroun等人,2023年;Imran和Almusharraf,2023年),对于要求认知能力的任务中的人工智能对生产力的影响,几乎没有实证研究(Brynjolfsson和Raymond,2023年;Noy和Zhang,2023年;Peng等人,2024年)。 为了研究生成式人工智能(gen AI)对生产力的影响,本文利用了蚂蚁集团的相关数据,这是一家与之相关的中国大型科技公司。在2023年9月,蚂蚁集团推出了CodeFuse,一个大型语言模型(LLM),旨在协助软件开发团队进行编码工作。在广泛发布之前,为了一段为期六周的初始试用期,该LLM仅对选定的开发者团队开放使用。利用这一事件,我们考虑了一个针对这两组程序员的现场实验。我们将使用CodeFuse的员工识别为处理组,并将其与控制组中具有可比性的员工配对,以评估人工智能对其生产力的影响。2 结果表明,LLM(大型语言模型)可以提升程序员的生产力。将具有相似生产力水平和工作经验的程序员分为两组,一组有访问LLM,另一组没有,通过衡量代码行数这一指标,发现平均生产力提高了55%。大约三分之一的这种增长可以直接归因于LLM生成的代码行,其余部分则来自于程序员代码效率的提升(这可能反映了用于其他编程任务的时间增加)。 通过划分程序员的经验等级揭示了显著差异:仅在初级程序员中,生产力有所增加。对比不同经验水平的工作者提出的请求数量和对LLM建议的接受率,这些差异变得清晰可见。 资深程序员使用LLM的频率较低。同时,接受率(即程序员采纳LLM建议的频率)与经验水平无关。这些发现表明,LLM对资深程序员生产力影响较小的原因在于他们的参与度较低,而非LLM缺乏实用性。 2. 现场实验的结构 我们进行了一项受控实验,以测量使用CodeFuse(一种用于辅助特定程序员团队编码的大型语言模型)对生产力的影响。实验总共进行了12周,从9月4日(星期一)开始。th, 2023 年 , 于 11 月 25 日星期五结束th 2023 年 , 就在 CodeFuse 对所有程序员普遍可用之前。对于实验 , 我们考虑了随机样本1,219名程序员中。从2023年9月4日到10月14日,对335名来自两个特定部门的治疗组程序员进行了通知,并收到了关于新LLM的精确指导。th在此期间,他们开始使用CodeFuse。同时,我们还分析了一个由884名来自其他部门的程序员组成的控制组,这些程序员并未被告知引入了CodeFuse。 The治疗组和对照组由具有类似级别的程序员组成ex-ante经验与生产力。表1展示了处理组(面板A)、对照组(面板B)和整个样本(面板C)的 汇总统计信息。不可随时间变化的程序员特征在CodeFuse引入前的九月初记录,并且在比较两个群体时非常相似。我们考虑了四个专业级别的程序员,从P5,即职业生涯初期的专业人员,到P8,这是样本中最资深的程序员。两组在工作经验方面也相当相似。例如,拥有超过一年工作经验的资深经济学家分别占处理组的40%和控制组的44%。 在表格底部,我们还报告了引入LLM前后两组的生产力水平。数据每两周收集一次,总共收集了7个意见 :LLM可获取的前三两周、其引入的两周以及对治疗组释放后的三周。我们的关键因变量为:代码 行的量这是一项对于科技公司程序员工作产出的重要指标。在CodeFuse引入前的六周内,处理组和对照组的输出行数出现了非常相似的数量。 代码(6.46 与 6.44 , 在日志中 , 标准误差分别为 2.61 和 2.56) 。3然而,在引入CodeFuse后的八周内进行比较时,我们发现对照组的工作效率增加了33%,从6.46提升至6.79,而处理组的工作效率减少了20%,从6.44降至6.24。这一下降主要归因于十月初中国的一个公共假期。以相对而言,治疗组与对照组相比,整体工作效率的增加大约为53%。 我们也有机会task针对每位员工对LLM的请求,我们基于数据进行了详细记录。具体来说,我们可以追踪治疗组中每个程序员是否使用了CodeFuse,他们开始使用的时间,以及对其使用的定性指标。这一方面至关重要,因为生成式AI应用会提出供程序员接受或拒绝的代码行。只有当程序员接受这些代码行时,才能表明他们对AI建议的满意。我们通过一个AI应用来跟踪LLM的建议是否被接受或拒绝,该应用将提出的代码行与最终输出进行比较。我们采用了两种不同的接受率度量标准:一是接受的代码行数量占总建议的数量比例,二是更细致地分析接受的单词数量占总单词数量的比例。 3. Results 为了排除治疗组和对照组中选择偏差可能影响我们的结果的可能性,我们采用倾向得分匹配结合差分-差分分析的方法。首先,在CodeFuse引入前的时期(预处理期)对选定程序员的特性进行平均,并利用总代码行数的对数、专业级别以及工作经验来预测接受治疗的概率。最后,我们将治疗组中的每个程序员与控制组中具有最接近倾向得分的一个或多个程序员进行匹配,这反映了被治疗相同概率的反映。4 分析的主要结果在图1左图中表示。正如我们以对数形式表达变量,在此图垂直轴上报告的内容可以解释为代码行数的增长率。如前所述,我们在横轴上报告了7个两周周期:LLM引入前的三个两周周期,以及LLM引入后的两个周期。 引入(表示为0)以及在CodeFuse引入后的连续三个两周时期(总计另外6周)。 我们的研究结果表明 , 使用使代码输出增加 55%平均而言,且这种积极影响随着时间保持相当稳定。这一结果在文献中与其它发现定性上相似。例如,Peng等(2024)的研究发现,引入GitHub Copilot(一种人工智能编程助手)使得处理组完成任务的速度比对照组快了56%。 要回答的一个重要问题是生成式 AI 如何影响生产力 ?额外代码行使得程序员在特定请求时从LLM获得,对生成AI有明显的、机械的和直接的影响。但也有间接效应,因为生成式AI可以帮助程序员节省时间、更好地组织工作,并有更多空闲时间投入到更复杂和富有创意的任务中。因此,我们分析了程序员生成代码(以及其中的单词)的行数(或单词数量),以确定直接从LLM生成并由程序员“批准”的代码行数/单词数量。图表1右栏报告的结果表明,直接LLM输出仅能带来11%-18%的生产力提升(具体取决于我们考虑的是代码行数还是单词数量)。这意味着剩余36%-43%的生产力提升可能是由于时间节省,因为AI可以帮助程序员克服编程过程中的瓶颈。 在第二步中 , 我们还分析了潜在的具有不同经验水平的程序员之间的 gen AI 的异质效应为了达到这一目标,我们开发了一个补充测试,通过将初级程序员和高级程序员分开。具体来说,初级程序员的工作经验不超过一年,而高级程序员则有超过一年的经验。这个测试的结果,如图2所示,表明人工智能对生产力的积极影响尤其明显于入门级或初级员工中,代码量增加了67%。相反,对更高级员工的影响是积极的但不具有统计显著性。 比较LLM 建议的请求数和接受率工人经验水平不同的情况下的数据揭示了这些差异。图3左图中的红色线显示,在LLM引入后请求量与程序员的工作年限之间存在负相关关系。具体而言,横轴代表工作经历水平,范围从不到一年到五年或更长时间。纵轴(左侧刻度)显示在引入CodeFuse后每用户请求的数量。红线表明每用户请求总数随工作经验年限急剧下降。在大约900左右时,程序员在 8 周内不到两年的经验 , 平均到 大约每周110个,每天19个。对于更有经验的程序员(超过5年工作经验),数量大约是前者的二分之一,约450个,平均每周大约55个,每天9个。因此,s...高级程序员较少使用 LLM 。 4. 为什么高级程序员从 CodeFuse 中获益较少? 为了更深入地探讨为什么高级程序员从CodeFuse中获益较少,我们已从差分-差分方法转向对335名程序员处理组的标准OLS分析。我们还将分析扩展到总共10个观察点,因此涵盖了CodeFuse引入后的20周时间跨度。表2中呈现的结果确认了差分-差分分析的结果。我们使用...高级程序员的经验(列I)和由工作年限(列II)给出的更细致的职位成熟度衡量。在两种情况下,我们检测到了一个负相关关系,即通过CodeFuse生成AI应用请求的代码行数与程序员的经验之间。从第一列中,我们可以看到,高级程序员比初级程序员大约少寻求AI建议70%。从第二列观察到,随着工作经验的增加,求助请求也在减少。每增加一年编程经验,依赖AI生成的代码建议减少了13%。 同时,接受率(即程序员同意LLM建议的频率)与经验水平无关。蓝线表示,在大约15%到20%的时间里(右侧刻度),无论是资深还是初级的程序员,都会采用CodeFuse的建议。这些发现表明,LLM对资深程序员生产力的影响较小,原因在于他们与LLM的互动较少,并非因为LLM缺乏实用性。 在表格3中,我们探讨了不同任务接受率的发展情况,由此导致的观察样本数量相较于之前的回归分析有所增加。在列(I)和(III)中,我们分别单独考虑了所有任务;而在列(II)和(IV)中,我们引入了一个特定的虚拟变量,该变量对于复杂任务赋值为1,而对于非复杂任务则赋值为0。否则我们将复杂任务定义为那些需要编写完整的程序段落而非单行命令的任务。如同表2所示,我们在(I)-(II)列中