天天看點

螞蟻李建國:目前AI寫代碼相當于L2.5,實作L3後替代50%人類程式設計

作者:量子位

白交 發自 凹非寺

量子位 | 公衆号 QbitAI

超70%代碼問題,單純靠基座大模型是解決不了的;

未來3-5年,人類50%程式設計工作可以被替代,有些環節甚至完全自動化。

螞蟻集團代碼大模型CodeFuse負責人李建國說道。

當下,AI代碼生成領域正在野蠻式生長,巨頭湧入,AI員工頻頻上線企業;首個AI程式員Devin被曝造假…… 面對風起雲湧的代碼生成變革,李建國給出了這樣一個明确論斷。

李建國是誰?

清華大學博士,機器學習、深度學習深耕十餘年,論文被引萬餘次。在他的帶領下,螞蟻内部正全面推行AI程式設計。每周已有超五成程式員使用CodeFuse,目前CodeFuse生成代碼整體采納率為30%,已經屬于整個AI程式設計工具中能力第一梯隊,最強Copilot代碼整體采納率差不多在35%。

螞蟻李建國:目前AI寫代碼相當于L2.5,實作L3後替代50%人類程式設計

而在開源這邊,在各社群網站上CodeFuse下載下傳量已經達到170萬左右。

是以不管是學術的權威性,還是産業落地的代表性,李建國博士極具話語權。于是在代碼生成模型和産品爆發式發展的當下,量子位同李建國博士展開了進一步交流。

核心觀點如下:

  • 編寫代碼在整個企業研發過程中所占的比重可能連1/5,甚至1/10都不到;
  • 要實作項目級的需求實作,從原子級需求端到端漸進發展的模式是切實可行的;
  • AI程式員成為企業營運中的新常态已經是勢不可擋的趨勢;
  • 超70%代碼問題,單純靠基座大模型是解決不了的;
  • 目前自然語言程式設計處于L2.5階段,按照萬物摩爾定律的發展趨勢,未來3-4年達到L3,甚至接近L4的水準是有可能的。
  • 相較于前、後端的軟體工程師,AI全棧工程師需求更大。
  • 目前代碼生成變革所面對的挑戰包括:端到端代碼生成能力、Agent推理能力、複雜需求拆解、跨模态橫向互動、安全可信可靠。

編寫代碼隻占整個研發生命周期1/5不到

首先,程式員這個行業曆史并不算長,從20世紀50年代至今,大約有七八十年的曆史。随着技術的進步,程式設計工具不斷更新疊代(打孔- VI編輯器-內建開發環境-輔助程式設計工具),程式員的工作效率得到了顯著提升。

來到大模型時代,相關模型和産品演化疊代十分迅速,可以說十分的“卷”。

對個人開發者而言,AI程式設計工具隻需完成從需求到代碼實作的閉環過程就夠了,就像Copilot這樣的工具。他們更傾向于關注如何高效地實作需求。

但從企業次元則更關注整個研發流程的效率提升,除了關注代碼生成的安全可靠可信,測試建構、釋出運維以及資料洞察等方面也是至關重要的。

我們期望能夠有一個研發智能體,甚至是一個智能總線(bus),它能夠與各個Agent進行互動,并将任務分發下去——從架構設計到前端實作,再到後端開發,以及安全測試和功能測試,最後是效能方面的持續內建/持續部署(CICD)和運維自動化。

整個系統上線後,還能夠自動進行運維布控,并分析産品的使用者通路量(UV)、頁面浏覽量(PV)等資料。

編寫代碼在整個過程中所占的比重可能連五分之一或十分之一都不到。但如果這樣的Agent能将所有環節高效連接配接起來,進而真正提升整個流程的效率。

再加上目前程式員實際所面臨的痛點在于,市面上一些産品大多是原子級能力的實作——通過單體大模型隻能解決30%的代碼補全,無法解決更多的代碼問題,比如跨庫的函數調用。

基于這樣的行業思考,去年9月份開始,我們開源了CodeFuse,并明确提出要建構全生命周期的代碼大模型。

螞蟻李建國:目前AI寫代碼相當于L2.5,實作L3後替代50%人類程式設計

