Amazon CodeWhisperer是一款AI編(bian)程助(zhu)(zhu)手,可(ke)根(gen)據開發人員(yuan)使用自然語言編(bian)寫的(de)(de)注釋和IDE(集成開發環(huan)境)中的(de)(de)代(dai)碼生成建議,幫助(zhu)(zhu)開發人員(yuan)提高(gao)工(gong)(gong)作效率。借助(zhu)(zhu)CodeWhisperer,開發人員(yuan)無需在IDE與文檔(dang)或開發者論(lun)壇之間切換,加快(kuai)編(bian)碼過程。通過CodeWhisperer的(de)(de)實時代(dai)碼建議,開發人員(yuan)可(ke)以在IDE中專注地(di)工(gong)(gong)作,更快(kuai)地(di)完成編(bian)碼任務。
CodeWhisperer由基于數十億行代(dai)碼訓練的大語(yu)言(yan)模型(LLM)賦能,已(yi)經學會使用(yong)15種(zhong)編(bian)(bian)程語(yu)言(yan)編(bian)(bian)寫代(dai)碼。開(kai)(kai)發(fa)人員僅需(xu)編(bian)(bian)寫注釋,用(yong)簡明(ming)的英語(yu)概述一(yi)個特定(ding)(ding)(ding)任務即可(ke),例如“upload a file to Amazon S3”(上傳文件到Amazon S3)。在此基礎上,CodeWhisperer可(ke)自動確定(ding)(ding)(ding)適合于該指定(ding)(ding)(ding)任務的云服務和公共庫,即時構建(jian)特定(ding)(ding)(ding)代(dai)碼,并直(zhi)接在IDE中提供一(yi)段代(dai)碼建(jian)議。此外,CodeWhisperer能夠與(yu)Visual Studio Code和JetBrains 等IDE無縫(feng)集成,使開(kai)(kai)發(fa)人員可(ke)以專注于開(kai)(kai)發(fa),且(qie)無需(xu)離開(kai)(kai)IDE。截至目前(qian),CodeWhisperer支持的開(kai)(kai)發(fa)語(yu)言(yan)包(bao)括Java、Python、JavaScript、TypeScript、C#、Go、Ruby、Rust、Scala、Kotlin、PHP、C、C++、Shell和SQL。
埃森哲使用CodeWhisperer助力開發人員提高工作效率
“埃森(sen)哲正在使用Amazon CodeWhisperer加快(kuai)編碼任務,這是我(wo)(wo)們(men)Velocity平臺軟件工(gong)(gong)程最佳實(shi)踐計劃的(de)一部分。” 埃森(sen)哲技術(shu)架構(gou)高(gao)級(ji)經理Balakrishnan Viswanathan表(biao)示,“Velocity團隊在想方設法提高(gao)開發(fa)人員的(de)工(gong)(gong)作效率,搜尋過多種工(gong)(gong)具(ju)后,發(fa)現Amazon CodeWhisperer可(ke)以幫助減少(shao)30%的(de)開發(fa)工(gong)(gong)作量。因此,我(wo)(wo)們(men)可(ke)以更專注于(yu)安全、質量和性能的(de)提升。”
CodeWhisperer的優勢
埃森哲Velocity團隊一直在使用CodeWhisperer來加速其人工智能(AI)和機器學習(ML)項目。使(shi)用(yong)CodeWhisperer帶來了如下優勢:
團隊減少(shao)創(chuang)建樣(yang)板代碼(ma)(ma)和重復代碼(ma)(ma)模式的(de)(de)時間,從而將(jiang)更多時間用于提升軟件質量等重要的(de)(de)工作上
CodeWhisperer助力開發人員負責任地使用AI,創建語法正確且(qie)安(an)全(quan)可靠的應(ying)用程序
團隊可以(yi)生成(cheng)完整的函數和(he)符合邏(luo)輯的代(dai)碼(ma)段落,無需在網上搜索或(huo)定制代(dai)碼(ma)
可以(yi)幫助新手開(kai)發(fa)人員或(huo)使用不熟悉(xi)代(dai)碼庫(ku)的(de)開(kai)發(fa)人員快速上手工(gong)作
通(tong)過將安全(quan)掃描(miao)前置到開發(fa)人員的(de)IDE中,讓團隊可以在開發(fa)過程的(de)早期階段(duan)就(jiu)檢測安全(quan)威脅
幫助開發人員盡快熟悉新項目
CodeWhisperer可以(yi)幫助不了解亞馬遜(xun)(xun)云(yun)科技的(de)開(kai)發人員(yuan)更快(kuai)地(di)熟(shu)悉使用(yong)亞馬遜(xun)(xun)云(yun)科技服務開(kai)發的(de)項(xiang)目(mu)。例如,借助CodeWhisperer,埃森哲新(xin)的(de)開(kai)發人員(yuan)就能(neng)夠為(wei)Amazon Simple Storage Service(Amazon S3)和Amazon DynamoDB等亞馬遜(xun)(xun)云(yun)科技服務編碼(ma)。在短時間內,他(ta)們就能(neng)夠高效工(gong)作并(bing)為(wei)項(xiang)目(mu)做出貢獻。CodeWhisperer通過提供代(dai)碼(ma)段落或逐行建議來輔助開(kai)發人員(yuan)完(wan)成(cheng)工(gong)作。此外,CodeWhisperer還能(neng)理解上下文(wen)。指令(ling)(注(zhu)釋)越(yue)具體,CodeWhisperer生成(cheng)的(de)代(dai)碼(ma)越(yue)相(xiang)關。
編寫樣板代碼
開(kai)發人(ren)員(yuan)可以使用(yong)CodeWhisperer補全先決條件(jian)。他們只(zhi)需輸入“為機器學(xue)習數據創(chuang)建(jian)預處(chu)理腳本的類(lei)”,就(jiu)能夠(gou)創(chuang)建(jian)預處(chu)理數據類(lei)。開(kai)發人(ren)員(yuan)只(zhi)需幾分鐘編寫預處(chu)理腳本,然后CodeWhisperer就(jiu)能夠(gou)生成整個代碼段落。
幫助開發人員使用不熟悉的語言編寫代碼
一個新加(jia)入(ru)團隊的Java開發人員可以借助CodeWhisperer輕松(song)編寫Python代碼(ma),而不必(bi)擔心語(yu)法問題。
檢測代碼的安全漏洞
開發人員(yuan)可(ke)以(yi)在IDE中選擇“運行安(an)(an)全(quan)掃描”來檢(jian)測(ce)安(an)(an)全(quan)問(wen)題。發現的(de)安(an)(an)全(quan)問(wen)題的(de)詳(xiang)細信息會直接顯示在IDE中。這可(ke)以(yi)幫(bang)助(zhu)開發人員(yuan)及早檢(jian)測(ce)和修復(fu)問(wen)題。
“作(zuo)為一名開發人(ren)員,CodeWhisperer能夠讓您更(geng)(geng)加快速地編(bian)寫(xie)代(dai)碼(ma)”埃森(sen)哲人(ren)工(gong)(gong)智(zhi)能工(gong)(gong)程顧問Nino Leenus表示,“此(ci)外,CodeWhisperer借助人(ren)工(gong)(gong)智(zhi)能可幫助消除(chu)拼寫(xie)錯(cuo)誤及其他典型錯(cuo)誤,讓編(bian)碼(ma)更(geng)(geng)準確。對于開發人(ren)員來說,多(duo)次編(bian)寫(xie)同樣(yang)的代(dai)碼(ma)乏味而枯(ku)燥(zao)。通過建議(yi)后續可能需要的代(dai)碼(ma)片段,AI代(dai)碼(ma)補全(quan)技(ji)術可以減少這類重復(fu)性工(gong)(gong)作(zuo)。”