天天看點

國内首個AI程式員入職阿裡雲:專屬工号AI001,KPI是一人寫完公司20%代碼

國内首個AI程式員入職阿裡雲:專屬工号AI001,KPI是一人寫完公司20%代碼

機器之心報道

作者:蛋醬

你肯定聽過一句話:學計算機要從娃娃抓起。

在過去的很多年,學習程式設計都曾經是一件時髦的事,但随着生成式 AI 技術的發展,科技圈對此的态度似乎有些轉向。

英偉達 CEO 黃仁勳就表示:「未來程式設計交給 AI 就行了,以後人人都是軟體工程師。」不久之後,全球首個 AI 軟體工程師 Devin 給開發者們帶來了億點點震撼,真正引發了人們對程式員這個職業未來前景的熱議。難不成,碼農的飯碗真要被 AI 端走了?其實不然,現在 AI 還隻是程式員的工作助手。

實際上,國内有一位 AI 程式員,已經在某網際網路大廠上崗一段時間了。

它就是阿裡雲數萬名工程師最近頻繁打交道的新同僚 ——「通義靈碼」,專屬工号「AI001」。

國内首個AI程式員入職阿裡雲:專屬工号AI001,KPI是一人寫完公司20%代碼

通義靈碼在正式入職之前,先是在阿裡雲内部和外部「實習」了幾個月。大家的評價都很不錯,真實好評率超 80%。

在傳統的開發模式下,程式員每天需要耗費大量精力編寫重複性代碼、調試優化、編寫代碼注釋,大幅擠壓了核心業務代碼編寫的時間。但自從通義靈碼入職,它在阿裡雲内部各個開發環節擔任起了「代碼助理」角色,包括在寫代碼、讀代碼、查 BUG、優化代碼的全流程中輔助工程師們。

而且,通義靈碼的工作節奏比 996 還要極緻:7x24 小時随叫随到……

幾個月實習期結束後,通義靈碼攢下了不少「工作成果」。以 API 開發測試工作為例,通義靈碼可将數分鐘甚至十幾分鐘的人工編寫測試耗時縮短到秒級,節省了人類程式員 70% 以上的測試代碼工作量。

而阿裡雲今天也再次宣布,通義靈碼在通義千問 APP 上線, 免費向全民開放,所有人可以随時随地在手機上寫代碼、讀代碼、學習程式設計技能。

國内首個AI程式員入職阿裡雲:專屬工号AI001,KPI是一人寫完公司20%代碼

AI 程式員技能拉滿,主打一個全能輔助

如果通義靈碼有履歷,那一定是滿滿的閃光點。

國内首個AI程式員入職阿裡雲:專屬工号AI001,KPI是一人寫完公司20%代碼

先說「背景」,通義靈碼由阿裡雲和通義實驗室聯合開發,目前下載下傳量超過 200 萬,每天都有數百萬行代碼被人類程式員采納。

國内首個AI程式員入職阿裡雲:專屬工号AI001,KPI是一人寫完公司20%代碼

再說「專業」,通義靈碼具有紮實的程式設計基礎,深入學習過萬億量級的代碼資料,目前能夠熟練使用 200 多種程式設計語言,精通其中 16 種語言,包括 Java、Python、Go、JavaScript、TypeScript、C/C++、C# 等主流語言。

在去年雲栖大會初次釋出時,通義靈碼的很多技能點就讓人印象深刻,比如行級 / 函數級實時續寫、自然語言生成代碼、單元測試生成、代碼優化、注釋生成、代碼解釋等功能。

給它一段項目代碼,讓它根據上下文續寫代碼:

國内首個AI程式員入職阿裡雲:專屬工号AI001,KPI是一人寫完公司20%代碼

連單元測試也可以迅速寫出來:

國内首個AI程式員入職阿裡雲:專屬工号AI001,KPI是一人寫完公司20%代碼

如果你對寫代碼注釋這件事感到疲憊,可以讓它代勞:

國内首個AI程式員入職阿裡雲:專屬工号AI001,KPI是一人寫完公司20%代碼

同時,通義靈碼還具備研發智能問答、異常報錯排查等能力,減少了原本排查工作的繁雜程度:

國内首個AI程式員入職阿裡雲:專屬工号AI001,KPI是一人寫完公司20%代碼

此次,正式入職阿裡雲的通義靈碼新增了「代碼優化」功能,更新後的問答模型也更加準确,同時增強了跨檔案補全、函數補全等能力,說句「脫胎換骨」不為過。

得益于通義靈碼的助力,無論是前端、後端還是運維等多個技術崗位的員工的工作效率都大大提升,尤其是在編碼單元測試、建構腳本生成和了解、跨語言代碼轉換等任務上。

