97国产精品一区二区视频_国产午夜毛片色哟哟_惠民福利国产91精品看黄网站在线观看_搡老熟女老女人一区二区三区_国产做a∨在线视频观看免费_日韩 综合 婷婷 图_成人黄色一级毛片片_萧山本地第一网络媒体_亚洲国产精品无码久久久曰_亚洲欧美日韩岛国色图

快捷導(dǎo)航

為什么只有AI編程成功落地?

2025-1-14 13:10| 發(fā)布者: admin| 查看: 104| 評(píng)論: 0
摘要: 本文來(lái)自微信公眾號(hào):阿茶的AI之路,作者:起名賊費(fèi)勁的阿茶,題圖來(lái)自:AI生成原本計(jì)劃寫(xiě)一篇2024年AI領(lǐng)域的年度總結(jié),但鴿了?,F(xiàn)在決定將內(nèi)容拆分成系列文章。開(kāi)局先放王炸,聊聊為什么大模型落地喊得火熱,但是實(shí) ...

為什么只有AI編程成功落地?


本文來(lái)自微信公眾號(hào):阿茶的AI之路,作者:起名賊費(fèi)勁的阿茶,題圖來(lái)自:AI生成

原本計(jì)劃寫(xiě)一篇2024年AI領(lǐng)域的年度總結(jié),但鴿了?,F(xiàn)在決定將內(nèi)容拆分成系列文章。開(kāi)局先放王炸,聊聊為什么大模型落地喊得火熱,但是實(shí)際落地的場(chǎng)景只有AI編程。

AI編程無(wú)疑是當(dāng)下大模型落地最成功的一個(gè)領(lǐng)域。從Github的Copilot,到Cursor,再到第一個(gè)AI程序員Devin。好多人都在說(shuō):AI編程找到了PMF(Product Market Fit,產(chǎn)品市場(chǎng)契合)。

但為什么是它?

有人說(shuō)“因?yàn)槭钦鎸?shí)需求”。難道AI在其他領(lǐng)域就是偽需求嗎?

有人說(shuō)“因?yàn)榇a比自然語(yǔ)言更容易生成”。真的是這樣嗎?

還有人說(shuō)“其他領(lǐng)域的模型能力還不夠”。但為什么編程夠呢?

這些解釋都過(guò)于表面,今天就從我的角度來(lái)解析為什么AI編程能成功落地,以及它未來(lái)的發(fā)展。

先從一個(gè)問(wèn)題開(kāi)始。

一、代碼和自然語(yǔ)言,到底哪個(gè)更難生成

“代碼的關(guān)鍵詞少,規(guī)則固定,所以更容易生成?!边@是解釋AI編程為什么好用的常見(jiàn)說(shuō)法。

聽(tīng)起來(lái)挺有道理的?代碼就那些關(guān)鍵詞,模型只要從有限的詞里面挑就行了,采樣空間相比自然語(yǔ)言小太多了。

但是什么時(shí)候“詞少=容易”了?如果真的是這樣的話(huà),數(shù)學(xué)問(wèn)題的描述足夠精簡(jiǎn),符號(hào)也少。那大模型做數(shù)學(xué)問(wèn)題應(yīng)該更強(qiáng)吧。

顯然不是這樣。

大模型到現(xiàn)在連JSON都弄不明白。JSON是一種編程領(lǐng)域常用的數(shù)據(jù)交互格式,在面對(duì)較為復(fù)雜的JSON時(shí),大模型經(jīng)常會(huì)出現(xiàn)括號(hào)對(duì)不上、層級(jí)關(guān)系錯(cuò)亂的問(wèn)題。

這個(gè)“代碼更容易生成”的論點(diǎn),其實(shí)混淆了“生成”和“應(yīng)用”兩個(gè)階段。

在自然語(yǔ)言生成中,我們對(duì)大模型的容忍度很高。它可以犯語(yǔ)法錯(cuò)誤,可以前后矛盾,可以邏輯混亂,我們依然能從中提取有價(jià)值的信息。容錯(cuò)性非常高。

但代碼生成完全是另一個(gè)維度的挑戰(zhàn)。就像做數(shù)學(xué)題,代碼能跑就是能跑,跑不通就是報(bào)錯(cuò)。它不存在“基本正確“或“大致可用“的中間狀態(tài)。每一個(gè)分號(hào)、每一處縮進(jìn)、每一個(gè)變量名都必須精確無(wú)誤。所以代碼生成其實(shí)是更難的,因?yàn)閷?duì)代碼的可用性要求是遠(yuǎn)高于文本的。

