Meta釋出可商用程式開發語言模型Code Llama

Meta利用之前所發布的可商用大型語言模型做為基礎,推出程式開發用的語言模型。Code Llama總共有三種變體,第一種是基礎程式碼模型,第二種是針對Python微調的模型,第三種則是針對自然語言指令進行微調的模型變體。與Llama 2相同,Code Llama也是可免費用於研究和商業用途。

Code Llama使用更多程式碼資料集訓練,並且從該資料集擷取更多資料,進行長時間的訓練而成,是專門處理程式碼的Llama 2模型。因此Code Llama具有更強的程式碼編寫能力,可以根據程式以及自然語言提示,生成程式碼或是有關程式碼的自然語言回應,執行程式碼完成和除錯任務,支援的程式語言包括Python、C++、Java、PHP、Typescript、C#和Bash。

根據不同服務和延遲需求,Meta推出三種大小的Code Llama模型,分別具有70億、130億和340億參數,70億參數的版本可以在單個GPU上運作,最大的340億模型則能夠回傳最佳結果,因此用戶可以依據需求選用不同大小的模型,針對需要諸如即時程式碼完成這類低延遲任務,選用70億、130億參數的模型更為適合。

這三種大小的模型,皆經過5,000億程式碼和相關內容的Token訓練,官方提到,70億、130億基礎模型和指令模型具有FIM(Fill-In-The-Middle)能力,因此能夠生成可插入至現有程式碼中的程式碼。

FIM使模型能夠在現有的文字和程式碼中插入和填充內容,類似程式開發環境中程式碼自動完成,或是程式碼建議功能。而70億、130億基礎模型和指令模型具有FIM功能,也就是說使用者不需要額外訓練或是調整,就可以直接使用該功能。

屏東借錢感應門神,推薦沙發修理,老師傅的專業手工!測試專家告訴你如何好好使用示波器大阪包車好的茗茶,更需要密封性高的茶葉罐,才能留住香氣!屏東借款!如何利用一般常見的「L型資料夾」真空封口機該不該買?使用心得分享!專業客製化禮物、贈品設計,辦公用品常見【L夾】搖身一變大受好評!日本包車台灣護照代辦申辦工作天及價錢!空壓機合理價格為您解決工作中需要。貨櫃屋,結合生活理念、發揮無限的創意及時尚的設計。三個月單次觀光泰國簽證需準備哪些資料?竹北床墊推薦!總是為了廚餘煩惱嗎?雅高環保提供最適用的廚餘機,滿足多樣需求。沙發換皮省更多,延長老沙發壽命!竹北床墊工廠,賣場商品防竊是怎麼做的?為什麼辦理台胞證需要護照正本?屏東軍公教借款各家評價及利息一覽表。東京包車三洋服務站全台據點。

Code Llama具有處理長序列內容的能力,能夠穩定生成10萬Token的內容,並且也能夠處理高達10萬Token的輸入。處理長輸入序列的Code Llama能夠支援更多的使用情境,像是使用者可以提供更多來自程式碼庫的上下文,並且對更大的程式碼庫進行除錯。

由於Python是經過許多程式碼生成基準測試的語言,而且Python也在人工智慧社群扮演重要角色,因此Meta針對Python,額外以1,000億Python程式碼Token進行微調,生成Python程式開發專用的Code Llama – Python模型。另外,Code Llama – Instruct則是針對指令進行微調的模型版本,能夠處理自然語言指令輸入和輸出,更好地理解使用者所給出的指令。

Meta使用目前兩種流行的程式開發基準來測試Code Llama模型,分別是HumanEval與MBPP(Mostly Basic Python Programming),HumanEval可以測試模型根據文件字串完成程式碼的能力,而MBPP則可以測試模型根據描述編寫程式碼的能力。

經測試,Code Llama程式開發的能力優於其他開源,且同樣針對程式碼生成的大型語言模型,Code Llama 340億參數模型版本,在HumanEval得分53.7%,而在MBPP的得分則是56.2%,較其他開源解決方案更高。

https://www.ithome.com.tw/news/158436