Stable Code 3B是一个编码模型,其指令和代码补全变体与Code Llama 7B等大2.5倍的模型不相上下。
108.6K 拉取请求 更新于 8个月前
自述文件
Stable Code 3B是一个拥有30亿参数的大型语言模型 (LLM),能够提供准确且及时的代码补全,其水平与Code Llama 7b等大2.5倍的模型不相上下。
主要功能
- 新增 指令模型
ollama run stable-code
- 中间填充能力 (FIM)
- 支持长上下文,使用长达16,384的序列进行训练
模型 | 大小 | 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),以及CommitPackFT 和 Github Issues (BigCode., 2023),以及 StarCoder (Li et al., 2023)。我们还用来自数学领域的数据补充了我们的训练数据 (Azerbayev, Zhangir, et al., 2023 和 Yu, Longhui, et al., 2023)。
训练的18种主要编程语言:- C - CPP - Java - JavaScript - CSS - Go - HTML - Ruby - Rust - Markdown - Shell - Php - Sql - R - Typescript - Python - Jupyter-Clean - RestructuredText
使用和局限性
预期用途
该模型旨在用作特定应用微调的基础基础模型。开发人员必须评估和微调模型,以确保其在下游应用中的安全性能。
局限性和偏差
作为基础模型,该模型可能表现出不可靠、不安全或其他不良行为,必须通过评估和微调才能在部署前纠正。预训练数据集可能包含攻击性或不当内容,即使应用了数据清洗过滤器也是如此,这可能会反映在模型生成的文本中。我们建议用户在生产系统中使用这些模型时应谨慎。如果这些模型不适合您的应用程序,或者任何可能对他人造成故意或非故意伤害的应用程序,请勿使用这些模型。