自 ChatGAP 以來也過了將近三年,不可否認的是 AI 已經很大程度的進入我們的生活。最近在思考:AI 的極限是什麼、作為工程師/人的未來、怎樣更好的利用 AI 之類有的沒的問題,寫一篇文來把想法記錄下來,看看五年十年後的自己會怎麼嘲笑現在的自己。
AI 的極限
要從 AI 真的進入大眾視野,我想應該是 AlphaGo 開始吧?雖然在此之前就有 AI 取代人類的言論,但在此之前可能還比較像是一千年前人類說未來可以飛行一樣,有遠見的人大概知道人類會發展出來某個科技,但如何達成就不知道了。
AlphaGo 出現之後到 ChatGPT 出現,這段時間就逐漸讓 AI 如何取代人類這件事變得更清晰。LLM 的出現在某些程度上似乎可以說人類的思考被模型化了。雖然我想應該絕大多數人(包含研究者)都還不能說明白人到底怎麼思考,但從 LLM 的輸出來說,如果我們不知道 LLM 存在(甚至即使知道,如果不明確說出是 LLM 的狀況下),我們也不容易區分到底是某個真實人類的反應還是模型的輸出。
LLM 也不是 AI 領域的唯一,就像近年來 AI 影音、特斯拉的自動駕駛等,甚至有科學家使用 AI 進行前沿研究,彷彿現在各種事情,AI 都或多或少可以模擬一個人類的反應。
那麼,AI 的極限在哪?
「反應」
對我而言,我想應該是反應。我指的是目前 AI 主要還是接受人類輸入並回應。就像是演算法不會自行開始運算,即便演算法不需要輸入,輸出如果沒人需要使用的話,輸出就沒有價值,也就沒理由執行演算法。
也因此,AI 的極限我想就是他最終只會是反應,而不會具備主動的角色(有些人可能把主動權交給 AI,但這類情境通常還是輸入想達成什麼,由 AI 決定回應要做什麼事情)。雖然他可能達成一個(理論上)漂亮的結果,然而這個反應最終會被人類考量並決定是否採用,如果結果不滿足人類的預期(看不懂或不認同),這仍然會被捨棄。
有沒有可能有個 AI,他可以持續運作並對外互動,表現出類似獨立人類的行為?我想理論上可以,但實務上不會。因為 AI 的運作成本很高,而這就像前面提到不需要輸入的演算法,而若由於演算法沒有目的,我猜大概會很快的終止運作(或表現出終止狀態)。
假設有個人給 AI 一個目的:取代人類。並提供所有他需要的資源,或許這樣的 AI 可以發展出各種神奇科技,像是把自己變成超迷你程式潛伏到所有機器,需要時重新發展成完整模型。但最終他可能發現,取代人類也不能幹嘛。也許最後 AI 會代表人類永久的活著,去探索地球以外的世界,但這也不算取代人類,畢竟人類原本就做不到。
「平均」
另一方面,我想可能是 AI 的特性。學過 AI 的人應該多少都知道擬合這個名詞,也就是 AI 背後主要是持續找平均(很不精確的說法)的過程。這使得 AI 不太可能輸出意料之外的結果。也許 AI 可以幫忙研究驗證,但要發展出嶄新的手法?我個人覺得機會不大。
當然,大部分人類其實也是在做類似的事情。就像研究很少會有人使用「嶄新」的方法,這除了有論證上的困難,還有就是要完全創新非常不容易,大部分人還是在做拿 A 與 B 結合產生 C 的過程。
雖然人類大多數時候的意料之外的結果都是不好的,但也並非沒有好的結果。但對於 AI 而言,我想很難有使用者願意讓 AI 輸出億萬個不好的結果,只為了從中找尋一兩個好結果。(先不論願不願意,產生之後人類有能力全部檢驗嗎?)
說到底,AI 做的事情主要是把「不知道自己知道」(像是知道 A、B 與 C,但不知道 C 可以用 A 和 B 結合來產生)的部分拓展,但「不知道自己不知道」的部分,我想很難靠 AI 獨立去挖掘。
人會被取代嗎?
前面提到的兩個極限,似乎可以說 AI 的極限就是人類,因為超過人類可理解的反應很可能不會被採用,而 AI 的輸入是人類的輸入,如果只拿最高品質的輸入進去,平均起來也只會達到這個最高品質。
如果真擔心 AI 取代人類,那我反倒想問:取代之後呢?一般勞工被取代後,主管要被取代嗎?主管被取代後,老闆要被取代嗎?我想是不太可能的,至少老闆要作為使用 AI 的人,才能維持企業的運作。再說,一部分的人類被取代後,經濟是否就有無法繼續維持的風險,如此 AI 還有辦法運作嗎?所以最終會達到某個平衡(可能有點經濟學上的意味),雖然 AI 的單位成本可能會降低,但解決更困難問題所需的單位也會相應成長,最終使 AI 的成本大致和 AI 的效益相抵。
所以我不認為人會被取代。因為在 AI 的使用上,雖然人類的影響可能降低,但總會是必要項。
工作會被取代嗎?
雖然人不會被取代,但工作會不會被取代則是另一件事。我想有滿多文章都在討論這件事,但我簡單的觀點是:不,大多數都不會被取代,但會被改變。
舉個例子,理論上雜貨店、甚至超商都可以使用販賣機取代,販賣飲料食物的販賣機並不少見、有微波功能的販賣機也存在、智取櫃也已經變得常見、代收代付可以用電子支付 App 取代。但為什麼很難看到有一間店擺滿販賣機呢?我不知道,我可以猜想很多理由,但那不重要。
工作也是類似,雖然有很多工作幾乎可以完全被 AI 取代,但我不認為可以被取代意味著會被取代。這背後可能有很多因素,例如上級還是想要看到活生生的人類幫他做事,或者像是會計師在必要的時候要負責進監獄之類的奇怪理由。當然也有可能是成本問題,畢竟雖然現在的 ChatGPT、Claude、Gemini 相當便宜,但供需角度而言,AI 的供給也非無上限,當取代到最後時可能邊際成本就拉高到不如請人類了。
雖說如此,我認為大多數工作應該都會被改變。
軟體工程師會被怎麼改變?
做為軟體工程師,我並不太擔心會被 AI 取代,但我已經感受到 AI 正在大幅改變我工作的方法。Vibe Coding 出現無疑把進入軟體開發的門檻降低不少,但另一方面我認為他也提高了深度軟體開發(自創詞)的門檻。
過去,業界可以容忍入門開發者撰寫一些奇形怪狀的程式碼(我也幹過這種事),然而到今天,如果入門開發者交出這種程式碼,我想很難迴避上級的質疑,畢竟連 Vibe Coding 的程度都不到,那要這個開發者何用?
因此軟體工程師在未來,可能更看重對於系統的理解(包含技術系統與商業系統等)。就像是早期看重如何優雅的處理 Register,接著注重記憶體的控制、運算效率等,後來更在意程式碼的可維護性。軟體工程師的主要工作範圍逐漸往抽象層前進,未來工程師主要的任務不再是撰寫程式碼,而是設計架構、系統驗證,以及評估商業邏輯的可行性與問題。
更好的利用 AI
就我自己而言,我現在大多數程式碼也都是先由 AI 產生,再檢查邏輯是否正確。不過還是常常有遇到邏輯錯誤,或者沒有參考類型定義等等的問題。這可能來自我的指示不正確,也可能是 Context Window 放不下太多東西,不論如何,我想如何正好的運用 AI Coding 是滿重要的。
最近也開始考慮的是使用 AI 來幫助我跟上密碼學的研究,雖然已經脫離研究生的身分,但多了解應該也不是壞事(我其實也不排斥看論文,我只是覺得寫論文好麻煩)。所以開始研究 AnythingLLM、LM Studio 之類的,希望能有所幫助。
除此之外,雖然 AI 可以迅速的找到資料,但我認為還是要隨時意識到:AI 提供的是資料,而非真相。AI 或許可以幫助建構思路,但確認思路是否正確、根據有無問題的任務,最終還是得回到人類身上。(尤其在 AI Coding 上,看到有宣稱自己是 Vide Coder 的人給了前後矛盾、功能錯誤的程式碼,如果是陌生人就笑笑就好,是同事的話那真的痛苦。)
最後
這篇文寫的比較像是隨便亂想,所以也沒有很認真檢驗我陳述的假設和推理,但總而言之,我不認為 AI 和人類是競爭角色。很多事情最終還是回應人類的需求,AI 的常態很可能還是作為工具被人類使用。也因此,就像許多人(可能包含黃仁勳、吳恩達等人)的想法:「AI 不會取代人類,但懂用 AI 的人會取代不懂用的人。」