TL;DR

GPT-6 Astra 又引發了一場熟悉的 AI 論戰。這個模型更有能力,Jensen Huang 也在 X 上說 「AGI 已經到來」,社群動態很快就在興奮、好奇與對接下來會發生什麼的恐懼之間來回擺盪。

我理解為什麼大家反應會這麼強烈。AI 正在快速改變,而這些模型現在能做到的一些事情,放在不久前聽起來可能還會讓人覺得很驚訝。但我也注意到,「AI 變得更有能力」 很快就會被推導成 「不再需要開發者」「CSE 要結束了」。我覺得這中間的推論差距非常大。

對我來說,Astra 讓我想到另一個比較容易被忽略的問題:

我們究竟要怎麼知道一個 AI 模型真的變好了?

我們通常會看基準測試,而它們確實有用。但基準測試也會過時。有些會飽和,有些使用的是很難直接衡量的能力代理指標,真實標準答案也可能很複雜,而評估方法本身也會改變。基準分數也不會自動告訴我們,這個模型對我們自己的工作到底有多實用。

Astra 的系統卡就提供了幾個例子,包括較舊的評估已經飽和或被考慮退役、較新的評估改用更貼近真實情境或實驗性資料,以及評估方法會隨時間演變。

這對開發者也很重要。如果 AI 讓寫程式變得更便宜、更快速,軟體工程並不會突然消失。需求、架構、系統設計、安全性、驗證、取捨、維護,以及決定到底該做什麼,依然都很重要。

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% 是依據什麼?

這大概是我看到基準分數時最喜歡問的一個問題。

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 的方式。

一個模型可能在單一問題回答上非常優秀,但當它必須把任務從頭做到尾時,卻表現不佳。反過來也可能成立:某個系統在單一基準測試上看起來不特別亮眼,但在具備工具與上下文時,卻能表現得出奇地好。

所以我認為,評估問題也正在慢慢改變。

與其只問 「模型有沒有答對?」,我們也許還需要問 「它把整個任務處理得怎麼樣?」

而這是更難衡量的事。


那麼,看到基準測試時我們應該看什麼?

我不認為每次新模型發表時,我們都需要先成為評估方法學專家。但有幾個問題可以讓基準分數更容易理解。

1. 到底量的是什麼?

這個基準測試量的是我們在意的能力,還是只是用了某個代理指標,也就是預期能反映那個能力的東西?

2. 這個基準測試還有足夠難度嗎?

如果大多數強模型都已經接近最高分,那這個基準測試可能已經飽和了,也就是說它不再能提供太多空間來看出模型之間有意義的差異。

3. 真實標準答案從哪裡來?

我們把什麼當作正確答案?是固定答案、專家判斷、另一個模型、模擬結果,還是現實世界的證據?

4. 評估有改變嗎?

資料集、評分器、計分方式、提示詞、工具或模型設定有沒有變?即使只是小改變,也會影響我們該怎麼解讀最後的分數。

5. 這個結果能轉移到我真正關心的工作嗎?

如果你是開發者,這一點尤其有用。模型可以在通用程式設計基準測試上表現很好,但不代表它就是最適合你自己的程式碼庫、團隊或工作流程的模型。

這時候,你自己的小型評估反而可能非常有幫助。

從你的工作流程中挑 20 或 30 個真實任務,拿來測試不同模型。然後看那些對你真正重要的事情。程式能不能跑?模型有沒有理解需求?它怎麼處理變更?你需要修正多少?當出問題時它能不能恢復?花了多久,成本多少?

你不需要因為這些大基準分數,就完全放棄它們。它們仍然能提供一個有用的整體印象。

而你的真實任務,只是再補上一塊證據;有時候,那一塊才是最重要的。


這一切對開發者代表什麼?

這裡就把基準測試的討論,拉回到我在 Astra 相關內容裡一直看到的一個說法:「AI 會取代開發者。」

我能理解為什麼大家會問這個問題。如果模型可以寫程式、理解程式碼庫、使用工具、處理任務,並在過程中應對變化,那麼思考幾年後的軟體開發會變成什麼樣子,是很合理的。

我確實預期工作會改變。有些事情會快很多,有些任務可能不再需要那麼多人力,而隨著工具進步,某些技能的重要性可能會下降。同時,也會有其他技能變得更重要。

舉例來說,如果產生程式碼變得容易很多,難的部分可能會往 「到底該做什麼,以及該怎麼做」 移動。

真正的需求是什麼?我們有哪些限制?系統應該怎麼設計?當系統成長時,架構撐得住嗎?解法是否安全且可靠?我們要怎麼驗證 AI 產出的內容?六個月後需求變了怎麼辦?這整套東西真的有解決使用者的問題嗎?

這些問題不會因為 AI 能快速產生幾百行程式碼就消失。

某些情況下,它們甚至會變得更重要,因為產生多種可行實作變得更容易了。還是得有人理解各種選項,並判斷哪個才適合當下情境。

