AWS正式推出基於AI的CodeGuru代碼檢查與性能分析器
去年12月,亞馬遜在AWS re:Invent上啟動了CodeGuru的預覽。作為一款借助機器學習技術來自動檢查代碼錯誤、並提出潛在優化建議的工具,其現已正式向公眾開放。據悉,CodeGuru主要由代碼檢查其Reviewer和性能分析器Profiler兩個部分組成。
據悉,為了打造Reviewer 代碼分析器,AWS 團隊借鑒了GitHub 上超過一萬個開源項目的代碼、以及亞馬遜內部代碼庫來訓練其算法。
該公司在今日的公告中稱,即便是擁有經驗足夠豐富的開發團隊的亞馬遜之類的大企業,要利用空暇時間來進行代碼審查,也是一項相當大的挑戰。
由於每日要過目的代碼量很大,即便是經驗老道的審查員,也可能在面對客戶應用程序代碼時有所遺漏,從而導致錯誤和性能問題。
使用CodeGuru 的時候,開發者可將其代碼放到GitHub、Bitbucket Cloud、或者AWS 的CodeCommit 等託管平台上。然後Reviewer 代碼分析器會嘗試查找潛在的錯誤,同時給出相應的修改建議。
所有操作都是在代碼存儲庫的上下文環境中完成,因此CodeGuru 還將創建一個GitHub 查詢請求(pull request),並在其中添加註釋。為了訓練機器學習模型,用戶也可向CodeGuru 提交一系列基礎反饋。
CodeGuru Application Profiler 的任務有所不同,其旨在幫助開發者找出代碼中有哪些地方存在性能低下的問題,並且包括了對無服務器平台的支持(比如AWS Lambda 和Fargate)。
AWS 表示,已有多家企業在預覽期間便開始使用CodeGuru,比如Atlassian、EagleDream 和DevFactory 。
AWS 技術工程團隊主管Zak Islam 補充道:“當我們檢測到生產中的異常時,CodeGuru 的連續分析功能,可將調查所需耗費的時間從幾天縮短到幾小時、甚至幾分鐘”。
如此一來,開發者可將更多精力投入到提供差異化的功能上,並減少研究生產環境中的問題所浪費的寶貴時間。