二、核心:可信驗(yàn)證

代碼生成難度更高,為什么它應(yīng)用得最好呢?那些難度低的領(lǐng)域?yàn)槭裁捶炊鴳?yīng)用效果差呢?真正原因其實(shí)是編程具有一種可信驗(yàn)證機(jī)制。

所謂可信驗(yàn)證,簡(jiǎn)單地說(shuō),就是一種能夠快速、客觀地判斷AI輸出結(jié)果的可用性的驗(yàn)證模式。

1. 客觀性:驗(yàn)證結(jié)果不依賴(lài)人或者AI模型的主觀判斷;

2. 即時(shí)性:能夠立刻得到驗(yàn)證結(jié)果;

3. 確定性:對(duì)就是對(duì),錯(cuò)就是錯(cuò)。

接下來(lái)我將論述可信驗(yàn)證是怎樣讓AI編程成功的。

1. 應(yīng)用端的應(yīng)用:快速而準(zhǔn)確的驗(yàn)證

為什么說(shuō)編程領(lǐng)域有著完美的可信驗(yàn)證?這讓我想到網(wǎng)上流傳的一句話(huà):

戀人會(huì)背叛你,朋友會(huì)欺騙你,但數(shù)學(xué)不會(huì),因?yàn)閿?shù)學(xué)不會(huì)就是不會(huì)。

答案就藏在代碼的本質(zhì)特性中:程序設(shè)計(jì)就像數(shù)學(xué)一樣,是一個(gè)非黑即白的世界——能跑就是能跑,跑不了就是跑不了。 這種確定性來(lái)自一個(gè)關(guān)鍵角色:編譯器。它負(fù)責(zé)將代碼編譯成可執(zhí)行文件,這個(gè)過(guò)程是嚴(yán)格符合語(yǔ)法規(guī)定的。

為什么只有AI編程成功落地?

編譯器將代碼編譯成可執(zhí)行程序

在這個(gè)過(guò)程中,編譯器扮演著一個(gè)獨(dú)特的角色:它是第三方的、非AI的、完全可靠的驗(yàn)證機(jī)制。它不會(huì)被情緒影響,也不會(huì)擔(dān)心被人類(lèi)誘導(dǎo),不會(huì)有主觀偏見(jiàn),只會(huì)忠實(shí)地執(zhí)行語(yǔ)法規(guī)則。符合規(guī)則就可以編譯,不符合就是報(bào)錯(cuò)。

這種嚴(yán)格的驗(yàn)證機(jī)制成就了AI編程的應(yīng)用。在AI嘗試落地的所有領(lǐng)域中,幾乎沒(méi)有哪個(gè)領(lǐng)域能像編程這樣擁有如此客觀、即時(shí)、確定的驗(yàn)證標(biāo)準(zhǔn)。這種驗(yàn)證機(jī)制對(duì)使用者的要求極低——不需要你懂編程原理,不需要你精通算法,只要能運(yùn)行代碼,就能知道大模型輸出的結(jié)果是否可用。

為什么要強(qiáng)調(diào)非AI?

因?yàn)榇竽P褪腔诟怕实模砸褂每煽康膫鹘y(tǒng)的規(guī)則算法。當(dāng)然,你用更高的模型來(lái)驗(yàn)證低模型輸出也可以,但這依然是不可靠的。這點(diǎn)會(huì)在下一小節(jié)繼續(xù)論述。

注1:為了行文流暢,我忽略了一些細(xì)節(jié),例如我把編譯和解釋同時(shí)稱(chēng)作了“編譯”……但是這并不是重點(diǎn)。

注2:程序員直接看代碼生成質(zhì)量也算一種可信驗(yàn)證,但這依賴(lài)于用戶(hù)的知識(shí)水平。這里只討論最基礎(chǔ)的可信驗(yàn)證機(jī)制。

2. 模型端的應(yīng)用:進(jìn)擊的合成數(shù)據(jù)

光有可靠的驗(yàn)證機(jī)制還不夠,模型本身的能力也很關(guān)鍵。(你總不能接受一個(gè)只有5%成功率的大模型吧)但有趣的是,大模型在代碼領(lǐng)域的進(jìn)步似乎特別快,而且一直在進(jìn)步。

這真的只是巧合嗎?

業(yè)界一直在強(qiáng)調(diào)自己家新模型在數(shù)學(xué)和代碼方面的突破,卻很少有人說(shuō)“AI說(shuō)話(huà)更像人了”。為什么?

