程序員該如何打贏 AI 編程?這兩種編程范式,值得你去深研 – NPCon 演講實錄
分享嘉賓 | 王詠剛
整理 | ChatGPT 責編 | 夢依丹
出品 | CSDN(ID:CSDNnews)
在 ChatGPT 所引爆的新一輪編程革命中,自然語言取代編程語言,在只需編寫提示詞/拍照就能出程序的時代,未來的編程范式只是寫寫提示詞那么簡單嗎?
程序員要想在該場變革中立于不敗之地,該如何與 AI 協(xié)同作業(yè)?在 3 月 25 日由 CSDN、《新程序員》聯(lián)合主辦的“新程序員大會(NPCon):AIGC 與大模型技術應用峰會”上,來自 SeedV 實驗室創(chuàng)始人兼 CEO,創(chuàng)新工場 AI 工程院執(zhí)行院長王詠剛表示:今天所有的計算機、系統(tǒng)都會被 AI 去重新改寫,重新定義。這也引發(fā)了無數(shù)人思考:未來的程序員真的會被簡化為提示詞的編寫員嗎?然后由提示詞操縱 AI?是不是這樣一個非常簡單的范式,就可以總結(jié)未來所有的 AI 開發(fā)?
王詠剛給出了否定的答案,其表示,「未來的 AI 開發(fā)應該是一種多范式的開發(fā)流程」。
王詠剛,SeedV 實驗室創(chuàng)始人兼 CEO,創(chuàng)新工場 AI 工程院執(zhí)行院長
本文是由 ChatGPT 整理的演講實錄,責編稍作調(diào)整:
一切都將被 AI 重新定義
“最近一段時間,我處在既興奮又焦慮的狀態(tài)之下,十幾年的 NLP 經(jīng)驗被拉到與剛畢業(yè)大學生一樣的門檻之上。我的開發(fā)經(jīng)驗并不比當下使用 ChatGPT 開發(fā)的大學生有任何優(yōu)勢”。
我是從 98 年開始寫商業(yè)化程序的老兵,擁有十多年的自然語言工作經(jīng)驗,5、6 年的 AI 投資和孵化經(jīng)歷?,F(xiàn)在又再次以一個創(chuàng)業(yè)者的身份開啟一段全新的歷程。我呼吁大家現(xiàn)在立刻開始跟 AI 協(xié)作起來,無論是學習、開發(fā)還是創(chuàng)業(yè),趕快行動,時下的每分每秒,技術、產(chǎn)品、應用都在改變著未來。
想象一下最近一個月里,哪些企業(yè)成為了最受矚目的話題?你最常聽到的聲音來自哪類企業(yè)?或許你會注意到,有一類企業(yè)卻鮮有出現(xiàn)——手機廠商。近期幾乎所有手機廠商都遭遇了一些難題。那么這些廠商和人工智能有什么直接的聯(lián)系呢?值得思考。
作為對未來技術的期許,我希望能夠有一款革命性的手機,它將以人工智能為中心,從硬件平臺、上層應用到整個使用體驗都進行重新設計。
如果有一天,Open AI 創(chuàng)始人說他們要推出一款革命性的手機,我一點也不會感到意外。因為我們正處于一個所有應用、計算機和計算機系統(tǒng)都將被人工智能重新定義的時代。蔣濤說未來每個人都將成為程序員和計算機設計師,而我們之前積累了大量的工程和科研經(jīng)驗,也見證了大量的投資和創(chuàng)業(yè)案例。
未來的程序員真的只需要編寫提示詞進行開發(fā)嗎?
最近,許多人問我一個問題:市場上出現(xiàn)的很多創(chuàng)業(yè)團隊,包括美國、歐洲和中國的團隊,是否都只是簡單地調(diào)用 GPT 的 API,輸入一個提示詞,然后就獲得了驚人的功能。這樣的創(chuàng)業(yè)方式和開發(fā)方式算是真正的創(chuàng)業(yè)和開發(fā)嗎?如果所有人都在這個層面上開發(fā),那么你的系統(tǒng)和產(chǎn)品是否還有技術門檻?
作為一位有著多年投資經(jīng)驗的投資人,我也在思考同樣的問題。當我面對著 100 個項目,全都是通過使用 Hackathon 方式,僅僅用幾個小時的時間,甚至是由幾個中學生打造而成的項目,你該如何選擇投資的項目呢?
所有這些項目在技術門檻上幾乎都處于同一水平線上。誰將成為 AI 時代的“快手”?誰將成為 AI 時代的“移動支付”?這個答案可能沒有人知道。
但是,讓我們不要再去思考或者糾結(jié)這個問題了。行動比思考和討論更加有效。不論你是在投資、創(chuàng)業(yè)、研發(fā)或者進行任何形式的思考,先行動起來。因此,今天我?guī)ьI我們的團隊思考一個問題:未來的程序員是否真的只需要寫幾個提示詞就可以了?我們需要去挑戰(zhàn)并回答這個問題。
如果今天的程序員通過編程語言來控制計算機,那么未來的程序員是否只需要編寫提示詞來操縱 AI 呢?雖然這個簡單的范式可能能夠總結(jié)未來所有 AI 開發(fā),但我認為未來的 AI 開發(fā)應該是多范式的。
為了解釋這個想法,我想給大家看兩幅畫作?,F(xiàn)在有一些 AI 算法能夠繪制非常精美的畫作,但你能猜出這兩幅畫中哪一幅是由 AI 算法繪制的嗎?
事實上,未來的 AI 開發(fā)需要采用多種不同的開發(fā)流程,而不只是簡單地編寫提示詞來操縱 AI。
右邊的畫是由今天的 AI 算法生成的,而左邊的畫則不同,它是通過數(shù)學公式主導生成的,是一張由分形公式產(chǎn)生的三維圖案。
十年前,這樣的軟件便能夠幫助藝術家創(chuàng)造出數(shù)字藝術品,但那時人們并未將它視作數(shù)字藝術。雖然這種軟件現(xiàn)在幾乎沒有人維護了,但它們創(chuàng)造的畫面仍然能夠帶給我們震撼的視覺感受。
我想通過這兩幅畫來說明一個問題:今天的 AI 是建立在神經(jīng)網(wǎng)絡或深度學習的數(shù)學范式下的數(shù)學擬合體系上的,它擬合的是我們所面臨的文本、圖像等多種數(shù)據(jù)中的統(tǒng)計規(guī)律。然而,這種擬合體系并非是唯一存在的數(shù)理思維模型。
自古希臘起,人類就已經(jīng)建立起了一套完整的數(shù)理邏輯思維方法,從歸納到演繹,涵蓋各種數(shù)學家和物理學家的研究成果。今天,我們?nèi)阅軌蛲ㄟ^這些優(yōu)美的公式,從演繹的角度推導出許多不同層級的應用結(jié)果。因此,未來的 AI 開發(fā)應該是一個多范式的開發(fā)流程。
未來 AI 編程的兩種范式
如果您來自某些垂直行業(yè),例如數(shù)學模擬、物理模擬或大氣模擬等,您會發(fā)現(xiàn)在這些任務中通常有兩種途徑。第一種方法是使用公式或解方程的方式進行模擬,第二種方法是使用與 AI 統(tǒng)計相關的統(tǒng)計任務進行模擬。這兩種任務存在本質(zhì)上的差異。它們有一些共性,例如都涉及到隨機性,但左圖任務更注重確定性。當您解決一個方程或使用數(shù)學公式進行推導時,結(jié)果在很大程度上都符合預期。
右圖的任務則不同,AI 模型采用了大規(guī)模的統(tǒng)計模型,具有強大的內(nèi)稟特性,其中包括一種被稱為不確定性或非確定性的特性。這個特性是所有從事 AI 軟件開發(fā)的人都需要首先解決的問題。
有人提出了提示工程(Prompt Engineering)概念。提示工程的最基本任務是將 AI 從那種容易陷入胡說八道的狀態(tài)中拉回來,讓它盡可能準確地完成我要求的任務。專業(yè)工程師的最基本任務是將右圖的 AI 從發(fā)散、隨機化、不確定性等方面帶到左圖人的預期里面。
在人類的預期范圍內(nèi),如蔣濤所提到的類似于 Wolfram Mathematica 這樣的系統(tǒng)中,它可以非常精確地控制。舉個例子,如果你需要重新整理一個包含公司過去數(shù)萬條交易數(shù)據(jù)的 Excel 表格,將所有交易單位從舊的會計制度轉(zhuǎn)換為今天的新會計制度,如果 AI 在處理這 10,000 多條數(shù)據(jù)時出現(xiàn)了一兩個錯誤,該怎么辦?
這是當下迫切需要考慮的問題,AI 所犯的錯誤能否和不確定性能否及時發(fā)現(xiàn)。因為 AI 系統(tǒng)的錯誤和不確定性可能會對許多任務產(chǎn)生重大影響。為了解決這個問題,可以考慮以下幾點:
1、設計可解釋性的 AI 系統(tǒng),這樣可以更好地理解 AI 系統(tǒng)的決策過程和輸出結(jié)果,從而更容易發(fā)現(xiàn)錯誤和不確定性;
2、引入監(jiān)督和反饋機制,監(jiān)督 AI 系統(tǒng)的輸出結(jié)果并及時傳回錯誤和不確定性信息,以便修正和改進 AI 系統(tǒng)的性能;
3、利用集成學習和多模型融合等技術,提高 AI 系統(tǒng)的魯棒性和準確性,從而降低錯誤和不確定性的風險;
4、建立完善的測試和評估體系,定期測試和評估 AI 系統(tǒng)的性能,并及時發(fā)現(xiàn)錯誤和不確定性。
這些措施都可以幫助我們更好地管理和控制 AI 系統(tǒng)的錯誤和不確定性,從而提高 AI 系統(tǒng)的可靠性和性能。
如果我們編寫一個非常牢固的程序,它的出錯概率會很小。但是,如果我們將任務交給不確定性較高的 AI,必須對其進行測試和檢查,以確保其輸出的結(jié)果是正確的。
此外,如果不加任何提示工程,不加任何中間思維鏈,即使是用 GPT-4 來生成三維坐標,也是有困難的。
在經(jīng)過指令工程、提示思維鏈、工具意圖等技術增強后,AI 的生成結(jié)果會精準很多。因此,必須謹慎地處理 AI 輸出的結(jié)果,并且在必要時對其進行更正。
我今天分享的主題是關于未來 AI 編程范式的討論。未來的 AI 編程范式將不再局限于簡單的提示詞所得出結(jié)果的編程范式,而是一個相對復雜的工程。這個工程至少包括兩個編程范式:
1、適用于端到端的感知類任務、創(chuàng)造性任務和探索性任務。它支持我們以 n to n 的方式,通過提示詞得到結(jié)果。
2、適用于強調(diào)控制力、結(jié)果確定性和計算精準性的所有應用任務。在這種任務中,我們不能完全交給大型模型一次性解決問題。相反,我們需要通過插件的方式調(diào)用各種后臺服務,這些中間層服務在調(diào)用底層的基于數(shù)理邏輯和傳統(tǒng)計算機算法的功能模塊時,將成為未來長期存在的編程范式。
雖然我今天特別善于使用提示,但我也擅長傳統(tǒng)的計算機算法。我建議你們盡快將你們的算法變成可以被 GPT 調(diào)用的插件之一,變成 GPT 可以使用的工具之一。
在未來,人們的主要應用程序?qū)⑹?GPT 或類似的 AI 程序,而不是人類開發(fā)的傳統(tǒng)計算機程序。因此,人類工程師的任務是幫助 AI 開發(fā)大量能夠與現(xiàn)實世界進行精確交互的插件或工具。簡單來說,在這種范式中,人類工程師的角色將被降級,但這是我們必須承認的現(xiàn)實。讓我們從現(xiàn)在開始行動起來,而不是過多地討論,謝謝大家。
分享嘉賓簡介:
王詠剛,SeedV 實驗室創(chuàng)始人兼 CEO,創(chuàng)新工場 AI 工程院執(zhí)行院長。專注于人工智能前沿科技研發(fā)。曾以聯(lián)合創(chuàng)始人身份創(chuàng)立過包括上市公司在內(nèi)的多家人工智能科技公司,也曾是人工智能高端應用型人才培養(yǎng)項目 DeeCamp 的發(fā)起者和領導者。王詠剛曾在谷歌公司從事技術工作超過十年,在自然語言處理,分布式系統(tǒng),動畫和游戲引擎等方面有專深積累。