Cloudflare 工程師使用 AI 構建 OAuth 庫,引發關於大語言模型輔助程式設計的爭議

BigGo Editorial Team
Cloudflare 工程師使用 AI 構建 OAuth 庫,引發關於大語言模型輔助程式設計的爭議

Cloudflare 為其 Workers 平臺釋出了一個主要由 Claude AI 編寫的 OAuth 提供程式庫,引發了關於人工智慧在軟體開發中作用的激烈討論。該專案由 Cloudflare 首席工程師 Kenton Varda 領導,代表了首批主要透過 AI 輔助構建的生產就緒安全庫之一。

該庫為 Cloudflare Workers 實現了 OAuth 2.1 標準,但令其引人注目的不僅僅是功能性——而是它的建立方式。自稱曾是 AI 懷疑論者的 Varda 使用 Claude Sonnet 3.7 透過精心設計的提示和迭代最佳化生成了大部分程式碼。整個開發過程,包括提示和 AI 互動,都已記錄在專案的提交歷史中以保證透明度。

關鍵技術細節

  • 平臺: Cloudflare Workers
  • 實施標準: OAuth 2.1
  • 程式語言: TypeScript/JavaScript
  • 程式碼倉庫:開源,包含完整提交歷史
  • 安全審查:完整的 RFC 交叉引用驗證

專家監督仍然至關重要

儘管 AI 的輸出令人印象深刻,但該專案在整個開發過程中仍需要大量的人類專業知識。Varda 和他的團隊徹底審查了每一行程式碼,將實現與相關 RFC 進行交叉引用,並手動修復了 AI 無法自行解決的幾個錯誤。一條提交訊息明確指出:Claude 在之前的提交中有一個錯誤。我多次提示它修復錯誤,但它總是做錯事。

這一經歷突顯了當前 AI 程式設計工具的一個關鍵侷限性——它們可以生成複雜的程式碼,但在除錯和引入錯誤後的複雜問題解決方面往往存在困難。開發團隊發現,從頭開始重新對話往往比試圖在現有上下文中糾正 AI 的錯誤更有效。

觀察到的 AI 侷限性

  • 除錯複雜問題:需要人工干預
  • 上下文保持:經過多次迭代後丟失上下文
  • 新穎問題解決:效果不如標準實現方案
  • 程式碼重構:對現有複雜程式碼庫的處理能力有限

社群對 AI 作用的反應分化

該公告將開發者社群分為不同的陣營。支持者認為這驗證了 AI 在經驗豐富的工程師適當監督下可以顯著加速開發。Varda 估計該專案在 AI 輔助下花費了幾天時間,而手工編寫則需要數週或數月。

然而,懷疑者對軟體行業的更廣泛影響表示擔憂。一些人擔心就業機會可能減少,而另一些人質疑 AI 生成的程式碼是否會產生虛假的生產力感。批評者認為,所需的大量審查過程實際上可能比傳統程式設計方法更慢。

「每一行都經過了安全專家的徹底審查,並與相關 RFC 進行交叉引用,這些專家之前都有處理這些 RFC 的經驗。我試圖驗證我的懷疑態度。結果證明我錯了。」

開發時間對比

  • AI 輔助開發:幾天
  • 預估手動開發:幾周到幾個月
  • 使用的 AI 模型: Claude Sonnet 3.7
  • 開發成本:兩位數美元

AI 輔助開發的侷限性

該專案揭示了當前 AI 程式設計能力的優勢和劣勢。雖然 AI 在實現像 OAuth 這樣有詳細文件的標準方面表現出色——這些領域存在大量訓練資料——但在新穎問題和複雜除錯場景中卻表現不佳。Varda 指出,在處理 Workers Runtime 本身時,AI 輔助的效果較差,特別是在重構現有複雜程式碼庫時。

該專案的成功似乎很大程度上取決於幾個因素:明確定義的規範(OAuth 標準)、大量可用的訓練資料,以及最重要的是,整個過程中的專家人工監督。這表明 AI 輔助程式設計在實現既定模式方面可能最為有效,而不是建立全新的解決方案。

對軟體開發的未來影響

Cloudflare 的實驗為 AI 如何重塑軟體開發實踐提供了一瞥。該技術似乎正在發展成為一個複雜的工具,可以處理常規實現任務,而人類則專注於架構、設計決策和質量保證,而不是完全取代工程師。

該專案在記錄成功和失敗方面的透明度為考慮類似方法的其他團隊提供了寶貴的見解。它表明,雖然 AI 可以顯著加速某些型別的開發工作,但仍需要經驗豐富的工程師來指導、審查和驗證輸出——特別是對於像身份驗證庫這樣的安全關鍵元件。

隨著 AI 程式設計工具的不斷改進,Cloudflare OAuth 庫可能成為建立 AI 輔助軟體開發最佳實踐的重要案例研究,特別是對於安全性和可靠性不可妥協的專案。

參考:Commits