GCC 指導委員會宣布 AI 貢獻政策

GCC 實施 AI 貢獻限制

GCC 指導委員會已正式採納由 GCC AI 政策工作小組開發的 AI 貢獻政策。該政策的主要指令是拒絕任何「法律上重要的貢獻,包含 LLM 生成的內容或衍生自 LLM 生成的內容」。

為了界定「法律上重要」的門檻,委員會參考 GNU 專案維護者指南,該指南將上限設定為約 15 行程式碼或文字。低於此門檻的貢獻,或不具法律上重要性的貢獻,可能會被接受。值得注意的是,GCC 維護者保留接受由 LLM 生成的法律上重要測試案例的酌處權。

在 GCC 開發中允許 AI 的許可用途

儘管該政策限制了提交至儲存庫的最終程式碼,但它並不禁止將大型語言模型(LLM)作為輔助工具使用。在以下用途中,AI 可以被使用,前提是產出的結果不直接納入最終貢獻:

  • 研究與分析: 使用 AI 來理解複雜的程式碼基礎或探索潛在的實作。
  • 錯誤發現與回報: 識別軟體缺陷並記錄它們。
  • 補丁審查: 使用 AI 在提交前分析所提出的變更。

法律與版權依據

該政策深植於 GNU 通用公共許可證(GPL)的法律要求。由於 GPL 基於版權許可證運作,專案必須確保貢獻具備版權性。

業界專家與社群成員指出,現行法律先例(包括美國版權局的報告)顯示,版權需要人類作者。完全由 LLM 生成的程式碼可能不受版權保護,這將使其無法在 GPL 下進行授權,可能危害 GCC 程式碼基礎的法律完整性。

社群辯論與觀點

此宣布在開發者社群中引發了關於可執行性、倫理以及開源維護未來的重大辯論。

支持該政策的論點

支持者主張該政策可保護專案免受「AI 廢料」的影響,並確保貢獻者對其工作負責。一些維護者聲稱,AI 生成的程式碼常常包含失敗的明顯跡象——例如在完美邏輯旁邊立即出現的根本錯誤——這使其在審查過程中可被偵測到。

"經常貢獻者擁有聲譽,若被發現使用了 AI 而喪失該聲譽的風險,應該足以成為不使用它的動機。"

反對該政策的論點

批評者認為該政策難以執行,且可能 dissuade 有能力的開發者使用 AI 作為生產力工具。一些人主張,前沿模型(例如 GPT-5.5 或 Opus 4.8)產出的程式碼與人類編寫的程式碼無法區分,使該政策成為一項「愚蠢且無意義」的自欺練習。

"因為工程師選擇使用你不喜歡的自動完成引擎而拒絕安全補丁與錯誤修復,屬於明顯的疏忽。"

維護與責任問題

另一個爭議點是 AI 輔助程式碼的長期維護。AI 貢獻的批評者指出,使用 AI 提交補丁的短暫貢獻者常會消失,導致沒有人能回應未來的錯誤報告或維護所提交的程式碼。

與其他專案政策的比較

GCC 的做法與其他主要專案不同。例如,LLVM 政策允許使用任何工具,包括 LLM,前提是人類仍在迴圈中審查程式碼並對貢獻承擔全部責任。GCC 政策更具限制性,著重於輸出的法律狀態,而僅僅關注提交者的責任。

Sources