人工智能編碼輔助的力量
來(lái)自 Alamy Stock
直到最近,編碼還涉及重復(fù)性任務(wù),并且需要了解許多微小的細(xì)節(jié)。編碼的這些方面減損了開(kāi)發(fā)人員真正喜歡的創(chuàng)造性工作,并且減慢了開(kāi)發(fā)人員的速度。
現(xiàn)在,人工智能技術(shù)有望消除大部分重復(fù)性工作,開(kāi)發(fā)人員不再因不得不在網(wǎng)絡(luò)上搜索那些微小的細(xì)節(jié)而被拋在腦后。
該技術(shù)的工作原理類似于文字處理中的自動(dòng)完成,但編寫(xiě)代碼而不是普通語(yǔ)言并一次完成整個(gè)功能。
AI 有助于算法、樣板代碼
人工智能驅(qū)動(dòng)的最新產(chǎn)品之一是 Github 的 Copilot,這是一種人工智能驅(qū)動(dòng)的結(jié)對(duì)編程工具,可供所有開(kāi)發(fā)人員使用,每月 10 美元或每年 100 美元。
該公司聲稱 Copilot 可以建議完整的方法、樣板代碼、整個(gè)單元測(cè)試,甚至是復(fù)雜的算法。
GitHub Next 副總裁 Oege De Moor 解釋說(shuō):“借助 Copilot 等 AI 驅(qū)動(dòng)的編碼技術(shù),開(kāi)發(fā)人員可以像以前一樣工作,但速度和滿意度更高,因此很容易引入。”“在你對(duì)人工智能的指示中明確說(shuō)明確實(shí)有幫助。”
他解釋說(shuō),在 Copilot 技術(shù)預(yù)覽期間,GitHub 從用戶那里聽(tīng)說(shuō),他們?cè)诖a注釋中編寫(xiě)了更好、更準(zhǔn)確的解釋,因?yàn)?AI 為他們提供了更好的建議。
“用戶還編寫(xiě)了更多測(cè)試,因?yàn)?Copilot 鼓勵(lì)開(kāi)發(fā)人員專注于制作好的測(cè)試的創(chuàng)造性部分,”De Moor 解釋說(shuō)。“所以,這些用戶覺(jué)得他們編寫(xiě)了更好的代碼,與 Copilot 攜手并進(jìn)。”
他補(bǔ)充說(shuō),讓用戶意識(shí)到技術(shù)的局限性當(dāng)然很重要。
“像所有代碼一樣,來(lái)自 Copilot 等 AI 助手的建議需要經(jīng)過(guò)仔細(xì)測(cè)試、審查和審查,”他說(shuō)。“我們還不斷努力提高人工智能提出的建議的質(zhì)量。”
GitHub Copilot 是使用 Codex(GPT-3 的后代)構(gòu)建的,它接受了公開(kāi)可用的源代碼和自然語(yǔ)言的培訓(xùn)。
“因?yàn)樗邮芰嗽创a和自然語(yǔ)言的訓(xùn)練,你可以用英語(yǔ)寫(xiě)評(píng)論,然后 Codex 會(huì)建議后面的代碼,”De Moor 解釋說(shuō)。“事實(shí)上,它甚至可以編寫(xiě)一個(gè)完整的函數(shù)或類,只需用英文描述即可。”
未來(lái)的人工智能能力可以協(xié)助調(diào)試
Tabnine 首席執(zhí)行官 Dror Weiss 表示,未來(lái)人工智能助手將能夠?yàn)殚_(kāi)發(fā)人員審查代碼、自動(dòng)創(chuàng)建測(cè)試、協(xié)助調(diào)試以及對(duì)系統(tǒng)進(jìn)行智能的自動(dòng)化維護(hù)操作。
“最終,每一項(xiàng)可以自動(dòng)化的活動(dòng)都將實(shí)現(xiàn)自動(dòng)化,”他說(shuō)。
從他的角度來(lái)看,組織的一個(gè)關(guān)鍵特性是能夠?yàn)轫?xiàng)目和組織集成特定的最佳實(shí)踐和代碼模式。
“使用這種定制的人工智能,組織不僅可以從加速中受益,還可以從更好的代碼一致性和質(zhì)量中受益,”他解釋道。“另一個(gè)好處是減少了開(kāi)發(fā)人員在加入新項(xiàng)目時(shí)提高生產(chǎn)力所需的時(shí)間。”
人工智能輔助編碼工具的一個(gè)主要優(yōu)勢(shì)是上下文感知代碼完成。
例如,微軟的 Visual Studio IntelliCode 是一組 AI 輔助功能,使開(kāi)發(fā)人員能夠通過(guò)參數(shù)完成、代碼格式化和樣式規(guī)則參考等功能有效地完成代碼。
IntelliCode 對(duì) GitHub 上數(shù)千個(gè)評(píng)價(jià)很高的開(kāi)源項(xiàng)目的代碼進(jìn)行了培訓(xùn),并使用當(dāng)前代碼中的上下文來(lái)提出相關(guān)建議。
自推出 IntelliCode 以來(lái),Microsoft 已經(jīng)進(jìn)行了整行代碼完成和重構(gòu)等更新,并提出了增強(qiáng)重復(fù)編輯體驗(yàn)的建議,從而為開(kāi)發(fā)人員節(jié)省了時(shí)間。
AI Coding Assist 的路線圖是關(guān)鍵
Weiss 表示,對(duì)于計(jì)劃實(shí)施涉及 AI 編碼助手的戰(zhàn)略的組織來(lái)說(shuō),制定路線圖是關(guān)鍵。
“組織需要進(jìn)行戰(zhàn)略性思考,并了解他們希望如何利用人工智能,即使市場(chǎng)上的任何產(chǎn)品都還沒(méi)有一些基本功能,”他說(shuō)。
他解釋說(shuō),實(shí)現(xiàn)人工智能輔助的合乎邏輯的第一步是確定一組特定的開(kāi)發(fā)人員,并讓他們基于從公開(kāi)可用代碼中學(xué)習(xí)代碼模式的預(yù)訓(xùn)練模型使用人工智能。
成功實(shí)施后,組織可以開(kāi)始向其他組推廣。同時(shí),他們可以通過(guò)根據(jù)自己的代碼創(chuàng)建自定義 AI 模型來(lái)根據(jù)自己的需求定制 AI 輔助。
De Moor 還指出,開(kāi)發(fā)人員將大部分時(shí)間花在其他任務(wù)上,很快,這些其他任務(wù)也將受益于人工智能的幫助。
其他適合 AI 輔助的任務(wù)包括代碼審查、測(cè)試和重構(gòu)。
“這會(huì)改變開(kāi)發(fā)人員的工作嗎?當(dāng)然,但為了更好,”德摩爾說(shuō)。“我不預(yù)見(jiàn)未來(lái) Copilot 會(huì)在沒(méi)有人工輸入的情況下產(chǎn)生任何有用的東西,但我確實(shí)看到了不受約束的人類創(chuàng)造力,不再被無(wú)關(guān)的細(xì)節(jié)所束縛。
他說(shuō)編程現(xiàn)在是關(guān)于設(shè)計(jì)(將一個(gè)大問(wèn)題分解為較小的問(wèn)題),然后指定較小的塊應(yīng)該做什么——人工智能將填充細(xì)節(jié)。
Weiss 補(bǔ)充說(shuō),隨著每家公司都在成為“軟件公司”,軟件開(kāi)發(fā)是每個(gè)組織最具戰(zhàn)略性和資源受限的活動(dòng)。
“公司開(kāi)始滿足他們可以獲得多少開(kāi)發(fā)人員的限制,讓更小的團(tuán)隊(duì)更有效率是至關(guān)重要的——在經(jīng)濟(jì)低迷時(shí)期更是如此,因?yàn)閳F(tuán)隊(duì)可能人手不足,”他說(shuō)。“我們相信,人工智能是提高開(kāi)發(fā)人員和團(tuán)隊(duì)生產(chǎn)力的最有效方式,對(duì)于每個(gè)采用基本 DevOps 和 CI 平臺(tái)的組織來(lái)說(shuō),人工智能將是自然而然的下一步。”
- 上一篇
低代碼在數(shù)字化轉(zhuǎn)型中可以發(fā)揮什么作用?
面對(duì)構(gòu)建出色的業(yè)務(wù)應(yīng)用程序和流程時(shí),CIO 遇到的一個(gè)重大障礙是程序員(而不是最終用戶)開(kāi)發(fā)這些項(xiàng)目。不幸的是,這一事實(shí)通常會(huì)在現(xiàn)實(shí)中最有效的方法與 IT 認(rèn)為在開(kāi)發(fā)過(guò)程中最有
- 下一篇
利用大數(shù)據(jù)制定最佳營(yíng)銷計(jì)劃的創(chuàng)造性方法
對(duì)于現(xiàn)代企業(yè)主來(lái)說(shuō),大數(shù)據(jù)技術(shù)變得比以往任何時(shí)候都更加重要。麥肯錫研究所的一項(xiàng)研究表明,數(shù)據(jù)驅(qū)動(dòng)的組織盈利的可能性要高出 19 倍。使用大數(shù)據(jù)開(kāi)展業(yè)務(wù)有很多好處。最重要
相關(guān)資訊
- 隨著人工智能時(shí)代需求的增長(zhǎng),三大
- 解鎖數(shù)據(jù)可視化項(xiàng)目成功的關(guān)鍵:原
- 將AI與在線營(yíng)銷相結(jié)合以實(shí)現(xiàn)爆炸
- 現(xiàn)代牧業(yè)的數(shù)智化轉(zhuǎn)型之路:從精細(xì)
- 云服務(wù)架構(gòu)完全指南
- 大數(shù)據(jù)和物聯(lián)網(wǎng)之間的關(guān)系以及如
- 5G網(wǎng)絡(luò)的普及對(duì)應(yīng)用開(kāi)發(fā)者的創(chuàng)新
- 人工智能如何改變借貸管理
- 物聯(lián)網(wǎng)測(cè)試有哪些方法、挑戰(zhàn)和工
- 建筑業(yè)中的數(shù)字孿生技術(shù)應(yīng)用及未