Stable Code 3B是一个编码模型,其指令和代码补全变体与Code Llama 7B等规模大2.5倍的模型不相上下。

3B

108.6K 8个月前

自述文件

Stable Code 3B是一个拥有30亿参数的大型语言模型 (LLM),能够实现与Code Llama 7B等规模大2.5倍的模型不相上下的精确且响应迅速的代码补全。

主要功能

  • 新增 指令模型 `ollama run stable-code`
  • 中间填充能力 (FIM)
  • 支持长上下文,使用长达16384的序列进行训练

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 解码器架构的自回归语言模型。
  • 语言:英语,代码
  • 联系方式:如有任何问题或意见,请发送邮件至 `[email protected]`

模型架构

该模型是一个解码器仅有的Transformer,类似于LLaMA (Touvron et al., 2023) 架构,并进行了以下修改

参数 隐藏层大小 层数 注意力头数 序列长度
2,796,431,360 2560 32 32 16384
  • 位置嵌入:旋转位置嵌入 (Su et al., 2021) 应用于前25%的头嵌入维度,以提高吞吐量,遵循 Black et al. (2022)
  • 分词器:我们使用的是GPTNeoX分词器的修改版本。NeoX。我们添加了特殊标记来训练中间填充 (FIM) 功能,例如<FIM_PREFIX><FIM_SUFFIX>以及其他特殊标记。

训练

训练数据集

该数据集由在 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)。

训练的十大编程语言:C、C++、Java、JavaScript、CSS、Go、HTML、Ruby、Rust、Markdown、Shell、PHP、SQL、R、Typescript、Python、Jupyter-Clean、RestructuredText

使用和局限性

预期用途

该模型旨在用作应用特定微调的基础基础模型。开发人员必须评估和微调模型,以确保其在下游应用中的安全性能。

局限性和偏差

​作为基础模型,此模型可能会表现出不可靠、不安全或其他不良行为,必须在部署前通过评估和微调来纠正。即使应用了数据清洗过滤器,预训练数据集也可能包含冒犯性或不当内容,这可能会反映在模型生成的文本中。我们建议用户在生产系统中使用这些模型时务必谨慎。如果这些模型不适合您的应用,或者用于可能对他人造成故意或意外伤害的任何应用,请勿使用这些模型。

参考文献

Hugging Face