TL;DR
GPT-6 Astra 又引發了一場熟悉的 AI 論戰。這個模型更有能力,Jensen Huang 也在 X 上說 「AGI 已經到來」,社群動態很快就在興奮、好奇與對接下來會發生什麼的恐懼之間來回擺盪。
我理解為什麼大家反應會這麼強烈。AI 正在快速改變,而這些模型現在能做到的一些事情,放在不久前聽起來可能還會讓人覺得很驚訝。但我也注意到,「AI 變得更有能力」 很快就會被推導成 「不再需要開發者」 或 「CSE 要結束了」。我覺得這中間的推論差距非常大。
對我來說,Astra 讓我想到另一個比較容易被忽略的問題:
我們究竟要怎麼知道一個 AI 模型真的變好了?
我們通常會看基準測試,而它們確實有用。但基準測試也會過時。有些會飽和,有些使用的是很難直接衡量的能力代理指標,真實標準答案也可能很複雜,而評估方法本身也會改變。基準分數也不會自動告訴我們,這個模型對我們自己的工作到底有多實用。
Astra 的系統卡就提供了幾個例子,包括較舊的評估已經飽和或被考慮退役、較新的評估改用更貼近真實情境或實驗性資料,以及評估方法會隨時間演變。
這對開發者也很重要。如果 AI 讓寫程式變得更便宜、更快速,軟體工程並不會突然消失。需求、架構、系統設計、安全性、驗證、取捨、維護,以及決定到底該做什麼,依然都很重要。
AI 會改變工作方式。這一點我想已經很明確了。
更有價值的問題是:我們要怎麼運用這個變化,以及我們是否有把 AI 衡量得足夠好,來理解實際正在發生什麼。
每當一個大型 AI 模型問世,似乎都會出現一套熟悉的流程。模型上線、大家開始試用、基準測試結果出來、各種比較開始出現,然後更大的問題也跟著來了。
在 Astra 發表時,NVIDIA 執行長 Jensen Huang 也在 X 上說 「AGI 已經到來」,並恭喜 OpenAI 這次的發表。
如你所料,大家對這句話的解讀非常分歧。有些人把它視為重大里程碑,有些人質疑 Astra 是否真的符合他們對 AGI 的定義,還有人立刻開始思考這對工作和軟體開發意味著什麼。
從我自己動態牆看到的內容來說,大家對開發者在整個局勢中的位置也有很多恐懼。
我不是說這種恐懼不合理。能力越來越強的 AI 確實伴隨著真實風險,而我認為這些風險值得認真看待。
但我認為,把 「這項技術正在快速改變」 和 「開發者不再需要了」 或 「現在已經不需要 CSE 了」 畫上等號,兩者之間有很大差異。
這從能力提升直接推導出的結論,實在大得多了。
軟體開發一定會改變,這幾乎沒有疑問。但當產生程式碼變得更容易時,工作的其他部分也可能變得更重要。
理解問題、設計系統、做架構決策、釐清需求、思考安全性與可靠性、驗證產出的結果、理解取捨,以及知道什麼時候 AI 產生的解法其實是錯的,這些仍然都是打造軟體的一部分。
只因為寫程式碼變快了,這些事情就不會變得不重要。
所以,當大家都在問新模型有多強時,我開始想另一個稍微不同的問題:
我們究竟是怎麼衡量這種能力的?
基準測試有個很方便的地方。你看到模型 A 是 82%,模型 B 是 88%,瞬間就好像有了清楚答案,知道誰比較好。
老實說,基準測試確實有用。沒有它們,要比較 AI 系統會困難得多。有一個共同測試作為起點,是很有價值的。
容易忘記的一點是,基準測試是一種測量工具。它提供的是模型能力的證據,但它本身不是那個能力。
可以想像成溫度計。溫度計會告訴你溫度,但溫度計不是溫度本身。同樣地,基準測試可以告訴我們模型能做些什麼,但它無法完整呈現模型在真實世界中所有能做到的事情。
而隨著模型持續進步,這件事就越來越重要,因為測試本身最後也可能變得沒那麼有資訊量。
一個原本能清楚區分不同模型的基準測試,到了後來可能幾乎所有強模型都拿到接近滿分。到了那個時候,數字依然是數字,但它可能已經沒有以前那麼能說明問題了。
我在 Astra 系統卡裡看到一個很有意思的點,就是它非常坦率地談到評估如何隨時間改變。有些早期評估已經相對飽和,有些正在被考慮退役,而新的評估則被引入,因為舊的評估可能已經不再提供足夠的訊號。
這其實很合理。想像一個測驗,最強的模型現在都拿 97%、98%、98%。這些成績當然很驚人,但如果大多數強模型都已經接近天花板,我們到底還能從那 1% 的差距學到多少?
這個基準測試也許不是變差了,而是它已經到了無法再好好顯示我們在意差異的階段。
某種程度上,這表示基準測試完成了它的工作。它在模型還離天花板很遠的時候幫助我們看見進步,而現在模型已經前進到需要不同方法來區分彼此了。
所以當我看到某個評估被退役或被取代時,我不一定會把它看成基準測試失敗。有時候,這反而是技術真的往前走的訊號。
模型變了,測試也得跟著變。
而我認為,隨著 AI 系統不斷變強,這個想法會越來越重要。
這大概是我看到基準分數時最喜歡問的一個問題。
92% 是依據什麼?
<p align="center">
<img src="https://media.giphy.com/media/3ohhwrsMa5vLKra848/giphy.gif" alt="Suspicious thinking reaction GIF" width="320">
</p>
對某些任務來說,答案很簡單。數學題有已知答案。程式題可以用測試驗證。事實性問題通常可以和可信來源比對。
但當我們評估科學推理、生物預測,或是更長篇、沒有明顯唯一正解的任務時,事情就複雜多了。
這時就會牽涉到真實標準答案(ground truth)。簡單來說,ground truth 是我們在評估模型時當作正確參考的答案或證據。根據問題不同,它可能來自專家、實驗資料、模擬,或其他可信來源。
而有時候,我們無法直接衡量真正關心的能力,所以會用代理指標(proxy)。代理指標是指我們能量測、而且預期能反映那個更難直接衡量能力的東西。
Astra 的系統卡就舉了一個生物領域的例子。其中一項評估是看 AAV 衣殼封裝預測。AAV 是腺相關病毒(adeno-associated virus),衣殼(capsid)是包覆病毒的蛋白外殼。在這個評估裡,模型要預測不同衣殼的封裝表現。這個結果被拿來當作某些更廣泛生物設計能力的代理指標。
使用代理指標本身不一定有問題。在很多領域,這只是實際上最可行的方法,因為要直接測試的成本太高或太困難。
但「模型在這個預測上變得更好」和「模型在這個預測所代表的真實世界能力上變得更好」之間,有很重要的差別。
這兩件事可以相關,但不一定完全一樣。
系統卡也討論了另一個相關問題:BPNet,一個用來做生物預測的模型。如果原始系統的預測本身就含有錯誤或假設,拿那些預測當作測試參考,就可能出現一種奇怪情況:未來的 AI 系統可能會更擅長重現那些模式,但不一定真的變得更擅長我們真正關心的底層生物任務。
這是一個很細微的測量問題,但也非常重要。
分數可能是真的,進步也可能是真的,但我們仍然可以問:這個進步到底代表什麼?
這也是為什麼 Astra 使用未公開的實驗資料以及濕實驗驗證的新生物評估會很有意思。濕實驗驗證基本上就是透過實際實驗室實驗來確認結果,而不只是依賴計算預測。這讓評估和它想衡量的真實世界行為之間有更直接的連結。
所以,當我看到某個基準測試寫著 92% 時,我還是會對這個數字感興趣。
我只是想知道這個數字背後是什麼。
92% 是依據什麼?
還有另一個很容易在看基準圖表時被忽略的部分:測試本身會變。
基準分數不是憑空出現的。背後有資料集、給模型的指令、評分方式、計分方法,有時還有特定工具或模型設定。只要其中任何一項改變,最後那個數字的意義也可能跟著改變。
Astra 的系統卡直接指出了這一點。政策、評分器、資料集、評估方式以及其他測量細節都可能隨時間演進,因此在沒有先搞清楚哪些東西改變了之前,舊結果通常不應該被直接拿來和新結果相比。
所以當我們看到像這樣的結果:
模型 A:90%
模型 B:95%
這五個百分點的差距也許真的有意義。但在拿它來大膽宣稱某個模型遠遠更好之前,最好先確認這兩個數字是不是來自相同類型的評估設定。
還有一個更小但也可能影響部分結果的細節:回答長度。
在某些開放式評估裡,較長的回答可能有更多機會滿足評分者在意的各項條件。這表示模型可能只是因為說得比較多,就拿到更高分,即使對人來說,較短的答案可能更實用。Astra 的系統卡討論了這個問題,並為部分評估提供了長度調整後的分數來加以修正。
這聽起來像很小的技術細節,但當我們想理解一個基準分數到底在說什麼時,這些細節正是關鍵。
數字很重要。
但我們怎麼得到這個數字,同樣重要。
AI 的使用方式也正在改變。我們不再只是丟出一個問題、等一個答案而已。AI 系統現在可以處理多步驟任務、使用工具、和軟體互動、面對不完整的指示,並在需求改變時做出調整。
Astra 的發表資料也提到了這類行為。它描述模型能更好地處理模糊性、在答案可能影響結果時提出具體問題,並且在等待回覆時繼續做其他工作。當決策比較關鍵時,它也可以先等使用者輸入,而不是直接瞎猜。
這類行為很難只用一道題來捕捉。
如果我讓 AI 協助一個 30 分鐘的工作流程,我在意的就不會只是它單題答對了沒。它有沒有理解我真正想做什麼?它在過程中有沒有做出合理決策?當需求做到一半變了,它有沒有處理好?如果出問題了,它能不能恢復?最後結果真的能用嗎?
Astra 的系統卡也加入了更貼近真實工作的評估,像是電腦與瀏覽器任務、模糊指令,以及複雜權限等情境。
這感覺更接近我們現在使用 AI 的方式。
一個模型可能在單一問題回答上非常優秀,但當它必須把任務從頭做到尾時,卻表現不佳。反過來也可能成立:某個系統在單一基準測試上看起來不特別亮眼,但在具備工具與上下文時,卻能表現得出奇地好。
所以我認為,評估問題也正在慢慢改變。
與其只問 「模型有沒有答對?」,我們也許還需要問 「它把整個任務處理得怎麼樣?」
而這是更難衡量的事。
我不認為每次新模型發表時,我們都需要先成為評估方法學專家。但有幾個問題可以讓基準分數更容易理解。
這個基準測試量的是我們在意的能力,還是只是用了某個代理指標,也就是預期能反映那個能力的東西?
如果大多數強模型都已經接近最高分,那這個基準測試可能已經飽和了,也就是說它不再能提供太多空間來看出模型之間有意義的差異。
我們把什麼當作正確答案?是固定答案、專家判斷、另一個模型、模擬結果,還是現實世界的證據?
資料集、評分器、計分方式、提示詞、工具或模型設定有沒有變?即使只是小改變,也會影響我們該怎麼解讀最後的分數。
如果你是開發者,這一點尤其有用。模型可以在通用程式設計基準測試上表現很好,但不代表它就是最適合你自己的程式碼庫、團隊或工作流程的模型。
這時候,你自己的小型評估反而可能非常有幫助。
從你的工作流程中挑 20 或 30 個真實任務,拿來測試不同模型。然後看那些對你真正重要的事情。程式能不能跑?模型有沒有理解需求?它怎麼處理變更?你需要修正多少?當出問題時它能不能恢復?花了多久,成本多少?
你不需要因為這些大基準分數,就完全放棄它們。它們仍然能提供一個有用的整體印象。
而你的真實任務,只是再補上一塊證據;有時候,那一塊才是最重要的。
這裡就把基準測試的討論,拉回到我在 Astra 相關內容裡一直看到的一個說法:「AI 會取代開發者。」
我能理解為什麼大家會問這個問題。如果模型可以寫程式、理解程式碼庫、使用工具、處理任務,並在過程中應對變化,那麼思考幾年後的軟體開發會變成什麼樣子,是很合理的。
我確實預期工作會改變。有些事情會快很多,有些任務可能不再需要那麼多人力,而隨著工具進步,某些技能的重要性可能會下降。同時,也會有其他技能變得更重要。
舉例來說,如果產生程式碼變得容易很多,難的部分可能會往 「到底該做什麼,以及該怎麼做」 移動。
真正的需求是什麼?我們有哪些限制?系統應該怎麼設計?當系統成長時,架構撐得住嗎?解法是否安全且可靠?我們要怎麼驗證 AI 產出的內容?六個月後需求變了怎麼辦?這整套東西真的有解決使用者的問題嗎?
這些問題不會因為 AI 能快速產生幾百行程式碼就消失。
某些情況下,它們甚至會變得更重要,因為產生多種可行實作變得更容易了。還是得有人理解各種選項,並判斷哪個才適合當下情境。
所以我覺得 「CSE 已經不需要了」 這種說法對我來說太極端了。電腦科學與軟體工程本來就不只是寫程式碼而已。程式碼只是打造軟體的一部分,不是全部。
這件事一定會改變,而且有些改變可能會很大。但我寧願先觀察工作實際怎麼演進,也不想太早就判定整個領域要消失了。
也許對開發者來說,更有用的問題不是 「AI 會不會取代我?」,而是 「當 AI 接手越來越多工作時,我應該在哪些地方變得更強?」
我不想輕忽 AI 帶來的擔憂。關於安全、濫用、資安、可靠性、就業,以及我們應該給這些系統多少自主權,都是真正需要面對的問題。這些都不是小問題,隨著技術越來越強,它們更值得嚴肅看待。
同時,我也不認為每一次能力提升,都必須被解讀成某個職業的終結。當我看到 AI 會寫程式時,我看到的是一項正在改變軟體開發的技術。我不認為唯一可能的結論就是開發者完蛋了。
對於越來越複雜的 AI 系統也是一樣。與其直接跳到「人類還需要嗎」這個問題,我覺得更有用的是問:哪些工作部分可以交給 AI、哪些地方仍然需要人介入,以及什麼樣的監督方式才合理。
而當我看到基準分數上升時,我也會想知道那個數字背後到底是什麼。測了什麼?怎麼測的?這個基準測試還有沒有提供有用的訊號?這種進步有沒有反映到人們真正做的工作裡?
對我來說,這樣的討論會更有意思。我們可以對這些模型的能力感到興奮,同時也對相關主張保持質疑。我們可以嚴肅看待風險,而不必假設最極端的結果;也可以承認確實有進步,而不把每個新標題都當成最後答案。
關於這一切最後會怎麼發展,我們大概還有很多不知道的地方。
而這也沒關係。畢竟我們正在即時目睹它改變。
這大概就是 Astra 讓我一直反覆思考的地方。模型確實變得更有能力,但同時,衡量這種能力也變得更複雜了。基準測試可能飽和,代理指標有其限制,真實標準答案不總是簡單,而評估方法本身也必須持續演化。
也許,我們的問題也需要一起演化。
與其只問 「AI 會不會取代開發者?」,我們可以問 「開發工作中的哪些部分正在改變,而哪些技能變得更有價值?」
與其問 「CSE 已經死了嗎?」,我們可以問 「當產生程式碼變得容易很多時,電腦科學會變成什麼樣子?」
而與其只問 「AGI 來了嗎?」,我們可以問 「我們到底在談哪些能力、如何衡量它們,以及我們手上有哪些證據?」
我們接下來還會一直看到更強的模型、令人驚豔的展示,以及圍繞它們的強烈意見。有些預測最後可能會成真,有些會太過頭,而有些事情可能連我們自己都會感到驚訝。
這就是看著一項技術如此快速演變的一部分。
對我來說,真正有幫助的是保持好奇、看證據、認真看待風險,同時也關注我們實際工作的內容到底發生了什麼變化。
因為在所有基準測試、頭條和預測之後,也許真正值得問的問題只是:
「到底改變了什麼?我們怎麼知道?這對我們在意的工作代表什麼?」
然後再問:
「好,現在這項技術能做這些事了,那我們應該拿它來做什麼?」
我們都在看同樣的 AI 發展,但不一定會用同樣的方式理解它。
也許你覺得目前的進展被低估了。也許你認為某些興奮或恐懼都走得太遠了。又或者你已經在自己的開發工作中看到了我沒注意到的變化。
我很想聽聽你的觀點。
你怎麼看?
如果你對 AI 基準測試、模型評估,或軟體開發未來走向有不同的看法,歡迎在留言中分享。我們每個人都來自不同經驗,而我認為這正是這類討論最有趣的地方。
以上是本文中關於基準測試、評估與能力討論的主要參考資料。
| 地點 | 在這裡找我 |
|---|---|
| GitHub | 實作各種東西 → hemapriya-kanagala |
| 資源與更新 → hemapriya-kanagala | |
| X | 隨手寫寫開發想法 → @KanagalaHema |
原文出處:https://dev.to/hemapriya_kanagala/what-happens-when-ai-outgrows-the-tests-we-use-to-measure-it-30al