所以我覺得 「CSE 已經不需要了」 這種說法對我來說太極端了。電腦科學與軟體工程本來就不只是寫程式碼而已。程式碼只是打造軟體的一部分,不是全部。

這件事一定會改變,而且有些改變可能會很大。但我寧願先觀察工作實際怎麼演進,也不想太早就判定整個領域要消失了。

也許對開發者來說,更有用的問題不是 「AI 會不會取代我?」,而是 「當 AI 接手越來越多工作時,我應該在哪些地方變得更強?」


我們可以認真看待 AI,但不必把每個標題都當成最後定論

我不想輕忽 AI 帶來的擔憂。關於安全、濫用、資安、可靠性、就業,以及我們應該給這些系統多少自主權,都是真正需要面對的問題。這些都不是小問題,隨著技術越來越強,它們更值得嚴肅看待。

同時,我也不認為每一次能力提升,都必須被解讀成某個職業的終結。當我看到 AI 會寫程式時,我看到的是一項正在改變軟體開發的技術。我不認為唯一可能的結論就是開發者完蛋了。

對於越來越複雜的 AI 系統也是一樣。與其直接跳到「人類還需要嗎」這個問題,我覺得更有用的是問:哪些工作部分可以交給 AI、哪些地方仍然需要人介入,以及什麼樣的監督方式才合理。

而當我看到基準分數上升時,我也會想知道那個數字背後到底是什麼。測了什麼?怎麼測的?這個基準測試還有沒有提供有用的訊號?這種進步有沒有反映到人們真正做的工作裡?

對我來說,這樣的討論會更有意思。我們可以對這些模型的能力感到興奮,同時也對相關主張保持質疑。我們可以嚴肅看待風險,而不必假設最極端的結果;也可以承認確實有進步,而不把每個新標題都當成最後答案。

關於這一切最後會怎麼發展,我們大概還有很多不知道的地方。

而這也沒關係。畢竟我們正在即時目睹它改變。


模型在變,我們看待它們的方式也得跟著變

這大概就是 Astra 讓我一直反覆思考的地方。模型確實變得更有能力,但同時,衡量這種能力也變得更複雜了。基準測試可能飽和,代理指標有其限制,真實標準答案不總是簡單,而評估方法本身也必須持續演化。

也許,我們的問題也需要一起演化。

與其只問 「AI 會不會取代開發者?」,我們可以問 「開發工作中的哪些部分正在改變,而哪些技能變得更有價值?」

與其問 「CSE 已經死了嗎?」,我們可以問 「當產生程式碼變得容易很多時,電腦科學會變成什麼樣子?」

而與其只問 「AGI 來了嗎?」,我們可以問 「我們到底在談哪些能力、如何衡量它們,以及我們手上有哪些證據?」

我們接下來還會一直看到更強的模型、令人驚豔的展示,以及圍繞它們的強烈意見。有些預測最後可能會成真,有些會太過頭,而有些事情可能連我們自己都會感到驚訝。

這就是看著一項技術如此快速演變的一部分。

對我來說,真正有幫助的是保持好奇、看證據、認真看待風險,同時也關注我們實際工作的內容到底發生了什麼變化。

因為在所有基準測試、頭條和預測之後,也許真正值得問的問題只是:

「到底改變了什麼?我們怎麼知道?這對我們在意的工作代表什麼?」

然後再問:

「好,現在這項技術能做這些事了,那我們應該拿它來做什麼?」


我很想聽聽你的看法

我們都在看同樣的 AI 發展,但不一定會用同樣的方式理解它。

也許你覺得目前的進展被低估了。也許你認為某些興奮或恐懼都走得太遠了。又或者你已經在自己的開發工作中看到了我沒注意到的變化。

我很想聽聽你的觀點。

你怎麼看?

如果你對 AI 基準測試、模型評估,或軟體開發未來走向有不同的看法,歡迎在留言中分享。我們每個人都來自不同經驗,而我認為這正是這類討論最有趣的地方。


參考資料

以上是本文中關於基準測試、評估與能力討論的主要參考資料。


🤝 一起保持聯繫

地點 在這裡找我
GitHub 實作各種東西 → hemapriya-kanagala
LinkedIn 資源與更新 → hemapriya-kanagala
X 隨手寫寫開發想法 → @KanagalaHema

原文出處:https://dev.to/hemapriya_kanagala/what-happens-when-ai-outgrows-the-tests-we-use-to-measure-it-30al


精選技術文章翻譯,幫助開發者持續吸收新知。

共有 0 則留言


精選技術文章翻譯,幫助開發者持續吸收新知。
🏆 本月排行榜
🥇
站長阿川
📝31   💬1  
459
🥈
我愛JS
3
🥉
NewsData
2
評分標準:發文×10 + 留言×3 + 獲讚×5 + 點讚×1 + 瀏覽數÷10
本數據每小時更新一次
📢 贊助商廣告 · 我要刊登