大學教授怒噴:「Copilot自動填充了我的程式碼」,Copilot 發明者回應:相似,但不同!

作者 | 辛曉亮

“這究竟是生產程式碼的人工智慧,還是網上搜尋可能適合的開放源程式碼的人工智慧”

幾日前,德州農工大學的一位電腦科學與工程教授 Tim Davis 在Twitter上發文抨擊 GitHub Copilot,「基於人工智慧的程式設計助手 GitHub Copilot 在沒有署名也沒有 LGPL 許可的情況下自動填入了大量我個人受版權保護的程式碼」。Tim Davis 還貼出了相應的程式碼進行對比。

Image
Image

Copilot 發明者回應:相似,但不同

對於 Tim Davis 教授的批評,GitHub 的首席工程師兼 Copilot 的發明者 Alex Graveley 進行了回應:「相關的程式碼與所提供的例子是不一樣的。它們相似,但不同。如果你能找到一種方法來自動識別其中一個是另一個的衍生品,那你可以去申請專利。」

不過隨後他又補充到,「這確實是一個棘手的問題,歡迎提供可擴展的解決方案」。

從 Tim Davis 公佈的程式碼來看,Copilot 自動推薦的程式碼確實與他自己編寫的非常接近。值得注意的是,圖上相關的原始程式碼本身在 GitHub 上也是開源的,並且是 LGPL 2.1 許可的形式存在。但是開源並不意味著無版權,有許多不同的開源許可,每個許可代表了不同的許可權。

Image

Copilot 破壞版權同時存在安全隱患

據與 GitHub 聯合推出 Copilot 的 OpenAI 介紹,Codex 接受了「數以千萬計的公共儲存庫」的程式碼培訓,其中也包括 GitHub 上的程式碼。微軟則是含糊地將培訓材料描述為「數十億行公共程式碼」,但在最近的一期部落格上,Copilot 研究員 Eddie Aftandil­ian 證實 Copilot 正在使用「GitHub 上的公共儲存庫進行訓練」。

按照 Copilot 的工作邏輯,如果 GitHub 上大量的開源程式碼被全盤引用,但是沒有指定許可證,不但會破壞許可證的目的。此外,開發者也很可能在無意中把不兼容的許可證程式碼合併到一個項目中,同樣的開源程式碼也可能出現在多個人的多個項目中。

Davis 表示,Copilot 某種程度上預見到了這個問題,它提供了一個公共程式碼過濾器,可以檢測與 GitHub 上公共程式碼相匹配的程式碼建議。當過濾器啟用時,GitHub Copilot 會將程式碼建議及其附近約 150 字符的程式碼與 GitHub 上的公共程式碼進行檢查。如果有匹配或相接近的,那麼該程式碼建議就不會顯示推送。但是這個功能似乎存在問題。

Image

Copilot 發展迅速,未來五年可替代 80% 程式碼

「人工智慧將改變所有行業,所以每個人都必須考慮它,不僅僅是在資料科學領域」,LinkedIn 聯合創始人 Reid Hoffman 這麼評價 AI。

依託 AI 的 GitHub Copilot 近一年的發展似乎也在印證這個說法。據 GitHub 執行長 Thomas Dohmke 介紹,過去一年時間,使用人工智慧的程式設計師中,Copilot 處理的編碼量高達 40%。換句話說,每 100 行程式碼裡,有 40 行就是由人工智慧編寫的,項目總時間最多可減少 55%。

Dohmke 表示,從另一個角度看開發者做了很多高價值的任務,而不僅僅是重寫世界上已經存在的程式碼。他認為,未來五年內 Copilot 的程式碼建議會被更多地採納,最多能達到 80%。但人工智慧距離取代人類還有很大差距,「它是沒有知覺的,它不能在沒有使用者輸入的情況下自己創造。」

開發者熱議

開發者熱議

其實,自 GitHub Copilot 發佈以來就一直存在不少的爭議,不少人質疑 Copilot 在 GitHub 上發佈公開程式碼進行訓練的合法性。除了版權問題,也有研究發現,Copilot 輸出的程式碼其中 40% 都存在安全漏洞。

開發者也認為,Copilot 可以免費訪問 GitHub 上的所有開源資料,並且通過收費的方式從開源中賺錢,這是非常不合理的。他們還要求 GitHub 提供完整的 Copilot 資料集,以便判斷其自動建議的程式碼是否符合版權規定。

參考連結:

https://githubcopilotinvestigation.com/

https://devclass.com/2022/10/17/github-copilot-under-fire-as-dev-claims-it-emits-large-chunks-of-my-copyrighted-code/

相關文章

CNNVD通報Oracle多個安全漏洞

CNNVD通報Oracle多個安全漏洞

近日,CNNVD通報Oracle多個安全漏洞,其中Oracle產品本身漏洞60個,影響到Oracle產品的其他廠商漏洞247個。包括Orac...