目前,我們已經釋出基礎模型,并持續開發和開源相關的倉庫,涵蓋了從需求設計、程式設計開發、測試建構、釋出運維、到資料洞察分析等多個方面,在modelscope和huggingface上模型下載下傳量已經達到170萬左右。

下一步,我們計劃進行項目級的需求實作,這相當于去實作一個全新的系統。這對基礎模型提出更高的要求——

自然語言了解的能力至少達到GPT-4或GPT-4.5的水準。但從目前的情況來看,我們更傾向于采取一種漸進的模式。

我們首個MileStone是解決倉庫内及跨倉庫的需求實作問題,包括API調用、服務調用,以及涉及到的外部中間件版本更新問題。

如果我們能夠妥善處理這些問題,就能解決剛才提到的70%問題中很大一部分(比如20%的問題),這将顯著提高代碼采納率,并讓使用者感到滿意。

最終要實作項目級别的需求任重而道遠。我認為,代碼基礎模型和Agent技術需要同步快速發展,才能達到我們的目标。

我們的思路相對保守,因為就基礎模型的要求而言,我認為短期内國内要達到GPT水準還存在一定差距。

大模型對軟體開發的範式改變

AI程式員成為企業營運中的新常态已經成為勢不可擋的趨勢。不管是像Devin這種AI程式員,還是我們提到的全生命周期研發智能體,大模型對整個軟體研發範式都是非常大的提效。

過去遇到不懂的問題,人們可能首先會去Google或百度上搜尋,而現在,他們可以直接在代碼中提問,随即獲得一個相對精确的結果,采納後即可使用。

我認為這是一個巨大的效率提升,它代表着進步。人們可以将更多的精力釋放出來,投入到更具創造性的工作中去。

前段時間,CodeFuse釋出了圖生代碼的功能,它可以通過在界面上簡單畫一個框,就能自動生成相應的代碼。

以往可能需要編寫數百行代碼的工作,現在隻需一次點選和畫框操作就能實作。

而要從産品設計的角度來看,我認為實作無縫接入和無感體驗是至關重要的。

這意味着産品應能平滑地融入現有的工作模式中,使用者在使用過程中幾乎不會意識到它的存在,進而極大地提升使用者體驗,并推動整個研發流程的創新和進步。

例如,我們内部每周有超過一萬人的智能代碼生成活躍使用者,很多人都沒意識到自己在使用CodeFuse,在日常使用IDE插件、浏覽器的過程中,使用者已經不知不覺地使用了我們的産品。

我們的目标是服務于整個研發的全生命周期。如果能夠實作這一點,那将是一個革命性的成功。

現在AI寫代碼相當于L2.5

目前整個代碼生成領域,可能處于一個類似于自動駕駛技術中的L2.5級别,許多公司都處于這一水準。

比如自動駕駛L2.5級别的功能,如車道線輔助、前方碰撞檢測等,這些都是作為整體存在的一部分。在大模型領域,也看到了類似的補充功能,包括解釋、注釋、簡化優化和單元測試等。

我們接下來的目标是在某些特定場景下實作L3級别的完全自動化,這是有可能實作的。例如,在效能領域中的持續內建(CICD)場景,就有可能通過大模型的驅動來自動完成,包括觸發檢查、送出,甚至建立拉取請求(PR)等操作。

然而,要實作全場景、全鍊路的自動化,前端可能還需要一段時間才能發展起來,複雜的項目級的需求拆解特别是特定領域的拆解,也面臨較大挑戰。我認為可能還需要3-5年的時間,在萬物摩爾定律的推動下,整個社群,包括我們自己的不斷努力和發展。

到那時候,我們可以期待從目前的狀态發展到一個新的階段——

例如,從Copilot到co-worker,現在可能有20%到30%的程式設計工作可以被替代,未來這個比例可能會提高到50%,甚至有些環節可以完全被自動化取代,釋放人去做更有創意的工作。

甚至成為一個full agent。雖然可能無法完全替代人類,但在未來3-5年内,達到L3甚至接近L4的水準是有可能的。

