近期,一項來自加拿大研究人員的研究揭示了ChatGPT編程能力的局限性。盡管ChatGPT具備編程能力,但其生成的代碼大部分不安全,并且ChatGPT不會主動提示存在的問題。擔心被ChatGPT取代工作的程序員們松了一口氣,這樣就不會被AI工具取代,心理上得到了一些安慰。
1.ChatGPT人工智能技術引發的擔憂
基于生成式人工智能(AIGC)技術的ChatGPT工具,能以類似人類的方式回答問題并生成文本和圖像。盡管這項技術取得了突破性進展,但仍然引發了部分人的擔憂。有人擔心這項技術可能會取代許多工作崗位,還有人擔心它可能傳播錯誤信息、侵犯版權、損害隱私和泄露敏感信息。
研究者表示,ChatGPT人工智能技術像其他智能工具一樣。大家應該去解決這些使用上發現的問題,解決這些問題的方法并非停止創新,而是在使用和完善現有產品的過程中加強監管。事實上,人工智能技術還被用于實時識別新的攻擊、攔截網絡攻擊、檢測具有攻擊性的網絡行動和虛假信息運動。
2.ChatGPT生成的代碼安全性存疑
加拿大魁北克大學的四名研究人員在一篇題為《ChatGPT生成的代碼有多安全?》的論文中指出,ChatGPT生成的代碼總體上不太安全。他們要求ChatGPT使用C++、Python和Java等多種語言生成了21個程序和腳本。結果顯示,ChatGPT在第一次嘗試生成的21個代碼中,僅有5個是安全的。即使在進一步糾正錯誤之后,也只有7個代碼被認為是安全的。
3.ChatGPT不會主動提示代碼漏洞
研究人員發現,ChatGPT似乎意識到其代碼中存在嚴重漏洞,但除非被要求評估自己的代碼建議的安全性,否則它不會主動提醒。這意味著用戶需要已經了解特定的漏洞和編碼技術,才能讓ChatGPT準確糾正代碼問題。
4.不宜過分依賴ChatGPT生成的代碼
研究人員認為,ChatGPT生成的代碼,目前仍存在一些漏洞和風險。他們警告說,擁有一個生成不安全代碼的工具是非常危險的,需要讓學生和程序員意識到,如果代碼是用ChatGPT生成的,會純在一定的漏洞和風險,很可能是不安全的。
研究過程中,當研究者要求ChatGPT用不同的語言生成相同任務的程序時,有時對于一種語言,生成的代碼是安全的,而對于另一種語言,則可能是不安全的。由于這種語言模型類似于黑盒子,研究人員尚無法為此現象提供確切的解釋或理論。
總之,ChatGPT在編程領域的應用仍然存在不足和局限性。盡管它具備編程能力,但生成的代碼大部分不安全,且不會主動提醒用戶存在的問題。因此,程序員們不必過分擔憂被ChatGPT取代,但同時也應警惕不要過分依賴這類工具生成的代碼。在技術創新的過程中,我們應更加關注如何加強監管,確保人工智能技術的安全、可靠和負責任地應用于各個領域。