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