答案可能會(huì)出乎意料:因?yàn)橛?xùn)練數(shù)據(jù)枯竭,大模型目前可能只能在代碼這個(gè)領(lǐng)域進(jìn)步。

已經(jīng)無(wú)數(shù)人提到過(guò)這個(gè)問(wèn)題了,模型的自然訓(xùn)練數(shù)據(jù)面臨枯竭。在大模型訓(xùn)練中,數(shù)據(jù)和模型架構(gòu)是同等重要的。數(shù)據(jù)的枯竭意味著模型能力提升會(huì)放緩。目前大模型廠商常用的應(yīng)對(duì)策略:

(1)人工生產(chǎn)新的數(shù)據(jù),包括但不限于在網(wǎng)上爬取,或者找人手動(dòng)編寫(xiě)新的數(shù)據(jù);

(2)使用更高級(jí)的或者舊的模型合成數(shù)據(jù)訓(xùn)練新模型。

人工生產(chǎn)新數(shù)據(jù)的成本高昂,大部分都會(huì)采用合成數(shù)據(jù)來(lái)訓(xùn)練。而使用模型生成的合成數(shù)據(jù)又可能導(dǎo)致模型崩潰。已有大量研究證實(shí),質(zhì)量差的合成數(shù)據(jù)和人類(lèi)語(yǔ)言的偏差會(huì)導(dǎo)致后續(xù)訓(xùn)練模型的輸出越來(lái)越偏離人類(lèi)表達(dá)。

那么模型訓(xùn)練方又是如何控制合成數(shù)據(jù)生成質(zhì)量的?目前并沒(méi)有客觀的評(píng)價(jià)標(biāo)準(zhǔn)。主流方案是用更強(qiáng)大的模型來(lái)篩選,以及人工主觀判斷。這不僅成本高昂,還難以規(guī)模化,也不夠可靠。

然而可信驗(yàn)證機(jī)制有效保證了代碼合成數(shù)據(jù)的下限,它縮小了合成數(shù)據(jù)和人類(lèi)數(shù)據(jù)的差異。

代碼的驗(yàn)證標(biāo)準(zhǔn)是二元的(能跑/不能跑),能運(yùn)行并得到正確結(jié)果的就是好程序,報(bào)錯(cuò)的就是錯(cuò)誤程序。這種客觀標(biāo)準(zhǔn)讓我們可以大規(guī)模生成并驗(yàn)證合成數(shù)據(jù),效果等價(jià)于成千上萬(wàn)個(gè)初級(jí)程序員在不知疲倦地編寫(xiě)代碼,從中挑選可用的代碼。

這就是代碼合成可靠的根本原因:即使生成的代碼質(zhì)量不高,但只要能通過(guò)編譯和運(yùn)行,就具備基本的訓(xùn)練價(jià)值。這種低成本的質(zhì)量保證機(jī)制,確保了模型在代碼領(lǐng)域能持續(xù)進(jìn)步。其實(shí),大模型生成的代碼其實(shí)要比很多github上代碼質(zhì)量更高。

3. 可信驗(yàn)證的雙重價(jià)值

通過(guò)上面的分析,我們可以看到,可信驗(yàn)證在AI編程領(lǐng)域發(fā)揮著雙重作用:

  • 在應(yīng)用端,它讓AI編程獲得了用戶(hù)的信任。不需要專(zhuān)業(yè)知識(shí),不需要復(fù)雜判斷,能跑就是能跑,不能跑就是不能跑。這種簡(jiǎn)單直接的驗(yàn)證機(jī)制大大降低了使用門(mén)檻,加速了AI編程的普及。而且讓很多“零知識(shí)用戶(hù)”也可以進(jìn)行嘗試。

零知識(shí)用戶(hù):不會(huì)編程但想做app的人,這個(gè)概念可以引申到其他領(lǐng)域。他們對(duì)可信驗(yàn)證的要求極高,因?yàn)樗麄冏约翰粫?huì)處理異常情況。

  • 在模型端,它解決了AI發(fā)展的數(shù)據(jù)瓶頸。當(dāng)其他領(lǐng)域還在為訓(xùn)練數(shù)據(jù)發(fā)愁時(shí),編程領(lǐng)域已經(jīng)找到了可持續(xù)的數(shù)據(jù)來(lái)源。可信驗(yàn)證確保了合成數(shù)據(jù)的基本質(zhì)量,讓模型能力持續(xù)提升。

