觀點
Zig 專案為何嚴禁 AI 輔助貢獻?
摘要
開源專案 Zig 對於使用大型語言模型(LLM)輔助的貢獻設有嚴格禁令,涵蓋問題回報、拉取請求及評論。Zig 軟體基金會社區副總裁 Loris Cro 解釋,這項政策的核心在於專案重視培養貢獻者本身,而非僅僅是程式碼貢獻。他們認為,審查 AI 生成的程式碼無助於建立值得信賴的長期貢獻者社群。
Zig 專案對大型語言模型(LLM)輔助的貢獻設有最嚴格的政策之一:禁止在問題回報中使用 LLM。禁止在拉取請求中使用 LLM。禁止在錯誤追蹤器的評論中使用 LLM,包括翻譯。鼓勵使用英文,但非強制。歡迎使用您的母語發文,並讓其他人自行選擇翻譯工具來理解您的內容。
以 Zig 編寫的最知名專案可能是 JavaScript 執行環境 Bun,它於 2025 年 12 月被 Anthropic 收購,並且毫不意外地大量使用 AI 輔助。Bun 運行著自己的 Zig 分支,最近透過在 LLVM 後端加入「平行語義分析和多個程式碼生成單元」,使 Bun 的編譯速度提升了四倍。這是相關程式碼。但 @bunjavascript 表示:「我們目前不打算將此上游(upstream),因為 Zig 嚴格禁止 LLM 撰寫的貢獻。」(更新:一位 Zig 核心貢獻者提供了詳細說明,解釋了他們為何不接受該特定修補程式,這與 LLM 問題無關——平行語義分析是一個長期規劃的功能,但對「Zig 語言本身」有影響。)
在《貢獻者撲克與 Zig 的 AI 禁令》一文中,Zig 軟體基金會社區副總裁 Loris Cro 解釋了這項嚴格禁令的理由。這是我見過對全面禁止 LLM 輔助貢獻最清晰的闡述:在成功的開源專案中,最終你會達到一個拉取請求(PR)數量超出處理能力的地步。鑑於我目前所說的,為了最大化工作投資報酬率,停止接受不完美的 PR 似乎是合理的,但這不是我們在 Zig 專案中所做的。相反地,我們盡力幫助新的貢獻者完成他們的工作,即使他們需要一些協助。我們這樣做不僅因為這是「正確」的事情,也因為這是「明智」的事情。
Zig 重視貢獻者本身勝過他們的貢獻。每個貢獻者都代表著 Zig 核心團隊的一項投資——審查和接受 PR 的主要目標不是為了引入新程式碼,而是為了幫助培養新的貢獻者,讓他們隨著時間的推移成為值得信賴且多產的成員。
LLM 輔助完全破壞了這一點。即使 LLM 幫助你提交了一個完美的 Zig PR,Zig 團隊花時間審查你的工作,也無助於他們為整個專案增加新的、自信的、值得信賴的貢獻者。
Loris 在此解釋了這個名稱:「我稱之為『貢獻者撲克』的原因是,就像人們談論實際的撲克牌遊戲一樣,『你玩的是人,而不是牌』。在貢獻者撲克中,你押注的是貢獻者,而不是他們第一個 PR 的內容。」
這對我來說很有道理。它與我在其他地方看到的一個觀點相關:如果一個 PR 大部分是由 LLM 撰寫的,那麼專案維護者為何要花時間審查和討論該 PR,而不是啟動他們自己的 LLM 來解決相同的問題呢?
標籤
Zig開源AI 輔助社群治理開發政策
以上為 AI 自動翻譯導讀。原文版權歸 Simon Willison 所有。 建議透過上方「閱讀原文」前往原始網站,以取得最完整資訊與支持原作者。