(資料圖片)
2023年4月18日,亞馬遜云科技宣布,實(shí)時(shí)AI編程助手Amazon CodeWhisperer正式可用,同時(shí)推出的還有供所有開發(fā)人員免費(fèi)使用的個(gè)人版(CodeWhisperer Individual)。CodeWhisperer 幫助開發(fā)者基于注釋生成代碼,追蹤開源參考,掃描查找漏洞。確保了開發(fā)人員可以專注于敏捷開發(fā),不會由于搜索示例代碼等工作而打斷思緒。在創(chuàng)建復(fù)雜代碼和面對不斷變化的開發(fā)環(huán)境時(shí),開發(fā)人員可以在自己喜歡的IDE(集成開發(fā)環(huán)境)中使用CodeWhisperer,例如Visual Studio Code、IntelliJ IDEA及其他IDE,從而提高工作效率、簡化工作任務(wù)。CodeWhisperer可以幫助開發(fā)者創(chuàng)建代碼勝任如下場景,比如常規(guī)、耗時(shí)的無差別任務(wù),或是在使用不熟悉的API或SDK時(shí)構(gòu)建示例代碼,亦或要正確高效地使用亞馬遜云科技API操作,還有其他場景比如編寫讀寫文件、處理圖像、編寫單元測試等代碼。
只需使用一個(gè)電子郵箱賬號,用戶就能夠在幾分鐘內(nèi)完成注冊,開始高效地編寫代碼,甚至不需要注冊亞馬遜云服務(wù)用戶賬號。針對企業(yè)版用戶,CodeWhisperer提供了具有諸多管理功能的專業(yè)版,比如與單點(diǎn)登錄 (SSO)和身份與訪問管理服務(wù) (IAM)集成、為參考代碼建議設(shè)置控制規(guī)則,以及具備更高的安全掃描限制。除了為Python、Java、JavaScript、TypeScript和C#生成代碼片段建議外,正式發(fā)布版現(xiàn)在還支持Go、Rust、PHP、Ruby、Kotlin、C、C++、Shell腳本、SQL和Scala。CodeWhisperer不僅原生支持Amazon Cloud9或Amazon Lambda控制臺,還通過插件集成到Visual Studio Code、IntelliJ IDEA、CLion、GoLand、WebStorm、Rider、PhpStorm、PyCharm、RubyMine和DataGrip等IDE中,方便用戶使用。
幫助開發(fā)人員在開發(fā)中保持心流狀態(tài)、減少干擾愈發(fā)重要。開發(fā)人員面對越來越大的完成任務(wù)的時(shí)間壓力,在遇到問題時(shí),他們常常被迫打斷編程節(jié)奏,轉(zhuǎn)而上網(wǎng)搜索、訪問StackOverflow等網(wǎng)站或?qū)で笸碌膸椭员阃瓿扇蝿?wù),而查詢的過程又會帶來更多的干擾。為應(yīng)對這一挑戰(zhàn),開發(fā)人員編寫代碼或注釋時(shí)可以直接在IDE中直接尋求 CodeWhisperer建議并得到實(shí)時(shí)反饋,高效地完成工作。在預(yù)覽期間,我們還進(jìn)行了一項(xiàng)生產(chǎn)力測試,與未使用CodeWhisperer的參與者相比,使用CodeWhisperer的參與者完成任務(wù)的速度平均快57%,成功率高27%。
開發(fā)人員最終完成的代碼可能存在各式各樣的問題,比如含有隱藏的安全漏洞、存在偏見或不公正,或未能負(fù)責(zé)任地使用開源代碼。這些問題之后還需要開發(fā)人員解決,從而影響他們的工作效率。CodeWhisperer在安全編碼和負(fù)責(zé)任地使用AI方面是最好的編程助手。為了幫助開發(fā)人員負(fù)責(zé)任地編碼,CodeWhisperer過濾掉了可能被認(rèn)為有偏見或不公正的代碼建議,它可以過濾或標(biāo)記類似于特定開源訓(xùn)練數(shù)據(jù)的代碼建議,并且是唯一具備該功能的編程助手。當(dāng)生成的代碼類似于訓(xùn)練集中的參考代碼時(shí),它會為代碼提供額外的提示(比如代碼庫URL和許可證),幫助降低使用代碼的風(fēng)險(xiǎn),并使開發(fā)人員重復(fù)利用代碼。
CodeWhisperer是唯一具有內(nèi)置安全掃描功能(通過自動推理實(shí)現(xiàn))的AI編程助手,用于查找難以檢測的漏洞并提出補(bǔ)救建議,例如十大開放式Web應(yīng)用程序安全項(xiàng)目(OWASP)中的漏洞以及不符合加密庫最佳實(shí)踐的漏洞等。如果CodeWhisperer發(fā)現(xiàn)了漏洞,它會提供解決問題的建議。
CodeWhisperer提供的代碼建議并不僅限于生成調(diào)用亞馬遜云服務(wù)上的代碼。不過,CodeWhisperer針對最常使用的亞馬遜云服務(wù)API進(jìn)行了優(yōu)化,比如Amazon Lambda或Amazon Simple Storage Service(Amazon S3),使其成為在亞馬遜云服務(wù)上構(gòu)建應(yīng)用程序的最佳編程助手。CodeWhisperer在跨多種編程語言為通用場景提供代碼輔助的同時(shí),由于使用了基于亞馬遜云服務(wù)API的額外代碼進(jìn)行調(diào)優(yōu),在那些調(diào)用亞馬遜云服務(wù)的場景中,CodeWhisperer可以生成最高質(zhì)量、最準(zhǔn)確的代碼。
關(guān)鍵詞:
推薦閱讀