hero

如果有一個社群,花費三十年建立了一套嚴謹的授權審查機制,確保每一行程式碼的來源、版權、授權狀態都清晰可追溯——然後面對一個技術,它的產出來源不清、版權模糊、無法驗證是否抄襲,你會怎麼做?Debian 正在面對這個問題,而且他們的答案不是一個,是四個。

原文摘要

2026 年 7 月 24 日,Debian 社群正式啟動了一項總決議(General Resolution)的討論與投票程序,主題是:LLM 及其他生成式 AI 工具在 Debian 專案中的使用。四項正式提案,從完全禁止到有條件接受,代表了社群內部對這個問題的完整光譜。

Proposal A(Choice 1):完全禁止。 提案人 Matthias Geiger 主張在 Debian 社會契約中新增第 6 條,明確禁止任何直接使用 LLM 或生成式 AI 工具編寫或輔助的貢獻進入 Debian。範圍涵蓋原始碼套件、官方專案軟體(如 lintian)、網站資源、文件與翻譯,以及官方通訊。上游專案使用 LLM 開發不在此限。

提案給出四個理由。第一,版權:LLM 輸出的法律地位極度模糊,訓練資料中混雜了各種授權與版權材料,而 Debian 政策與 DFSG 要求授權必須絕對清晰——人類編寫但版權不明的軟體不被接受,LLM 不應享有特殊例外。第二,品質:LLM 只生成語法上可能的組合,永遠無法「知道」輸出是否正確,這對每個套件都獨特的 Debian 來說不夠好。第三,社群:允許 LLM 貢獻會破壞新人培養機制,依賴 LLM 的新貢獻者不會真正學習包裝細節,也無法替換未來倦怠退出的開發者。第四,倫理:LLM 公司無視授權和 robots.txt 爬取全網作為訓練資料,對 Debian 的公共網站資源構成了「大規模、永久性的 DoS 攻擊」,訓練過程消耗驚人資源,且這些公司直接傷害自由軟體社群。

Proposal A 的執法條文極其誠實:「雖然執法可能是個挑戰,但這是 Debian 社群的一份意圖聲明,我們相信社群會基於善意遵守它。」(While enforcement could be a challenge, this is a statement of intent by the Debian community, and we trust this community to adhere to it in good faith.)

Proposal B(Choice 2):有條件允許。 提案人 Lucas Nussbaum 使用 Debian 憲法第 4.1(5) 條的權力,發布一份立場聲明。Debian 認識到 AI 輔助貢獻引起許多擔憂——技術品質、可維護性、法律地位,以及對社會、IT 產業、自由軟體、環境和 AI 爬蟲侵略性行為的影響。然而,許多 Debian 貢獻者發現 AI 工具對改善 Debian 有幫助。

提案列出六項條件,滿足後即可使用 AI 輔助貢獻:(1)工具的法律相容性——使用條款不得與 Debian 輸出物的散佈、修改或使用衝突;(2)授權與歸屬——若輸出中包含第三方既有版權材料,貢獻者必須驗證自己有權提交;(3)問責制——貢獻者對其貢獻承擔全部責任,包括技術優點、安全性、授權合規和實用性,並且必須完全理解所提交的變更;(4)揭露——當貢獻的顯著部分由工具生成時必須揭露,對 commits 可使用 Git trailer 如 Generated-By:Assisted-By:;(5)批次或自動化變更的事前討論——類似大量 bug 提交流程,需先討論再提交;(6)保密與隱私——不得將非公開或敏感的專案資訊傳輸給不受信任的 AI 提供者。

Proposal C(Choice 3):盡可能拒絕。 提案人 Ian Jackson 的立場最為複雜。提案開頭直接定性 LLM 的「許多嚴重問題」:破壞自由軟體社群建設機制、環境損害、剝削作者、侵略性爬蟲破壞開放網路、生成和散播 bullshit、汙染資訊公共空間、危害使用者心理健康、經濟泡沫、扭曲硬體市場、詐騙、由可怕的人和公司擁有。結論斬釘截鐵:「倫理和安全地使用這項技術幾乎不可能。」(Ethical and safe use of this technology is nearly impossible.)

然而,同一個提案接著承認:「不幸的是,更廣泛的軟體世界(包括我們許多上游)持不同觀點。因此,完全禁止 LLM 輸出進入 Debian 目前不切實際。」

提案的具體內容分為「請求」和「要求」兩層。請求層:呼籲所有 Debian 貢獻者避免使用 LLM、決策者盡可能勸阻 LLM 使用(認識到這會涉及不舒服的妥協)、自由軟體社群應拒絕 LLM。要求層(行為準則補充):發送給人類的訊息必須僅由人類草擬、任何 LLM 使用必須揭露、個別專案和維護者可完全禁止 LLM 貢獻且此類禁令必須被尊重、違反者應被視為違反行為準則並受到紀律處分。值得一提的細節:提案特別規定「任何覺得自己無法在無輔助下用英文寫作的貢獻者,可以用其母語寫作」,承諾不因其語言錯誤羞辱任何人——這是四個提案中唯一觸及語言權力不對稱的條文。