可信驗(yàn)證不僅解決了“用戶(hù)敢不敢用“的問(wèn)題,還解決了“模型怎么進(jìn)步”的問(wèn)題。在大模型產(chǎn)品toB端,可靠性一直是最大的痛點(diǎn)。但可信驗(yàn)證機(jī)制提供了一個(gè)極為有效的解決方案 —— 它讓輸出結(jié)果可控、可及時(shí)驗(yàn)證,配合原有的代碼審查集成機(jī)制,大大降低了應(yīng)用風(fēng)險(xiǎn)。

在可信驗(yàn)證的加持下,AI編程形成了一個(gè)良性循環(huán),走出了一條可持續(xù)發(fā)展的道路。

三、關(guān)于AI編程的其他觀察

1. AI編程目前的局限性

(1)代碼生成質(zhì)量依然有待提高

雖然有可信驗(yàn)證機(jī)制,但目前AI生成的代碼質(zhì)量仍然參差不齊。好在我們可以通過(guò)代碼覆蓋率、復(fù)雜度等客觀指標(biāo)來(lái)評(píng)估代碼質(zhì)量(沒(méi)錯(cuò),更高級(jí)的可信驗(yàn)證),這些指標(biāo)又可以反過(guò)來(lái)指導(dǎo)訓(xùn)練數(shù)據(jù)的篩選,形成質(zhì)量提升的閉環(huán)。

(2)AI編程對(duì)語(yǔ)言支持度不均衡

AI在Python上表現(xiàn)出色,而在Java等語(yǔ)言上相對(duì)遜色。這里有兩點(diǎn)原因。

首先是訓(xùn)練數(shù)據(jù)的差異。Python的開(kāi)源社區(qū)活躍,這為大模型提供了海量的高質(zhì)量訓(xùn)練數(shù)據(jù)。

其次是語(yǔ)言特性的影響。Python的語(yǔ)法相對(duì)靈活,容錯(cuò)性更高 ,這使得AI更容易生成可用的代碼。相比之下,Java等強(qiáng)類(lèi)型語(yǔ)言的語(yǔ)法約束更嚴(yán)格,對(duì)代碼生成的要求也更高。

2. 自動(dòng)化會(huì)帶來(lái)額外心智負(fù)擔(dān)

可信驗(yàn)證的即時(shí)性還挺重要的,否則會(huì)給用戶(hù)帶來(lái)意想不到的心智負(fù)擔(dān)。這一點(diǎn)在Devin身上體現(xiàn)得特別明顯。

為什么只有AI編程成功落地?


Devin被譽(yù)為全球首個(gè)AI程序員,號(hào)稱(chēng)具備全棧開(kāi)發(fā)、自學(xué)新技術(shù)、構(gòu)建部署應(yīng)用、自主調(diào)試等多項(xiàng)能力。

初次體驗(yàn)Devin時(shí),它確實(shí)讓人感覺(jué)非常爽。只要你把任務(wù)安排給它,然后就不需要管它了。就像真的擁有了一個(gè)實(shí)習(xí)生可以獨(dú)立完成任務(wù),讓我能專(zhuān)注于其他工作。等著驗(yàn)收就行。

但相比Cursor,Devin存在兩個(gè)致命問(wèn)題:

(1)得到反饋的時(shí)間要更長(zhǎng),這意味著如果我給他的命令是錯(cuò)的,或者他思維錯(cuò)了,過(guò)很久我才會(huì)知道。這會(huì)嚴(yán)重降低工作效率,沉沒(méi)成本也更高了。

(2)調(diào)試成本劇增。AI生成的代碼量越大,debug的難度就越高。因?yàn)檫@些代碼不是你寫(xiě)的,你需要額外的時(shí)間來(lái)理解它的邏輯。而且還有更嚴(yán)重的事情,在你debug的時(shí)候,經(jīng)常會(huì)不知道到底是它代碼生成的有問(wèn)題,還是你操作有問(wèn)題。這點(diǎn)對(duì)于零知識(shí)用戶(hù)更為致命。

考慮到AI同樣可以debug。我專(zhuān)門(mén)做了個(gè)實(shí)驗(yàn):完全以零知識(shí)用戶(hù)的身份,讓Devin寫(xiě)代碼,再用Claude來(lái)debug。Devin寫(xiě)了20多分鐘的代碼,Claude debug了一個(gè)小時(shí),功能依然沒(méi)能跑通。

