天天看點

别人家的工程師:阿裡巴巴工程師有了新幫手,AI可幫助修Bug

别人家的工程師:阿裡巴巴工程師有了新幫手,AI可幫助修Bug

盡管工程師用代碼創造了AI,但AI又可以對這些代碼點評一番、甚至修複Bug,工程師和AI的關系正在變得微妙。

AI評委引熱議,阿裡巴巴表示:AI不會取代工程師

4月18日,2019阿裡巴巴研發效能峰會——“83行代碼挑戰賽”決賽現場引入了一位“AI評委”,和專家評委、大衆評委配合,對選手送出的的代碼做綜合評價,這也是全球代碼比賽中出現的首位AI評委。

别人家的工程師:阿裡巴巴工程師有了新幫手,AI可幫助修Bug

圖為83行代碼挑戰賽決賽現場排行榜,AI評委、大衆評委、專家評委給選手打分

這場面向阿裡3萬多名工程師的技術大會旨在進一步提升内部的研發效率,而“83行代碼挑戰賽”可以說是阿裡巴巴史上最大規模的代碼品鑒會。比賽源自1年前阿裡内網一次集體曬83行代碼的活動,阿裡巴巴集團CTO張建鋒、螞蟻金服CTO程立,甚至馬雲、彭蕾都有參與。

這位AI評委運作在雲端,當選手送出代碼後,會從靜态分析、運作時分析、群體共性等不同次元對代碼快速打分。比賽現場,大屏實時顯示選手分數,随着AI評委、專家評委、大衆評委的分數依次出現,分數排行榜會根據綜合打分實時滾動,一個邏輯語言的處理甚至可能瞬間提高選手排名。

結合現場專家和大衆評委的觀點來看,AI評委的評分相當準确,且打分最為迅速,幾乎是在代碼送出後立刻出現結果。

AI評委是誰?

這位AI評委來自阿裡巴巴代碼平台研發的人工智能系統,其中最重要的一環是內建了Precfix(Patch Recommendation by Empirically Clustering),不依賴測試用例、編譯結果,通過非規則化的智能掃描,即可自動定位代碼中的Bug,并提供修複建議,速度可達毫秒級,且誤報率低。

别人家的工程師:阿裡巴巴工程師有了新幫手,AI可幫助修Bug

圖為AI評委給出的選手打分,Precfix定位了代碼中的缺陷,并給出修複建議

Precfix能夠發現一些規則檢查和人工評審都無法發現的缺陷,根本性地提升代碼品質,有效減少開發工程師debug及代碼評審時間。同時,Precfix提供的修複建議,能幫助工程師快速了解缺陷和解決問題。

别人家的工程師:阿裡巴巴工程師有了新幫手,AI可幫助修Bug

圖為工程師根據Precfix提供的修複建議修複了缺陷

目前,Precfix已被部署到阿裡巴巴代碼生産環境,用于缺陷檢查。工程師寫好代碼,就送出到線上,Precfix會進行review,指出缺陷代碼及相應的修複建議。

據一位工程師透露,過去人工review代碼查找bug可能需要幾小時甚至幾天時間不等,而現在不用一杯咖啡的時間,Precfix就可以review完送出的全部代碼,提高了至少20%效率。

未來,Precfix還會随着阿裡代碼平台的上雲,一起為全球開發者服務。

繼續閱讀