IBM 最近發布了一組名為 "Granite Code" 的開源型,旨在幫助企業完成各種軟件開發任務,并在基準測試中表現出色。這些模型不僅過了一些較大的開源競爭對手,而且在編程任務中展現出了強大的性能。
Granite Code 型分為基礎模型和指導模型,每種模型都有四個不同規模的變種,參數數量從30到340億不等。這些模型的上下文窗口相對較短,例如,其中一個模型的上下文窗口只有128K,這限制了其在包含特定文檔或自己的代碼庫等提示信息時的有效性。不過,IBM 目正在開發具有更大上下文窗口的版本。
基礎模型的訓練分為兩個階段。第一階段使用自116種編程語言的3-4萬億個標記進行訓練,以建立廣泛的理解能力。在第階段,這些模型使用來自高質量代碼和自然語言數據的5000億個標記進行進一步訓練,以強邏輯推理能力。
指導模型是通過對基礎模型進行改進而創建的,改進方法包括篩選提交記錄、自然語言指令記錄和合成生成的代碼數據集。
在包括代碼合成、調試、解釋、編輯、學推理等多個基準測試中,Granite Code 模型在各個規模和基準測試中表現出色,常常超過開源模型兩倍以上的大小。例如,在 HumanEvalPack 基準測試中,Granite-8B-Code-Base 的平均得為33.2%,超過谷歌最佳表現的 CodeGemma-8B 模型的21.3%,盡管 Granite-8-Code-Base 所使用的標記數量明顯較少。
這些模型的大部分訓練數據來自一個清理過的 GitHub 集 StarCoderData 和其他公開可用的代碼庫。這一點非常重要,因為目前有一些關于其他代碼型(包括 GitHub 本身)涉嫌侵犯訓練數據版權的訴訟。
IBM 計劃定期更新這些模型,很快將推出具有更大上下文窗口以及針對 Python 和 Java 的專業化版本。這些模型已經在 Hugging FaceGitHub 上可用,并且也是 IBM 的 watsonx 企業平臺的一部分。
IBM 的 Granite Code 是一專門用于編程的開源模型,它們在基準測試中表現優異,同時具有較少的參數數量。些模型的特點包括靈活的規模選擇、基于廣泛訓練數據的邏輯推理能力和良好的性能未來,IBM 還計劃不斷改進和更新這些模型,以滿足不同編程任務的需求。


產品與服務
聯系站長
關于我們