Meta 發布程式碼生成 AI 模型 Code Llama:開源與風險並存
概述
Meta 最近發布了一個開源的 AI 模型,名為 Code Llama,該模型可以生成和解釋自然語言(具體來說是英語)中的程式碼。Code Llama 類似於 GitHub Copilot 和 Amazon CodeWhisperer 等開源的 AI 程式碼生成器,它能夠完成程式碼的編寫和偵錯,支援多種程式設計語言,包括 Python、C++、Java、PHP、Typescript、C#和 Bash 等。
開源優勢
Meta 在一篇部落格文章中表示他們相信 AI 模型,尤其是針對編碼的大型語言模型,在開放的環境下的創新和安全性方面能夠獲得最大的優勢。透過公開發布包括 Code Llama 在內的程式碼模型,整個社區可以評估它們的能力、發現問題並修復漏洞。
技術細節
Code Llama 基於 Meta 先前釋出的 Llama 2 文字生成模型開發而成。Meta 在訓練 Code Llama 時使用了相同的資料集,這個資料集是從網路上公開可用的源程式碼中提取的。但是 Code Llama 在學習程式碼和自然語言之間的關係方面比其“父”模型 Llama 2 更加專注。Code Llama 的模型大小從 70 億引數到 340 億引數不等,它們都使用了大量的程式碼資料進行訓練。
風險與問題
像所有的生成式 AI 模型一樣,程式碼生成工具也存在風險。斯坦福大學的一個研究團隊發現,使用 AI 工具的工程師更容易在他們的應用程式中引入安全漏洞。這些工具通常會生成表面上似乎正確但實際上存在安全問題的程式碼,比如呼叫已被入侵的軟體或使用不安全的配置。
此外智慧財產權問題也是一個問題。一些程式碼生成模型可能在受到版權保護或受約束許可的程式碼上進行訓練,當這些模型按照某種方式進行提示時,它們可能會返回這些程式碼。如果企業在生產軟體中不知不覺地將這些模型的建議包含進去,法律專家表示這可能會給企業帶來風險。
此外儘管沒有大規模證據表明這一點,但開源程式碼生成工具可能被用於建立惡意程式碼。駭客已經試圖對現有模型進行微調,用於識別程式碼中的漏洞、洩漏和撰寫欺詐網頁。
Meta 在 Code Llama 的內部測試中發現,即使在 25 名員工的紅隊測試下,Code Llama 在回答提示時也會出現一些錯誤,這可能會使開發人員感到猶豫。Meta 在部落格文章中明確表示 Code Llama 可能會產生“不準確”或“有爭議”的回應,並建議在應用 Code Llama 之前,開發人員應根據其具體應用進行安全測試和調優。
結論與建議
儘管存在一些風險,但 Code Llama 對於程式設計師和非程式設計師來說仍然具有很大的吸引力。GitHub 表示已經有超過 400 家組織正在使用 Copilot,並且這些組織的開發人員的編碼速度比以前提高了 55%。同樣,根據 Stack Overflow 的一項最新調查,70%的開發人員今年已經在使用或計劃使用 AI 編碼工具,他們提到這樣做的好處包括提高生產力和加快學習速度。
然而開發人員需要意識到這些工具的潛在風險,特別是安全性和智慧財產權問題方面。在使用 Code Llama 之前,開發人員應該進行更多的安全測試和風險評估。此外他們還應該理解程式碼生成模型的局限性,避免過度依賴這些模型,並在生成的程式碼中進行適當的人工審核。
對於 Meta 來說他們的開放和透明的方式有助於社區監督和改進 Code Llama。然而 Meta 還應該考慮將 Code Llama 提交給獨立的第三方審計,以進一步取證模型的能力和安全性。
延伸閱讀
- Fairgen「提振」調查結果,利用合成資料和人工智慧生成的回應
- 用 Retell AI 讓公司打造「語音代理人」來應答電話
- OpenAI 揭開 AI 祕密指令的面紗
- AI 助您創辦者更快、更輕鬆地籌集資金嗎?
- 深度學習技術進步!Meta 推出廣告 AI 工具,能創造全新影象而非僅替換背景
- 盧西德機器人獲得 900 萬美元用於無人機清潔任何地方
- 以色列新創公司 Panax 籌集了 1,000 萬美元 A 輪融資,用於其基於人工智慧的現金流管理平臺
- Reddit 測試使用基於 LLM 的人工智慧進行自動整站法語翻譯
- 三星醫聲將以 9270 萬美元收購法國人工智慧超聲波新創公司 Sonio
- Meta 推出的 AI 工具現在能夠創造全新的影象,而非僅僅是更換背景