最近例如 ChatGPT 等人工智能模型的出現,令不少開發進一步考慮到利用人工智能工具協助編寫程式的可能性。不過一個研究卻發現利用人工智能程式碼生成工具,可能會造成更多的安全漏洞。
史丹福大學的一個研究小組最近公佈了關於人工智能程式碼生成系統的研究報告,其作者之一的 Neil Perry 在採訪中表示,程式碼生成系統目前仍然無法替代人類開發者,如果用來協助自己的開發工作,則應該仔細重複檢查系統輸出的結果,並需要考慮到程式碼的使用場景確保沒有問題。而如果不是自己專業範疇之內的程式碼,更加不應該使用人工智能輸出來替代。
他們測試了 OpenAI 的人工智能程式碼生成系統 Codex,並且讓開發者分成兩組測試系統對其開發結果的影響,最後發現使用 Codex 的開發者更偏向寫出不正確和存在漏洞的程式碼,而且對於程式碼更有信心。Perry 認為,要解決程式碼生成系統的缺陷仍然有很長的路要走。Codex 目前已經在 GitHub 提供,除了安全漏洞風險之外,更有可能因為用來訓練系統的一部分程式碼並非完全開放授權,因此使用系統生成程式碼有可能會觸犯版權,因此目前只能作為輔助而非依賴系統來完成開發。
來源:TechCrunch