與自動(dòng)駕駛不同,開(kāi)車(chē)時(shí)你可以隨時(shí)接管,因?yàn)檐?chē)輛的當(dāng)前狀態(tài)是顯而易見(jiàn)的。但在編程中,如果AI走錯(cuò)了方向,之前的工作就全部作廢了。那幾十分鐘的等待,就真的變成了純粹的時(shí)間浪費(fèi)。得到的是你和AI都不想用的一大堆代碼,沒(méi)有任何價(jià)值的代碼。

注:Devin不好用還有個(gè)很大的原因我覺(jué)得是背后的自研模型不夠強(qiáng)。我用Cursor的Agent搭配Claude,生成的代碼質(zhì)量就高很多。

3. AI編程的未來(lái)發(fā)展:更高級(jí)的可信驗(yàn)證

目前應(yīng)用端的可信驗(yàn)證還很初級(jí),主要是看代碼“能不能跑”,考慮的是終端輸出結(jié)果。但隨著技術(shù)發(fā)展,會(huì)出現(xiàn)更高級(jí)的可信驗(yàn)證方法,考慮更多的因素。例如上文的覆蓋率這些指標(biāo)。

現(xiàn)代IDE已經(jīng)能夠自動(dòng)檢測(cè)性能隱患和安全漏洞。這些自動(dòng)化的質(zhì)量評(píng)估機(jī)制,本質(zhì)上也是一種可信驗(yàn)證——它們同樣具備客觀性和即時(shí)性,只是驗(yàn)證維度更加豐富。

其次是自動(dòng)化測(cè)試的進(jìn)化。即使代碼能夠運(yùn)行,也需要驗(yàn)證其功能完整性。自動(dòng)化測(cè)試框架能夠生成測(cè)試用例、檢查邊界條件、驗(yàn)證業(yè)務(wù)邏輯,包括對(duì)代碼性能進(jìn)行檢測(cè),提供了另一層次的可信驗(yàn)證。這些客觀的質(zhì)量指標(biāo)同樣可以反饋到訓(xùn)練環(huán)節(jié)。這些進(jìn)步意味著AI編程可以從“基本可用”進(jìn)化到“高質(zhì)量”,Devin這樣的產(chǎn)品也會(huì)更好用。我依然相信Devin是AI編程的未來(lái),因?yàn)檫@種把人解放的自動(dòng)化才是真正的自動(dòng)化。

但是這種AI編程不適合零知識(shí)用戶(hù),它的未來(lái)或許就是極大的增加程序員的生產(chǎn)力。對(duì)于零知識(shí)用戶(hù),或許Dify這樣的平臺(tái)更可靠。

4. 對(duì)其他領(lǐng)域的啟示

通過(guò)分析AI編程的成功,我們其實(shí)可以得到一個(gè)重要啟示:任何想要成功應(yīng)用AI的領(lǐng)域,都需要找到自己的“可信驗(yàn)證”機(jī)制。

不是所有領(lǐng)域都能像編程那樣有編譯器這種完美的驗(yàn)證工具。也可以借鑒這種思路,在各自領(lǐng)域內(nèi)建立相對(duì)可靠的驗(yàn)證機(jī)制。這個(gè)驗(yàn)證機(jī)制即使早期不能做到100%準(zhǔn)確,但至少要能給出一個(gè)基本的可用性判斷。“要知道模型的下限在哪”。 可信驗(yàn)證不僅能降低使用門(mén)檻,還能為模型訓(xùn)練提供可靠的數(shù)據(jù)來(lái)源。

本文來(lái)自微信公眾號(hào):阿茶的AI之路,作者:起名賊費(fèi)勁的阿茶

本內(nèi)容為作者獨(dú)立觀點(diǎn),不代表虎嗅立場(chǎng)。未經(jīng)允許不得轉(zhuǎn)載,授權(quán)事宜請(qǐng)聯(lián)系 [email protected]

正在改變與想要改變世界的人,都在 虎嗅APP

鮮花

握手

雷人

路過(guò)

雞蛋

關(guān)注我們:東遠(yuǎn)物聯(lián)

抖音

微信咨詢(xún)

咨詢(xún)電話(huà):

199-2833-9866

D-Think | 廣州東遠(yuǎn)智能科技有限公司

地址:廣州市白云區(qū)北太路1633號(hào)廣州民營(yíng)科技園科創(chuàng)中心2棟16樓

電話(huà):+86 020-87227952 Email:[email protected]

Copyright  ©2020  東遠(yuǎn)科技  粵ICP備2024254589號(hào)

免責(zé)申明:部分圖文表述來(lái)自于網(wǎng)絡(luò),如有侵權(quán)請(qǐng)聯(lián)系作者刪除!