開源代碼大模型的王座,再次易主!
來自素有“歐洲OpenAI”之稱的Mistral,用22B參數(shù)量表現(xiàn)超越了70B的Code Llama。
模型名為Codestral,將代碼的英文Code與公司名結(jié)合而成。
在80多種編程語言上進行過訓練后,Codestral用更少的參數(shù)實現(xiàn)了更高的性能,窗口長度也達到了32k,相比之前一眾4k、8k的模型大幅增加。
而且已經(jīng)有人表示,GPT-4o和Claude3-Opus都失敗的代碼編輯任務,被Codestral成功解決了。
于是有網(wǎng)友直言,Codestral的推出,直接改寫了多語言代碼模型的游戲規(guī)則。
另一方面,還有網(wǎng)友直接@了知名本地大模型框架Ollama,希望能夠支持Codestral,結(jié)果Ollama這邊也迅速響應,在請求發(fā)出后1個小時就增加了對Codestral的支持。
那么,Codestral在測試中都取得了哪些成績呢?
Codestral的參數(shù)量為22B,支持32k的上下文窗口。
在開發(fā)過程中,研究人員使用了80多種編程語言的代碼數(shù)據(jù)對Codestral進行了訓練。
其中既包括Python、Java、C++和Bash等這些流行語言,也有像Fortran、COBOL這樣的古早語言。
值得一提的是,其中的COBOL誕生于1959年,但至今全球仍有43%的銀行系統(tǒng)依賴它,然而另一方面,現(xiàn)在會用的人數(shù)卻寥寥無幾,而且普遍年事已高。
AI工具對COBOL的支持,或許將成為解決COBOL人才極度緊缺問題的一種途徑。
說回到Codestral,雖然參數(shù)量只有不到三分之一,但測評成績已經(jīng)大幅超過了70B的Code Llama。
對于Python語言,研發(fā)團隊使用了HumanEval(pass@1)和MBPP評估了Codestral的Python代碼生成能力,用CruxEval來評估輸出預測,以及用RepoBench評估Codestral在遠程存儲庫中的代碼補全能力。
結(jié)果,Codestral在其中的三項測試中都取得了最佳成績,并對Llama 3和Code Llama形成了全面超越。
數(shù)據(jù)庫方面,在針對SQL的Spider測試中,Codestral的表現(xiàn)也與通用模型Llama3十分接近。
對于其他一些編程語言,Codestral和通用版Llama3各有勝負,平均成績則小幅超過了Llama3,但相對于Code Llama的優(yōu)勢是十分明顯的。
另外,Codestral還支持FIM(fill-in-the-middle),也就是可以對現(xiàn)有代碼進行填充補全。
在Python、JS和Java三種語言當中,Codestral都取得了接近或超過90%的HumanEvalFIM評分,平均成績91.6%,超過了參數(shù)量更大的DeepSeek Coder 33B。
速度方面,使用在線對話版本,只要三秒鐘就能構(gòu)建出一個帶有頂部banner和側(cè)邊欄的HTML框架。
不僅性能表現(xiàn)優(yōu)異,形式上,Codestral支持的使用方式也多種多樣。
Mistral已經(jīng)把模型權重上傳到了HuggingFace,有條件的可以自行下載部署。
以及LangChain、LlamaIndex,還有開頭提到的Ollama等這些大模型框架,以及Mistral自家的開發(fā)者平臺La Plateforme當中都已經(jīng)支持使用Codestral。
專屬API也正在趕來的路上,正在進行為期8周的測試,期間開發(fā)者可以免費使用。
如果還是不會部署的話,也可以到Mistral的在線對話平臺Le Chat當中,直接使用網(wǎng)頁進行對話。
當然,開發(fā)者更關心的,可能還是能不能集成到IDE中使用。
對此,官方暫未推出原生的IDE支持,不過已經(jīng)有Continue.dev、Tabnine等第三方插件支持了Codestral,可以通過這些插件在VSCode和JetBrains系列IDE中使用。
與Codestral一同官宣的,還有Mistral全新的“非生產(chǎn)”(Non-Production)許可協(xié)議,簡稱MNPL。
本次發(fā)布的CodeStral使用的許可協(xié)議也正是MNPL,按照規(guī)定僅可用于研究目的,不能進行商用。
并且,這份協(xié)議對“非商用”的界定也十分嚴格,即使僅將其用于公司內(nèi)部事務也不被允許。
有開源作者就此吐槽,他們用我代碼的時候從未征求我的意見,為什么還反過來要求我遵守他們的規(guī)定,這實在是太荒謬了。
而Mistral這邊的解釋則是,如果放開商業(yè)用途,可能無法得到使用者對模型研發(fā)的貢獻。
官方同時也表示,雖然Codestral不能商用,但并不意味著之后的其他開源模型也是如此,同時明確表示后續(xù)會繼續(xù)發(fā)布基于Apache 2.0協(xié)議的其他模型。
參考鏈接:
[1]https://mistral.ai/news/codestral/
[2]https://x.com/GuillaumeLample/status/1795820710750744839
[3]https://www.theverge.com/2024/5/29/24166334/mistral-debuts-a-coding-assistant-called-codestral
— 完 —