正如自動駕駛技術一樣,雖然已經提出很多年,許多人聲稱已經達到L4級别,但實際上許多場景仍然處于L2.5到L3級别。要實作全場景的自動化,人類仍然需要在其中扮演一個重要的角色。

螞蟻李建國:目前AI寫代碼相當于L2.5,實作L3後替代50%人類程式設計

這樣一來,軟體工程人員的定位其實也在發生變化。以前大家可能專注于前端或後端的開發工作。而現在,AI全棧工程師的需求更大。

過去所謂的全棧工程師意味着前端、後端和資料都懂,但現在可能還需要了解算法。随着大模型發展,前端和後端的工作可能會逐漸由大模型輔助,即作為協作者(Co-worker)來分擔部分功能,進而釋放出開發者的時間。這樣開發者就可以将更多時間投入到提升新的技能上,比如對産品的深入了解,對使用者體驗的關注,對算法創新等。

基于對整個領域進行了深入的探索,我發現要進一步去實作還有不少挑戰,主要有五個方面:

  • 端到端代碼生成能力

基礎模型層面,目前主要是實作代碼補全的功能,但在實際應用中隻有大約30%問題可以通過這種方式解決,剩餘的70%則需要端到端代碼生成能力,需要跨檔案、跨代碼庫,甚至跨代碼庫和文檔庫的了解和互動。

所謂的端到端,對于一個代碼庫而言,一個典型的例子,我們需要能夠直接調用庫中的API,修複問題(issue),甚至能夠複用跨庫的中間件能力。

然而,僅憑基礎模型是無法實作這些的,我們還需要探索更多的能力。

  • Agent推理能力

盡管最近Devin 被曝出示範視訊存在造假,備受關注,但我認為它還是代表了一種趨勢、一種技術流派——

如何将定制工具調用與大型模型相結合,實作整個工作流程的自動化。這個問題,尤其是擴充到全生命周期,實際上相當困難,尤其是面向雲後端的研發環境,工具種類繁多。

比如面向前端應用可能隻有天氣預報、查詢火車票、預定酒店等十幾個工具,但在雲後端,則可能會有數百個甚至上千個工具,每個工具都包含數十個參數。

除此之外,還有需求拆解、跨模态橫向互動、安全可信可靠的挑戰。

尤其代碼的安全可信可靠,像螞蟻這樣的企業級使用者,需要應對面向金融級别的高可用性和安全性的要求,也充滿了挑戰。

不過也正因為在金融級垂直場景的深耕,包括資源配置和曆史經驗積累,螞蟻也構成了屬于自己的場景優勢。

首先,我們擁有涵蓋整個生命周期各個環節全方位的團隊,尤其在雙十一等大型促銷活動期間的高可用性方面經驗豐富,這有助于推進全生命周期的代碼大模型,這是我們與外部的主要差別之一。

其次,我們在特定領域,如金融領域,以及前端領域,都有一定經驗積累,尤其是在支付系統等對安全性要求極高的場景中。這些積累使我們在安全性、可靠性和可信度方面具有差異化優勢。

螞蟻李建國:目前AI寫代碼相當于L2.5,實作L3後替代50%人類程式設計

雖然挑戰不少、道阻且長,但我認為,螞蟻将攜手開源社群一起努力,在萬物摩爾定律的牽引下,未來兩三年可以一定程度解決好這個問題。

One More Thing

最後,面對當下大模型發展,李建國博士忍不住感歎:

我以前做深度學習,那時候非常卷,可能2019年之前,我發現這個領域已經卷不動了,跳出來做NLP,發現這個領域也還是更加的卷。

但不得不承認,大模型再次點燃了NLP、視覺處理、代碼生成等各個領域的熱度,煥發新的活力。

對于接下來的發展,李建國點名最看好具身智能的發展,這将是未來5到10年的研究熱點。

它将成為數字世界與實體世界之間的橋梁,能夠感覺并執行操作。這可能會帶來類似Matrix(黑客帝國)這樣的場景的巨大進步,甚至可能像電影《終結者》中展示的那樣,成為真正的巨大飛躍。

— 完 —

量子位 QbitAI · 頭條号簽

關注我們,第一時間獲知前沿科技動态約

繼續閱讀