Stable Code 3B是一个编码模型,其指令和代码补全功能与Code Llama 7B(大小是其2.5倍)等模型不相上下。
108.6K 拉取请求 更新于 8个月前
8个月前更新
8个月前
c1c46342f980 · 5.6GB
自述文件
Stable Code 3B是一个拥有30亿参数的大型语言模型 (LLM),能够实现准确且及时的代码补全,其水平与Code Llama 7b(大小是其2.5倍)等模型不相上下。
主要功能
- 新增 指令模型 `ollama run stable-code`
- 中间填充能力 (FIM)
- 支持长上下文,使用长达16384的序列进行训练
模型 | 大小 | 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 模型是基于转换器解码器架构的自回归语言模型。
- 语言:英语,代码
- 联系方式:如有任何问题或意见,请发送邮件至 `[email protected]`
模型架构
该模型是一个仅解码器的转换器,类似于LLaMA(Touvron等人,2023年)架构,但做了以下修改
参数 | 隐藏大小 | 层数 | 注意力头数 | 序列长度 |
---|---|---|---|---|
2,796,431,360 | 2560 | 32 | 32 | 16384 |
- 位置嵌入:旋转位置嵌入(Su等人,2021年)应用于前25%的头嵌入维度,以遵循Black等人(2022年)的研究,从而提高吞吐量。
- 分词器:我们使用的是修改版的GPTNeoX分词器。
NeoX
。我们添加了特殊标记来训练中间填充 (FIM) 功能,例如 `<FIM_PREFIX>` 和 `<FIM_SUFFIX>` 以及其他特殊标记。
训练
训练数据集
该数据集由HuggingFace Hub上提供的经过过滤的混合大规模开源数据集组成:Falcon RefinedWeb 提取物(Penedo等人,2023年),以及CommitPackFT 和 Github Issues(BigCode,2023年),以及StarCoder(Li等人,2023年)。我们还用来自数学领域的数据补充了我们的训练数据(Azerbayev,Zhangir,等人,2023年 和 Yu,Longhui,等人,2023年)。
训练的十大编程语言:- C - CPP - Java - JavaScript - CSS - Go - HTML - Ruby - Rust - Markdown - Shell - Php - Sql - R - Typescript - Python - Jupyter-Clean - RestructuredText
使用和局限性
预期用途
该模型旨在用作特定应用微调的基础模型。开发人员必须评估和微调模型,以确保其在下游应用中的安全性能。
局限性和偏差
作为基础模型,该模型可能会表现出不可靠、不安全或其他不良行为,必须通过评估和微调才能在部署之前纠正这些行为。即使应用了数据清洗过滤器,预训练数据集也可能包含攻击性或不当内容,这可能会反映在模型生成的文本中。我们建议用户在生产系统中使用这些模型时应谨慎。如果这些模型不适合您的应用程序,或者对于可能对他人造成故意或非故意伤害的任何应用程序,请勿使用这些模型。