内容提要
本文探讨如何量化AI在软件开发中的投资回报率。作者指出,AI虽能提升生产力,但成本高昂,且自我评估常不准确。建议避免使用代码行数或拉取请求数量衡量效率,而应关注交付速度、意外后果及业务成果,并考虑长期影响。系列文章分四部分,强调以数据而非直觉进行决策。
延伸解读
成本与收益的权衡
文章指出,AI带来的生产力提升可能伴随着高昂的token成本,例如有组织每人每月花费数千美元。这种成本最终可能来自人事预算,因此需要权衡速度提升与成本增加。如果成本过高导致裁员,实际ROI可能并不理想。因此,评估AI投资时,不能只看速度提升,还要考虑成本对团队规模和整体效益的影响。
避免使用代码行数和PR数衡量效率
作者明确反对用代码行数或拉取请求(PR)数量来衡量AI生产力。代码行数与生产力无关,AI生成的冗长代码反而可能增加维护成本。PR数量同样不可靠,因为AI能快速生成大量代码,可能超出工程师的审查能力,且PR本身具有任意性。这些指标容易被游戏化,导致测量结果失真。
测量方法而非个人绩效
文章引用古德哈特定律,强调一旦指标成为目标,就不再是好指标。建议不要用这些指标来评估团队或个人绩效,而是用来评估特定AI方法的效果。测量应针对方法本身,定期重复,但避免长期作为绩效标准,以防员工为迎合指标而走捷径,导致真实绩效下降。
Q&A
如何量化AI在软件开发中的投资回报率?
文章建议不要使用代码行数或拉取请求数量来衡量,而应关注交付速度、意外后果和业务成果,并考虑长期影响。需要测量实际影响而非依赖自我评估,同时要明确成本假设,考虑价格变化和变革管理成本。
为什么不能使用代码行数来衡量AI生产力?
因为代码行数与生产力无关,AI生成的代码往往冗长,衡量代码行数实际上是在衡量“slop”(冗余代码),而不是真正的生产力。
为什么拉取请求数量不适合作为AI生产力的衡量标准?
因为拉取请求是任意的,大小和内容差异很大,没有内在的相关性。AI能快速生成大量代码,可能使工程师难以跟上,导致PR数量不再反映一致的开发节奏,且容易被游戏化。
AI投资中除了直接成本外,还有哪些隐性成本?
隐性成本包括:AI工具订阅和token费用(可能很高)、变革管理成本(员工学习时间导致初期生产力下降)、以及可能的裁员或人员调整带来的影响。
为什么自我评估的AI生产力提升不可靠?
因为研究表明,工程师自我评估的生产力提升往往高于实际。例如,METR研究中,工程师认为AI使他们快20%,但实际上慢了19%。因此,需要客观测量而非依赖主观感受。
在计算AI投资回报率时,应如何考虑token价格的变化?
不应假设当前价格不变,应明确假设并考虑乐观和悲观情景。价格可能因补贴结束而上涨,也可能因开源模型、本地推理、专用芯片和模型效率提升而下降。
为什么衡量AI影响时要关注长期后果?
因为短期生产力提升可能带来长期问题,如维护成本增加、工程师倦怠和人才流失。需要测量意外后果并预测未来问题,以确保可持续性。
在衡量AI生产力时,应如何避免古德哈特定律的影响?
应避免将指标作为个人或团队的绩效目标,而是用于评估特定AI方法的效果。定期测量,但不要持续作为目标,以防止员工为了指标而采取捷径,导致真实绩效下降。