作者:METR 研究團(tuán)隊(duì) 翻譯與整理:編程獅(w3cschool.cn)
一、研究背景:為什么關(guān)注AI對(duì)開發(fā)者效率的影響?
隨著AI工具在軟件開發(fā)領(lǐng)域的廣泛應(yīng)用,理解其對(duì)開發(fā)者效率的實(shí)際影響變得至關(guān)重要。此前的編碼/代理基準(zhǔn)測(cè)試雖然有助于了解AI能力,但往往犧牲了現(xiàn)實(shí)性以換取規(guī)模和效率。這些基準(zhǔn)測(cè)試通常任務(wù)自包含,無需先前上下文即可理解,并且使用算法評(píng)估,未能捕捉許多重要能力。這可能導(dǎo)致基準(zhǔn)測(cè)試高估AI能力。另一方面,由于基準(zhǔn)測(cè)試沒有實(shí)時(shí)人類交互,模型可能因小型瓶頸而無法完成任務(wù),盡管在實(shí)際使用中人類會(huì)修復(fù)這些問題,這可能導(dǎo)致我們低估模型能力。
我們對(duì)評(píng)估AI在現(xiàn)實(shí)場(chǎng)景中的影響感興趣,特別是AI對(duì)AI研發(fā)本身的影響,這可能帶來顯著風(fēng)險(xiǎn)。例如,極快的AI進(jìn)步可能導(dǎo)致監(jiān)督或安全措施的崩潰。測(cè)量AI對(duì)軟件開發(fā)者效率的影響,為基準(zhǔn)測(cè)試提供了補(bǔ)充證據(jù),有助于全面了解AI對(duì)AI研發(fā)加速的總體影響。
二、研究方法:如何測(cè)量AI工具對(duì)開發(fā)效率的影響?
為直接測(cè)量AI工具對(duì)軟件開發(fā)的現(xiàn)實(shí)影響,我們招募了16位經(jīng)驗(yàn)豐富的開發(fā)者,他們來自大型開源倉(cāng)庫(kù)(平均擁有22k+星和1M+代碼行),并已貢獻(xiàn)多年。開發(fā)者提供了246個(gè)真實(shí)問題列表,這些問題對(duì)倉(cāng)庫(kù)有價(jià)值——包括bug修復(fù)、功能添加和重構(gòu),通常屬于他們的常規(guī)工作。然后,我們將每個(gè)問題隨機(jī)分配為允許或不允許使用AI工具。當(dāng)允許使用AI時(shí),開發(fā)者可使用他們選擇的任何工具(主要是Cursor Pro與Claude 3.5/3.7 Sonnet——研究時(shí)的前沿模型);當(dāng)不允許使用AI時(shí),開發(fā)者在沒有生成式AI輔助的情況下工作。開發(fā)者完成這些任務(wù)(平均耗時(shí)兩小時(shí))時(shí)錄制屏幕,并自我報(bào)告所需的總實(shí)現(xiàn)時(shí)間。我們以每小時(shí)150美元的報(bào)酬補(bǔ)償開發(fā)者參與研究。
三、核心發(fā)現(xiàn):AI工具為何反而拖慢了開發(fā)速度?
研究結(jié)果顯示,當(dāng)開發(fā)者被允許使用AI工具時(shí),他們完成問題所需的時(shí)間比不使用AI工具時(shí)長(zhǎng)19%——這是一個(gè)顯著的減速,與開發(fā)者信念和專家預(yù)測(cè)相悖。這一感知與現(xiàn)實(shí)之間的差距引人注目:開發(fā)者預(yù)期AI能將其速度提升24%,即使在經(jīng)歷了減速后,他們?nèi)韵嘈臕I使其速度提升了20%。
開發(fā)者預(yù)期AI提速 | 24% |
---|---|
實(shí)際使用AI后感知提速 | 20% |
實(shí)際觀察到的減速 | 19% |
四、關(guān)鍵因素分析:哪些原因?qū)е铝藴p速?
我們研究了20個(gè)可能解釋減速的潛在因素,發(fā)現(xiàn)以下5個(gè)因素可能起主要作用:
因素分類 | 具體描述 |
---|---|
任務(wù)切換成本 | 開發(fā)者在使用AI工具時(shí)頻繁切換任務(wù),導(dǎo)致效率下降 |
AI輸出審核 | 開發(fā)者需要花費(fèi)額外時(shí)間審核和修正AI生成的代碼 |
過度依賴AI | 開發(fā)者可能因過度依賴AI而忽視自身技能的應(yīng)用 |
工具學(xué)習(xí)曲線 | 掌握AI工具的有效使用需要時(shí)間,短期內(nèi)可能降低效率 |
隱性要求處理 | 高質(zhì)量代碼要求(如文檔、測(cè)試覆蓋率)AI工具可能無法完全滿足 |
五、研究結(jié)論:如何看待AI工具的實(shí)際效用?
研究結(jié)果表明,在特定條件下,AI工具可能并未顯著提升開發(fā)者效率,反而導(dǎo)致減速。這并不意味著AI工具在所有場(chǎng)景下都無效??赡艿慕忉尠ǎ?/p>
觀點(diǎn) | 解釋 |
---|---|
AI工具的潛力未充分挖掘 | 開發(fā)者可能未充分利用AI工具的所有功能,或缺乏優(yōu)化提示/腳手架 |
任務(wù)類型差異 | AI在處理基準(zhǔn)測(cè)試中的任務(wù)表現(xiàn)良好,但在現(xiàn)實(shí)復(fù)雜任務(wù)中可能面臨挑戰(zhàn) |
人類因素影響 | 開發(fā)者可能因享受使用AI的過程或預(yù)期未來收益而高估其效率提升 |
六、未來展望:如何持續(xù)評(píng)估AI對(duì)開發(fā)效率的影響?
我們計(jì)劃在未來運(yùn)行類似研究,以跟蹤AI帶來的提速(或減速)趨勢(shì),特別是在這種評(píng)估方法可能比基準(zhǔn)測(cè)試更難被操縱的情況下。如果AI系統(tǒng)能夠顯著加速我們?cè)O(shè)定中的開發(fā)者效率,這可能預(yù)示著AI研發(fā)進(jìn)程的快速加速,進(jìn)而可能導(dǎo)致風(fēng)險(xiǎn)擴(kuò)散、監(jiān)督和安全措施的崩潰或權(quán)力過度集中。
七、常見問題解答
問題 | 回答 |
---|---|
開發(fā)者為何在使用AI時(shí)反而變慢? | 開發(fā)者可能因頻繁審核AI輸出、處理AI工具未滿足的隱性代碼要求以及任務(wù)切換成本而變慢 |
研究結(jié)果是否適用于所有開發(fā)者? | 本研究?jī)H針對(duì)經(jīng)驗(yàn)豐富的開源開發(fā)者,結(jié)果可能不適用于初學(xué)者或不熟悉的代碼庫(kù) |
AI工具是否完全無用? | 不是。AI工具可能在其他場(chǎng)景(如處理原型或研究代碼)中非常有用,具體取決于任務(wù)類型和開發(fā)者經(jīng)驗(yàn) |
八、總結(jié)
本研究表明,盡管AI工具在特定基準(zhǔn)測(cè)試中表現(xiàn)出色,但在現(xiàn)實(shí)復(fù)雜任務(wù)中,其對(duì)開發(fā)者效率的影響可能不如預(yù)期。理解這些差異對(duì)于合理評(píng)估AI工具的實(shí)際效用至關(guān)重要。我們鼓勵(lì)開發(fā)者根據(jù)具體任務(wù)需求,結(jié)合自身經(jīng)驗(yàn),審慎選擇和使用AI工具。