太輕松了。
在 AI 程序員的幫助下,一個(gè)幾乎沒有專業(yè)編程經(jīng)驗(yàn)的初中生,在人頭攢動(dòng)的展臺(tái)上從零開始,兩分鐘就做出了一個(gè)倒計(jì)時(shí)網(wǎng)頁。
他需要做的,只是輸入包含幾句話的提示詞。數(shù)秒鐘后,大模型就生成了代碼,還列出了環(huán)境需求,復(fù)制完代碼就可以使用了。
這不是程序員父親帶自家小孩做的網(wǎng)紅項(xiàng)目,而是人人都可以嘗試的事。在大模型的幫助下,代碼正在成為低門檻的設(shè)計(jì)工具。
昨天,阿里云完成了「可能是歷史上最大規(guī)模的模型開源發(fā)布」,開源了通義千問 Qwen2.5系列模型,又在云棲大會(huì)的年度重磅發(fā)布中實(shí)現(xiàn)了阿里云通義大模型「全尺寸、全模態(tài)、多場景」的升級(jí)。
與此同時(shí),阿里云「通義靈碼」也完成了進(jìn)化,給人們期待已久的 AI 程序員打了個(gè)樣。
通義靈碼的「AI 程序員」已經(jīng)正式和大家見面。相比于以往 IDE 上的「AI 編程助手」,「AI 程序員」不需要你去啟動(dòng) IDE 軟件,直接在 web 端就可以完成需求分析、開發(fā)、測試等一系列工作,全面接手了復(fù)雜的開發(fā)任務(wù)。
AI 程序員,表現(xiàn)超出預(yù)料
還不到一歲的通義靈碼,在通義大模型的加持下,現(xiàn)在能夠自主執(zhí)行任務(wù)拆解、代碼編寫、缺陷修復(fù)、測試等開發(fā)全過程任務(wù),而且生成的速度最快可達(dá)分鐘級(jí),開發(fā)效率一下提升了數(shù)十倍。
在阿里云的定義中,「AI 程序員」是能獨(dú)立自主完成研發(fā)任務(wù)的 AI 智能體,可承接人類指派的軟件研發(fā)生命周期中的各類任務(wù)。它目前預(yù)置了三個(gè)使用場景:缺陷修復(fù)、需求0-1實(shí)現(xiàn)、研發(fā)問答。
我們可以合理地認(rèn)為,這是三個(gè)針對不同任務(wù)配置了不同系統(tǒng)提示詞(system prompt)的通義大模型,因此,你也可以在自由形式的「研發(fā)問答」中通過合理構(gòu)建提示詞來配置最適合自己的場景。
在云棲大會(huì)現(xiàn)場,阿里云演示了通義靈碼 AI 程序員自主進(jìn)行缺陷分析、制定修復(fù)計(jì)劃等功能。開發(fā)者全程只需一鍵確認(rèn),即可快速完成缺陷修復(fù)代碼和代碼提交的全過程;針對從0到1的開發(fā)任務(wù),用戶也只需輸入自然語言描述需求,即可自動(dòng)完成理解需求、拆解開發(fā)任務(wù)、編碼、測試和修復(fù)等全鏈路開發(fā)過程。
大會(huì)的展臺(tái)上,一位13歲的中學(xué)生在通義靈碼上輸入了幾句話,AI 程序員在兩分鐘內(nèi)就生成了一個(gè) Python 語言編寫的倒計(jì)時(shí)網(wǎng)頁。
從機(jī)器之心的體驗(yàn)來看,如果從研發(fā)問答到需求實(shí)現(xiàn)再到缺陷修復(fù)全流程地完成一個(gè)小應(yīng)用的開發(fā),用時(shí)不到10分鐘。而阿里云表示,如果使用 AI 程序員來開發(fā)網(wǎng)頁,只需5分鐘就能完成從需求到編程到測試的結(jié)果的全過程;相對的,如果讓人類程序員來做同樣的事情,則通常需要一整天時(shí)間。
目前,AI 程序員支持集成兩個(gè)平臺(tái):阿里云一站式 DevOps 平臺(tái)云效以及大家熟悉的代碼托管平臺(tái)GitHub。我們可以讓 AI 程序員直接克隆代碼庫或讀取 issue,也能將 AI 程序員生成或修改過的代碼直接提交到我們的項(xiàng)目代碼庫。
案例:升級(jí)魂斗羅游戲
首先我們來看一個(gè)使用場景,缺陷修復(fù)。大會(huì)現(xiàn)場,有參與者體驗(yàn)了一個(gè)非常有趣的案例:使用 AI 程序員修改經(jīng)典街機(jī)游戲《魂斗羅》的代碼,解決了手殘黨難以通關(guān)游戲的難題。
簡單來說這個(gè)過程分為兩步。
第一步,明確需求。手殘黨玩《魂斗羅》游戲最大的問題是難以避免傷害,而在該游戲中,角色只要一受到傷害就會(huì)死亡。
那么,我們的需求就是讓游戲角色在面對傷害時(shí)能更加堅(jiān)挺。為此,我們可以采用的做法是修改《魂斗羅》的傷害判定機(jī)制:從受傷即死改為傷害數(shù)值判定;同時(shí)提高角色的血量。另外,為了更好地幫助玩家判斷,也自然需要增加血量顯示。同時(shí),為了讓玩家能輕松地制霸戰(zhàn)場,這里也對角色的跳躍高度進(jìn)行了調(diào)整。
第二步,就是讓 AI 程序員完成這些需求?梢钥吹,接入云效平臺(tái)之后,只需一個(gè)定義了需求的鏈接,AI 程序員就可以立馬開始工作,拉取代碼庫之后,AI 對需求內(nèi)容進(jìn)行了分析。用戶開發(fā)者檢查無誤之后,點(diǎn)擊「確認(rèn)」。之后,AI 程序員生成相應(yīng)代碼文件。
一路「確認(rèn)」下去,AI 程序員最終完成了整個(gè)項(xiàng)目,并且 AI 程序員的執(zhí)行效率非常高,速度非?,幾分鐘內(nèi)就完成了對9個(gè)代碼文件2000多行代碼的分析和修改。
這樣一來,游戲就修改成功了,下面來試玩一下。
可以看到,現(xiàn)在的游戲角色在撞到人類士兵時(shí)不會(huì)再立即死亡了,但撞到坦克單位還是會(huì)死亡;同時(shí),也能看到跳躍高度變高了,生命值也提升了!痘甓妨_》游戲手殘黨的核心難題被 AI 程序員成功解決。
實(shí)現(xiàn)需求、邊聊邊研發(fā)
在需求實(shí)現(xiàn)場景中,目前 AI 程序員預(yù)置了3種服務(wù):用于快速搭建微服務(wù)的 SpringBoot、輕量級(jí) Python 框架 Flask、用于構(gòu)建用戶解碼的高效且靈活的 JavaScript 庫(沒錯(cuò),就是最受程序員歡迎的 Java、Python 和 JavaScript)。
當(dāng)然,用戶也可以添加自己的已有代碼庫,在自己的框架上進(jìn)行開發(fā)工作,這樣就可以支持所有常用的編程語言。
首先我們來考驗(yàn)一下 AI 程序員的基本功:生成一個(gè) Python 程序,可以翻轉(zhuǎn)用戶輸入的字符串的順序。
可以看到,AI 程序員毫無壓力地完成了這個(gè)任務(wù),輸出的代碼實(shí)測有效。
接下來上一點(diǎn)難度:基于輕量級(jí) Python 框架 Flask 開發(fā)一個(gè)猜數(shù)字小游戲;游戲規(guī)則是「系統(tǒng)隨機(jī)生成一個(gè)1到100之間的數(shù)字(包括1和100),玩家有10次機(jī)會(huì)猜測該數(shù)字!
要開發(fā)這樣一個(gè)游戲,不管是人類開發(fā)者還是 AI 程序員,首先必須熟悉 Python 和 Flask 框架,同時(shí)還需要理解我們使用自然語言表達(dá)的開發(fā)需求,并將其準(zhǔn)確地轉(zhuǎn)譯成代碼。
下面來看 AI 程序員將如何完成這一開發(fā)任務(wù)。
為此,首先我們定義一個(gè)目標(biāo):開發(fā)一個(gè)猜數(shù)字小游戲。
目標(biāo)很簡單,但要讓 AI 程序員準(zhǔn)確理解我們的需求,我們需要給出詳細(xì)的描述。但我們很懶,這件事就放在 AI 程序員的研發(fā)問答場景中解決吧。
AI 程序員生成的完整需求較長,此處并未完整展示。
當(dāng)然,你也可以與 AI 程序員進(jìn)行討論,逐步調(diào)整具體需求的細(xì)節(jié),比如我們可讓 AI 程序員細(xì)化前端需求,以便后續(xù)生成更符合我們審美的游戲界面。
接下來,就讓 AI 程序員幫助我們實(shí)現(xiàn)這個(gè)小游戲吧。以下動(dòng)圖展示了機(jī)器之心測試員與 AI 程序員的完整交互過程。
可以看到,AI 程序員一開始生成了基本上完整可用的代碼,但略有瑕疵。經(jīng)過測試員簡單反饋了報(bào)錯(cuò)信息后,AI 程序員很快便執(zhí)行了修正。我們也得到了功能完備的 Python 小游戲:
另外,我們在需求實(shí)現(xiàn)場景中還可以拉取已有的代碼庫來進(jìn)行迭代升級(jí),比如這里我們拉取了最近比較熱門的一個(gè)開源項(xiàng)目 g1—— 據(jù)稱可極大提升 LLM 的推理能力。
我們讓 AI 程序員簡單地分析了這個(gè)項(xiàng)目并提出了改進(jìn)意見。點(diǎn)擊「確定」,AI 程序員就能替我們完成代碼改進(jìn)。
在機(jī)器之心的試用過程中,AI 程序員基本可以正確理解測試員用并不嚴(yán)謹(jǐn)?shù)淖匀徽Z言表達(dá)的開發(fā)需求或修改意見,并且能夠基于自己的理解準(zhǔn)確地完成開發(fā)或修復(fù)任務(wù)。同時(shí),由于 AI 程序員可集成阿里云 DevOps 平臺(tái)云效及 GitHub,因此我們可以很方便地更新我們的項(xiàng)目代碼庫,推進(jìn)開發(fā)進(jìn)度。
總結(jié)下來,我們發(fā)現(xiàn)通義靈碼的 AI 程序員和以前的 AI 編碼助手有著明顯不同的定位:
AI 編碼助手的核心場景是輔助開發(fā)者完成代碼智能生成和研發(fā)智能問答,幫助程序員寫代碼、補(bǔ)代碼、寫注釋、寫單測、寫代碼優(yōu)化和排查問題,其是在 IDE 工具中作為 C0pilot 提供輔助。
AI 程序員的自主程度更高,可以實(shí)現(xiàn)自動(dòng)缺陷修復(fù)和自動(dòng)需求實(shí)現(xiàn),還能與開發(fā)者進(jìn)行開放式的問答。因此,比起作為 C0pilot 的 AI 編碼助手,AI 程序員更像是一個(gè)可以在用戶指揮下自主工作的開發(fā)者。用戶本身只需要檢查 AI 程序員的生成結(jié)果并點(diǎn)擊「確認(rèn)」或提出修改意見即可,并且這一切都可以僅通過自然語言實(shí)現(xiàn)。
另外不得不提的是,通義靈碼 AI 程序員無需任何 IDE 工具,web 端就支持全部功能。沒錯(cuò),也就是說,你可以在任何可使用瀏覽器的設(shè)備上進(jìn)行項(xiàng)目開發(fā)!
在手機(jī)瀏覽器上也能流暢地使用 AI 程序員。
背靠通義大模型,能力全面升級(jí)
大模型爆發(fā)以來,能「自動(dòng)寫代碼」的 AI 輔助編程便不斷成為人們的話題。最近一段時(shí)間里,AI 程序員正逐漸走向?qū)嵱没。其中,通義靈碼又是最吸引關(guān)注的工具之一。
今年4月,阿里云就放出消息稱,公司正在內(nèi)部全面推行 AI 編程,使用通義靈碼輔助程序員寫代碼、讀代碼、查 BUG、優(yōu)化代碼等。通義靈碼還被專門分配了一個(gè)工號(hào)——AI001,順利「入職」了阿里云。
過去一年中,通義靈碼憑借強(qiáng)大的輔助編程能力收獲了不少用戶:其 IDE 插件下載量超500萬,并已入職中華財(cái)險(xiǎn)、哈啰集團(tuán)、長安汽車等公司,累計(jì)生成代碼超10億行,每日輔助開發(fā)者生成代碼超3000萬次,客戶行業(yè)包括金融、制造、互聯(lián)網(wǎng)、交通、汽車、能源等,是國內(nèi)最受歡迎的輔助編程工具。
具體能力上,通義靈碼 AI 編碼助手立足通義大模型,采用了阿里云首創(chuàng)的代碼倉庫知識(shí)圖結(jié)構(gòu),支持64K 上下文,具備跨文件感知、檢索增強(qiáng)式生成(RAG)和自適應(yīng)生成能力,研發(fā)問答準(zhǔn)確率超過90%。據(jù)統(tǒng)計(jì),通義靈碼為已有用戶貢獻(xiàn)的代碼比例已經(jīng)接近30%。
與此同時(shí),隨著通義大模型在語義理解、代碼生成、開發(fā)工作流等方面全面進(jìn)化,通義靈碼的能力也在全面提升。較之通義靈碼 AI 編碼助手,最新升級(jí)的 AI 程序員同時(shí)具備了架構(gòu)師、開發(fā)工程師、測試工程師等多種崗位技能。
這樣的應(yīng)用體驗(yàn),離不開基礎(chǔ)大模型能力的提升。在阿里云昨天上午發(fā)布的通義千問 Qwen2.5系列模型中,就包括一個(gè)針對編程任務(wù)微調(diào)的模型 Qwen2.5-Coder(目前有1.5B 和7B 版,即將推出32B 版),其在多項(xiàng)評(píng)估基準(zhǔn)上都取得了卓越表現(xiàn)。
通義靈碼 AI 程序員正是基于通義大模型構(gòu)建的多智能體應(yīng)用,并且由于其參數(shù)量(千億級(jí))必定遠(yuǎn)高于開源版通義大模型,因此其表現(xiàn)也必定要優(yōu)秀得多。
再往底層看,阿里云還有堅(jiān)實(shí)的基礎(chǔ)設(shè)施。進(jìn)入 AI 時(shí)代之后,云計(jì)算正在向 MaaS(模型即服務(wù))演進(jìn)。阿里云正在全面投入 AI大基建的升級(jí)過程,已構(gòu)建了全棧的技術(shù)儲(chǔ)備。其中包括圍繞 AI 應(yīng)用自研開發(fā)的磐久服務(wù)器系列,其具備由多種芯片支持的異構(gòu)算力,可支持 AI 不同側(cè)面的計(jì)算需求。
周靖人表示,通過技術(shù)的優(yōu)化,模型快速迭代、推理架構(gòu)和系統(tǒng)的優(yōu)化,阿里云希望能把計(jì)算的紅利帶給更多人。不過,今天大模型的應(yīng)用與創(chuàng)新還處于早期階段。
結(jié)語
正如阿里 CEO 吳泳銘在云棲大會(huì)上說的:隨著技術(shù)的進(jìn)步,未來統(tǒng)一通用的語言或許會(huì)是 Token,新的產(chǎn)業(yè)革命就在眼前。
AI 程序員的加入,正在顛覆科技公司的工作方式。它不僅能顯著縮短工程師們的日常開發(fā)時(shí)間,提高效率,優(yōu)化工程資源的分配,使人們能夠?qū)W⒂诟邞?zhàn)略性的創(chuàng)新任務(wù)。
對于那些鮮少接觸編程的普通人來說,AI 程序員也將很快使復(fù)雜的開發(fā)流程變得觸手可及。無需深入的編程知識(shí)或繁瑣的環(huán)境配置,只需依靠 AI 的力量,人們便能輕松完成從規(guī)劃、開發(fā)到部署和優(yōu)化的全流程操作,一站式構(gòu)建新應(yīng)用,實(shí)現(xiàn)以前無法想象的創(chuàng)新。
展望未來,我們或許可以見證黃仁勛的預(yù)言,技術(shù)正在進(jìn)入正反饋的循環(huán),用 AI 自動(dòng)寫 AI 的方式,我們將會(huì)以「摩爾定律平方」的速度前進(jìn)。
以 AI 程序員為起點(diǎn),技術(shù)發(fā)展的速度只會(huì)愈加驚人。我們正站在一個(gè)前所未有的拐點(diǎn)上,科技的進(jìn)步不再僅僅依賴于人類的智慧,而是通過 AI 的賦能,實(shí)現(xiàn)新的技術(shù)進(jìn)化與革新。
文章內(nèi)容僅供閱讀,不構(gòu)成投資建議,請謹(jǐn)慎對待。投資者據(jù)此操作,風(fēng)險(xiǎn)自擔(dān)。
2024年的Adobe MAX 2024發(fā)布會(huì)上,Adobe推出了最新版本的Adobe Creative Cloud。
奧維云網(wǎng)(AVC)推總數(shù)據(jù)顯示,2024年1-9月明火炊具線上零售額94.2億元,同比增加3.1%,其中抖音渠道表現(xiàn)優(yōu)異,同比有14%的漲幅,傳統(tǒng)電商略有下滑,同比降低2.3%。
“以前都要去窗口辦,一套流程下來都要半個(gè)月了,現(xiàn)在方便多了!”打開“重慶公積金”微信小程序,按照提示流程提交相關(guān)材料,僅幾秒鐘,重慶市民曾某的賬戶就打進(jìn)了21600元。
華碩ProArt創(chuàng)藝27 Pro PA279CRV顯示器,憑借其優(yōu)秀的性能配置和精準(zhǔn)的色彩呈現(xiàn)能力,為您的創(chuàng)作工作帶來實(shí)質(zhì)性的幫助,雙十一期間低至2799元,性價(jià)比很高,簡直是創(chuàng)作者們的首選。
9月14日,2024全球工業(yè)互聯(lián)網(wǎng)大會(huì)——工業(yè)互聯(lián)網(wǎng)標(biāo)識(shí)解析專題論壇在沈陽成功舉辦。