通義靈碼還有一點優勢在于支援企業級代碼庫專項訓練,能夠更好了解企業的代碼和文檔資料,并支援國産化适配。未來,阿裡雲還将在内部 JetBrains IDEs、Visual Studio Code 等開發工具中全面配置通義靈碼插件,供所有員工使用。

Talk is cheap,Show me the code

說了這麼多,通義靈碼究竟能不能媲美人類程式員?還是要看實戰效果。

在開發階段,先看看新增的「代碼優化」能力:

還有行 / 函數代碼的實時續寫:

視訊連結:https://mp.weixin.qq.com/s/t_OJu1JGrzk7q8A2GAfA0g

在「測試」環節,通義靈碼在生成測試架構、測試用例都非常高效,人類程式員需要幾分鐘甚至十幾分鐘的工作,對于它而言隻是幾秒鐘的事。

視訊連結:https://mp.weixin.qq.com/s/t_OJu1JGrzk7q8A2GAfA0g

測試架構生成

視訊連結:https://mp.weixin.qq.com/s/t_OJu1JGrzk7q8A2GAfA0g

生成測試用例

此外,通義靈碼編寫運維腳本的效率也遠遠高于人類,還可随時協助查找運維問題的解決方案:

視訊連結:https://mp.weixin.qq.com/s/t_OJu1JGrzk7q8A2GAfA0g

過程中,開發者有任何問題都可以提問,比如「我想用資料庫來存儲照片,怎麼做」:

視訊連結:https://mp.weixin.qq.com/s/t_OJu1JGrzk7q8A2GAfA0g

又比如「如何通過 Spring-Boot 編寫一個照片上傳下載下傳的 Web 程式」:

視訊連結:https://mp.weixin.qq.com/s/t_OJu1JGrzk7q8A2GAfA0g

用一個流行詞彙來形容,通義靈碼是個「全能型員工」。無論是開發、測試還是運維場景,都能展現出很強的實力。

AI 越來越強,搶走飯碗 or 利好碼農?

當然我們也好奇,為什麼通義靈碼的水準這麼高?

阿裡雲内部的小夥伴給我們透露了幾點:本質上,通義靈碼能從一個程式設計助手變成一個全能助理,離不開通義大模型的深厚實力。

首先是「基于上下文感覺的自适應生成粒度決策」。通義靈碼具備根據語言類型和上下文場景生成正确的代碼内容(詞級 / 行級 / 塊級 / 函數級 / 類級等)的能力,既能為開發者生成長代碼、提高編碼效率,又能适時生成短代碼、減少打擾。

其次是「基于庫内跨檔案自動感覺的代碼生成」。為了解決幻覺問題,通義靈碼通過先進的端側實時代碼語義分析技術,實時分析目前正在編寫的代碼,并基于代碼語義分析、代碼引用鍊路跟蹤、動态語言類型推導、相似代碼分析等先進的技術方法擷取所需的相關代碼引用、相似的代碼片段等語義資訊,彌補單純關注目前代碼檔案所需的不足。

與此同時,通義靈碼能夠「基于檢索增強進行代碼生成及問答」。具體來說,它通過檢索增強技術實時擷取檢索引擎中的私域知識,讓智能編碼助手根據企業知識生成代碼或回答問題,企業可以即時更新及生效私域知識,使其始終基于最新的私域知識生成或回答問題。

讓我們感慨的是,從微軟此前推出的程式設計助手 Copilot 到 AI 程式員 Devin,AI 給程式員們帶來了一波又一波沖擊。這種革命性的進展,隻花了兩年多的時間。

而通義靈碼在阿裡雲正式上崗,标志着程式設計率先成為大模型技術落地的領域之一。程式設計語言的邊界從此被打破,Java 程式員也能輕松完成 Python、C 等不同程式設計語言的代碼編寫。問題是,會不會有更多的程式員被 AI 端走飯碗?

或許不用太悲觀:正如汽車的出現讓一部分馬車夫沒有了工作,但卻産生了司機這個新的職業。人類程式員和 AI 程式員的關系,應該是互相促進、共同學習。正如軟體開發方法學的泰山北鬥 Kent Beck 所說,有了 AI 工具未來我們 10% 的技能會被 1000 倍的提升。

就比如接下來,迅速融入團隊的通義靈碼會承擔起更艱巨的任務,對阿裡雲的工程師來說絕對是好消息:

「公司未來 20% 的代碼将由通義靈碼編寫,但程式員仍然是研發的核心,他們将有更多時間專注于系統設計以及核心業務開發工作。」

對于普通人來說,未來也無需下載下傳專業軟體,使用通義千問就能寫代碼和學代碼。針對沒有代碼基礎的學生,通義千問可以提供學習建議,例如它可以從理論和實操層面幫助使用者制定一套完整學習 Python 的計劃。

對于 AI 程式員,你有哪些想法?

繼續閱讀