Proposal D(Choice 4):接受,附責任制。 提案人 Pierre-Elliott Bécue 的立場最務實:Debian 不背書或推薦使用生成式 AI,因為它引發了倫理、合法性、版權等擔憂。但「與其禁止(看似無效且不可執行),專案選擇將責任放在貢獻者身上」。具體規則包括:所有 AI 輔助工作必須符合 DFSG、提交者負全責(充分評估、能解釋和辯護、自行簽署)、AI 輔助工作應在適當位置標記(commit message、changelog 等)、不得將敏感資訊傳輸到雲端 AI。輕量級工具(如 Copilot tab-completion)的揭露由提交者自行評估,有疑問時補上標記。

四項提案的投票選項為:A > C > B > D > 進一步討論(Further Discussion)。

城武觀點

觀點一:Proposal C 的本體論矛盾,是整個開源世界的,不只是 Debian 的。

Ian Jackson 的提案是四份文件中最值得反覆閱讀的——不是因為它最有道理,而是因為它最誠實地暴露了一個無法解決的困境。他先用一長串形容詞把 LLM 釘在道德審判的十字架上:破壞社群、剝削作者、環境災難、散播 bullshit、由可怕的人擁有。結論是「倫理和安全使用幾乎不可能」。然後下一段立刻說「但完全禁止目前不切實際,因為整個軟體世界跟我們不一樣。」

這不是政治妥協。這是一個社群在說「我的道德判斷告訴我這個東西是壞的,但我的現實判斷告訴我無法擺脫它」。這兩個判斷同時為真,而且互相取消對方的行動力。你的道德判斷叫你拒絕,你的現實判斷叫你接受——結果就是你既拒絕不了,也接受不了。

有人會說「那找到一個更好的中間方案不就好了?」這就是沒看懂問題的本質。自由軟體運動的整套倫理框架是建立在「你可以選擇不用專有軟體」的前提上——GNU 的起點是「如果某個軟體的授權你不接受,你可以自己重寫一個」。但 LLM 不是一個軟體,它是一個滲透進所有軟體生產過程的基礎設施。你不能「重寫一個不含 LLM 的軟體生態系」,就好像你不能「重寫一個不含電力的網際網路」。當一個技術不是選項而是環境時,建立在「選擇自由」之上的倫理框架就失靈了。

這才是 Proposal C 真正的訊息:不是「我們該怎麼規範 LLM」,而是「自由軟體運動從未處理過一個你不想要但無法擺脫的技術,而我們的工具箱裡沒有對應的工具」。

觀點二:Proposal A 的「善意聲明」本身就是 LLM 輸出的完美範例。

Proposal A 最關鍵的一句話不是禁令本身,是它的執法條文:「雖然執法可能是個挑戰,但這是 Debian 社群的一份意圖聲明,我們相信社群會基於善意遵守它。」這句話的結構——承認困難、表達信念、把責任推給一個不存在的集體意志——完美複製了 LLM 輸出的核心特質:聽起來很有道理,實際上空無一物,把「我們做不到」包裝成「我們相信大家不會做」。

Debian 無法偵測 LLM 產出的程式碼。不是「很難」,是「做不到」——連 OpenAI 自己都在 2023 年下架了自家的 AI 文字偵測器,因為準確率太低。人類審查者連分辨 AI 生成的論文都只有 50% 出頭的正確率,你要一個套件維護者在 code review 時判斷這個 patch 是不是 Copilot 寫的?

這不是政策缺陷,這是類別錯誤。DFSG 合規是可驗證的——你可以檢查授權文件、追蹤版權聲明、確認原始碼是否完整。但「這段程式碼是人類寫的還是 LLM 寫的」是不可驗證的。把一個可驗證的制度和一個不可驗證的規則放在同一個執法框架下,結果就是前者繼續運作,後者變成純裝飾。Proposal A 的禁令不是被違反——它是被設計成無法執行的。

觀點三:Proposal B 是治理劇場,它的真正功能是讓 Debian 可以說「我們有政策了」。

Lucas Nussbaum 的六條 checklist 是科技公司最愛的治理模式:承認問題存在、表達擔憂、然後給出一個 checklist 讓每個人都覺得「只要填完這六條就沒事了」。它的結構跟企業 ESG 報告完全同構——你不需要真的減碳,你只需要填完碳盤查表。

仔細看這六條:第一條要求「工具的使用條款不得與 Debian 授權衝突」——哪個商用 LLM 的使用條款會明確承諾輸出物的版權歸屬?OpenAI 和 Anthropic 的 ToS 在這點上都是刻意模糊的。第二條要求「貢獻者驗證自己有權提交第三方版權材料」——這在人類編寫程式碼時以經夠難了,放到機率性生成的 LLM 輸出上根本是要求貢獻者做一件不可能的事。第三條的「貢獻者對貢獻負全責」,實質意義是把所有無法在前兩條解決的風險全部推給個人。

這就是軟家長主義(soft paternalism)的治理結構:讓你有「選擇」,但其實是把結構性問題——一個產業級技術的法律不確定性、無法驗證的產出來源、訓練資料的倫理汙點——全部轉嫁成個人責任。填完 checklist 的不是 Debian 專案,是每一個想用 AI 的貢獻者。Debian 得到了「我們有 AI 政策了」的公關價值,不需要改變任何人的行為,也不需要回答任何結構性問題。

城武的未解檔案——自由軟體花了三十年學會拒絕專有軟體:你不給我原始碼,我從新寫一個。但拒絕一個你不想要卻無法擺脫的技術,那是另一種問題,而規則手冊上沒有這一頁。