近年來,人工智能(AI)的編程能力不斷髮展,但尚未達到完美。最近,BuzzFeed 的資深數據科學家 Max Woolf 通過實驗發現,如果對大型語言模型(LLM)不斷提供 “寫更好代碼” 的提示,AI 確實能夠生成更優質的代碼。這一發現引發了廣泛關注,業界著名 AI 科學家們也對此表示了極大的興趣,強調了迭代和提示詞設計的重要性。
在 Woolf 的實驗中,他利用 Claude3.5Sonnet 這一版本的 AI 模型進行了一系列編程任務。起初,他給模型提出了一個簡單的編程問題:如何找出一百萬個隨機整數中,各位數之和爲30的最小值與最大值之間的差。Claude 在接到這個任務後,生成了符合要求的代碼,但 Woolf 認爲該代碼還有優化空間。
接着,Woolf 決定在每次生成代碼後,都通過 “寫更好代碼” 的提示,要求 Claude 進行迭代優化。第一次迭代後,Claude 將代碼重構爲一個面向對象的 Python 類,並實現了兩項顯著的優化,運行速度提高了2.7倍。第二次迭代中,Claude 又加入了多線程處理和向量化計算,最終使得代碼運行速度達到了基礎版本的5.1倍。
然而,隨着迭代次數的增加,代碼質量的提升開始減緩。經過幾輪優化後,儘管模型嘗試使用一些更復雜的技術,例如 JIT 編譯和異步編程,但有些迭代反而導致了性能的下降。最終,Woolf 的實驗揭示了迭代提示的潛力與侷限性,讓人們對 AI 編程的未來有了新的思考。
這項研究不僅展示了 AI 在編程領域的應用潛力,也提醒我們,儘管 AI 能夠通過不斷迭代來提升代碼質量,但在實際應用中,如何合理設計提示詞、平衡性能與複雜性仍然是一個值得深入探討的話題。