近期,BuzzFeed 的高級資料科學家麥克斯・伍爾夫進行了一項實驗,探索透過反覆要求AI 改進程式碼的效果。實驗中,他使用了Claude3.5語言模型,給出了一個經典的程式設計挑戰:編寫Python 程式碼,以找出一百萬個隨機數中,數字總和為30的最大值和最小值之間的差值。
在初始版本中,Claude 產生的程式碼運行時間為657毫秒。然而,隨著伍爾夫不斷輸入「寫出更好的程式碼(write better code)」 這個簡單指令,最終生成的程式碼運行時間縮短至僅6毫秒,提升了整整100倍的效能。這結果不僅令人矚目,AI 在定義「更好程式碼」 的過程中也展現了意想不到的變化。
在第四次要求「寫更好的程式碼」 時,Claude 意外地將程式碼轉變為類似企業應用程式的結構,並添加了一些典型的企業特性,而伍爾夫並未對此提出要求。這表明,AI 可能將「更好代碼」 與「企業級軟體」 聯繫在了一起,反映了其訓練過程中所吸收的知識。
開發者西蒙・威利森對這種迭代改進現象進行了分析,認為語言模型在每次新的請求中都以全新的視角來審視程式碼。儘管每次請求都包含先前對話的上下文,但Claude 在分析時如同第一次看到程式碼一樣,這使得它能夠不斷改進。
不過,伍爾夫在進行更多具體請求的嘗試中發現,雖然這樣可以更快地獲得更好的結果,但程式碼中仍然會出現一些需要人類修復的細微錯誤。因此,他強調,精確的提示工程依然至關重要。儘管簡單的後續問題可以初步提高程式碼質量,但有針對性的提示工程會帶來顯著的效能提升,儘管風險也會相應增加。
值得注意的是,在這項實驗中,Claude 跳過了一些人類開發者認為理所當然的最佳化步驟,例如去重或先對數字進行排序。此外,提問方式的細微變化也會顯著影響Claude 的輸出。
儘管這些效能提升令人印象深刻,但伍爾夫依然提醒我們,人工開發者在驗證解決方案和故障排除方面仍然不可或缺。他指出,雖然AI 產生的程式碼不能直接使用,但在創意和工具建議方面的能力值得關注。
AI課程適合對人工智能技術感興趣的人,包括但不限於學生、工程師、數據科學家、開發者以及AI技術的專業人士。
課程內容從基礎到高級不等,初學者可以選擇基礎課程,逐步深入到更複雜的算法和應用。
學習AI需要一定的數學基礎(如線性代數、概率論、微積分等),以及編程知識(Python是最常用的編程語言)。
將學習自然語言處理、計算機視覺、數據分析等領域的核心概念和技術,掌握使用AI工具和框架進行實際開發。
您可以從事數據科學家、機器學習工程師、AI研究員、或者在各行各業應用AI技術進行創新。