<span id="3dn8r"></span>
    1. <span id="3dn8r"><optgroup id="3dn8r"></optgroup></span><li id="3dn8r"><meter id="3dn8r"></meter></li>

        AI 輔助編程工具引入了全新的錯(cuò)誤類型

        AIGC動(dòng)態(tài)8個(gè)月前發(fā)布 AI前線
        472 0 0

        AI 輔助編程工具引入了全新的錯(cuò)誤類型。

        AI 輔助編程工具引入了全新的錯(cuò)誤類型

        原標(biāo)題:AI 輔助編程工具引入了全新的錯(cuò)誤類型
        文章來源:AI前線
        內(nèi)容字?jǐn)?shù):5883字

        Copilot 引發(fā)的“墜機(jī)事故”:一個(gè)由AI輔助編程工具引入的棘手錯(cuò)誤

        本文講述了作者Klaas van Schelven在使用微軟Copilot輔助編程時(shí),因一個(gè)看似簡(jiǎn)單的導(dǎo)入語句錯(cuò)誤而耗費(fèi)兩個(gè)小時(shí)調(diào)試的經(jīng)歷。這個(gè)錯(cuò)誤并非程序崩潰,而是由Copilot引入的微妙的語義錯(cuò)誤,最終導(dǎo)致測(cè)試失敗。

        1. 錯(cuò)誤的導(dǎo)入語句

        Copilot生成的錯(cuò)誤導(dǎo)入語句為:from django.test import TestCase as TransactionTestCase。Python的import as語句允許為導(dǎo)入的實(shí)體賦予不同的名稱,但此處Copilot將TestCase 導(dǎo)入并賦予了TransactionTestCase 的名稱。TestCaseTransactionTestCase 在數(shù)據(jù)庫(kù)事務(wù)處理方面存在細(xì)微差別,前者自動(dòng)回滾事務(wù),后者則沒有。這種錯(cuò)誤的導(dǎo)入導(dǎo)致程序?qū)嶋H運(yùn)行的是TestCase,而非預(yù)期中的TransactionTestCase,從而導(dǎo)致依賴事務(wù)管理的測(cè)試失敗。

        2. 調(diào)試過程與誤導(dǎo)

        作者花了兩個(gè)小時(shí)才找到這個(gè)錯(cuò)誤。起初,他懷疑問題出在自身代碼或Django框架本身,因?yàn)闇y(cè)試結(jié)果與TransactionTestCase 的預(yù)期行為不符。詳細(xì)的代碼注釋進(jìn)一步誤導(dǎo)了他,讓他相信TransactionTestCase 的使用是正確的。注釋中解釋了TransactionTestCase 的用途以及TestCase 的局限性,但這反而讓他忽略了錯(cuò)誤的導(dǎo)入語句。

        3. 錯(cuò)誤難以發(fā)現(xiàn)的原因

        這個(gè)錯(cuò)誤難以發(fā)現(xiàn)的原因在于其隱蔽性和反直覺性。首先,作者并非在Copilot生成代碼后立即運(yùn)行測(cè)試,導(dǎo)致錯(cuò)誤被延遲發(fā)現(xiàn)。其次,錯(cuò)誤發(fā)生在通常被認(rèn)為最不可能出錯(cuò)的導(dǎo)入語句中。最后,錯(cuò)誤本身非常奇怪,一個(gè)經(jīng)驗(yàn)豐富的程序員很難想象有人會(huì)故意寫出這樣的代碼,這使得它很難被及時(shí)發(fā)現(xiàn)。

        4. Copilot 的“合理性”與人類的直覺

        作者認(rèn)為Copilot之所以會(huì)生成這樣的代碼,是因?yàn)樗鶕?jù)上下文(代碼中使用了TransactionTestCase,但沒有使用TestCase)進(jìn)行預(yù)測(cè),并試圖“補(bǔ)全”代碼。對(duì)于一個(gè)基于統(tǒng)計(jì)模型的AI來說,這可能是“合理的”,但對(duì)于人類程序員來說,這是完全不符合編程規(guī)范和直覺的。

        5. AI輔助編程引入的新錯(cuò)誤類型

        作者總結(jié)道,AI輔助編程工具引入了全新的錯(cuò)誤類型。這些錯(cuò)誤并非人類程序員的常見錯(cuò)誤,而是反映了AI自身的某些“怪癖”,增加了編程過程的不可預(yù)測(cè)性。雖然AI輔助編程工具總體上利大于弊,但程序員需要意識(shí)到并警惕AI可能引入的新類型錯(cuò)誤。

        總而言之,這個(gè)案例生動(dòng)地說明了AI輔助編程工具雖然能提高效率,但也可能引入一些意想不到的、難以察覺的錯(cuò)誤,需要程序員提高警惕,并結(jié)合自身經(jīng)驗(yàn)進(jìn)行代碼審查。


        聯(lián)系作者

        文章來源:AI前線
        作者微信:
        作者簡(jiǎn)介:面向AI愛好者、開發(fā)者和科學(xué)家,提供大模型最新資訊、AI技術(shù)分享干貨、一線業(yè)界實(shí)踐案例,助你全面擁抱AIGC。

        閱讀原文
        ? 版權(quán)聲明
        蟬鏡AI數(shù)字人

        相關(guān)文章

        蟬鏡AI數(shù)字人

        暫無評(píng)論

        暫無評(píng)論...
        主站蜘蛛池模板: 免费av片在线观看网站| 成人免费网站在线观看| 久久大香香蕉国产免费网站| 97国产免费全部免费观看| 日本中文一区二区三区亚洲| 亚洲av无码一区二区三区乱子伦 | 免费一级大黄特色大片| 午夜影视日本亚洲欧洲精品一区| 97se亚洲综合在线| 一级毛片试看60分钟免费播放| 1000部啪啪未满十八勿入免费| 亚洲国产精品一区二区三区久久| 中文字幕亚洲综合久久| 99re免费在线视频| 国产亚洲精品影视在线产品| 亚洲欧美一区二区三区日产| 在线成人精品国产区免费| 又粗又硬免费毛片| 久久久久久噜噜精品免费直播 | 久久久久久亚洲精品| 57pao国产成视频免费播放| 精品国产日韩久久亚洲| 久久久久国产精品免费看| 亚洲国产精品尤物YW在线观看| 国产成人无码免费看片软件| 日本一区二区三区日本免费| 亚洲精品在线电影| 91热久久免费精品99| 久久亚洲高清观看| 大妹子影视剧在线观看全集免费| 国产资源免费观看| 精品亚洲国产成人av| 午夜一级毛片免费视频| 亚洲成人黄色在线| 日韩版码免费福利视频| 亚洲欧洲尹人香蕉综合| 免费一级毛片在线观看| 99re免费在线视频| 无码精品人妻一区二区三区免费| 免费A级毛片无码久久版| 免费黄色电影在线观看|