Stable Code 3B 是一個程式碼模型,其指令和程式碼完成變體與 Code Llama 7B 等模型相當,但模型規模卻小了 2.5 倍。

3b

117K 10 months ago

Readme

Stable Code 3B 是一個 30 億參數的大型語言模型 (LLM),能夠實現準確且反應靈敏的程式碼完成,其水準與 Code Llama 7b 等規模大 2.5 倍的模型相當。

主要功能

  • 新功能 指令模型 ollama run stable-code
  • 填空中間功能 (FIM)
  • 支援長上下文,使用高達 16,384 個序列進行訓練

spiderchart

模型 大小 Python C++ Javascript Java PHP Rust
Stable Code 3B 32.4% 30.9% 32.1% 32.1% 24.2% 23.0%
CodeLLama 7B 30.0% 28.2% 32.5% 31.1% 25.7% 26.3%
Deepseek Coder 1.3B 28.6% 29.2% 28.7% 29.0% 23.6% 18.5%
Wizard Coder 3B 31.6% 25.6% 26.2% 25.8% 25.3% 20.4%
StarCoder 3B 21.6% 19.8% 21.5% 20.5% 19.0% 16.9%
Replit Code V1.5 3B 23.0% 25.9% 26.2% 23.6% 23.2% 21.5%
Deci Coder 1B 19.1% 6.8% 18.4% 16.7% 2.1% 1.7%

模型詳細資訊

  • 開發者: Stability AI
  • 模型類型: stable-code 模型是基於 transformer 解碼器架構的自迴歸語言模型。
  • 語言: 英語、程式碼
  • 聯絡方式: 如有關於模型的疑問和意見,請發送電子郵件至 lm@stability.ai

模型架構

該模型是一個僅解碼器的 transformer,類似於 LLaMA (Touvron et al., 2023) 架構,但有以下修改

參數 隱藏層大小 層數 頭數 序列長度
2,796,431,360 2560 32 32 16384
  • 位置嵌入: 旋轉位置嵌入 (Su et al., 2021) 應用於頭部嵌入維度的前 25%,以提高吞吐量,遵循 Black et al. (2022)
  • Tokenizer: 我們使用 GPTNeoX Tokenizer 的修改版本。NeoX。我們新增了特殊 token 來訓練填空中間 (FIM) 功能,例如 <FIM_PREFIX><FIM_SUFFIX>,以及其他特殊 token。

訓練

訓練資料集

該資料集由在 HuggingFace Hub 上提供的開源大型資料集過濾混合而成:Falcon RefinedWeb 提取 (Penedo et al., 2023),以及 CommitPackFTGithub Issues (BigCode., 2023) 和 StarCoder (Li et al., 2023)。我們還使用來自數學領域的資料補充了我們的訓練 (Azerbayev, Zhangir, et al., 2023Yu, Longhui, et al., 2023)。

訓練的前 18 種程式語言:- C - CPP - Java - JavaScript - CSS - Go - HTML - Ruby - Rust - Markdown - Shell - Php - Sql - R - Typescript - Python - Jupyter-Clean - RestructuredText

使用與限制

預期用途

該模型旨在用作特定應用程式微調的基礎模型。開發人員必須評估和微調模型,以確保在下游應用程式中的安全效能。

限制與偏見

​ 作為基礎模型,此模型可能會表現出不可靠、不安全或其他不良行為,必須在部署前通過評估和微調來糾正。預訓練資料集可能包含冒犯性或不當內容,即使在應用資料清理過濾器後也是如此,這可能會反映在模型產生的文本中。我們建議使用者在生產系統中使用這些模型時謹慎行事。如果模型不適合您的應用程式,或任何可能對他人造成有意或無意傷害的應用程式,請勿使用這些模型。

參考文獻

Hugging Face