Stability AI发布全新代码模型Stable Code 3B!媲美70亿Code Llama,没GPU也能跑
创始人
2025-07-11 07:50:34
0

今天,Stability AI发布了自家在2024年的第一个模型——Stable Code 3B。

图片图片

顾名思义,Stable Code 3B专注于代码能力,实际的表现也是非常亮眼。

在仅仅3B参数的规模之下,达到了比肩Code Llama 7B的效果。

图片图片

相较于Code Llama 7B,Stable Code 3B的体积减少了60%,但在多种编程语言上保持了相当的水准,在Python和C++的代码补全中甚至反超了Code Llama 7B。

另外,由于模型仅有3B大小,Stable Code 3B可以在MacBook Air等普通笔记本电脑上实时运行,甚至没有独立GPU也可以!

有网友将Stable Code 3B称为Copilot的离线替代品,并希望能在VS Code上使用它。

图片图片

4个小时后,有网友发推表示自己在VS Code上更新了LLama Coder插件,可以支持最新的Stable Code 3B模型。

图片图片

「它非常好!它很小,这意味着它可以在任何硬件上运行,并且运行速度非常快。」

图片图片

插件地址:https://t.co/Mn7onaDpge

虽然模型名义上叫做Stable Code 3B,但其实是一个2.7B 参数的纯解码器语言模型。

除了模型比较轻量之外,Stable Code 3B还支持高达100K的上下文大小,可以更方便、更精确地辅助编码。

另外,模型参考了2023年StackOverflow开发者调查中,最受欢迎的18种编程语言,针对这18种语言进行了训练,提供了同等规模模型中最优秀的性能。

  • C
  • CPP
  • Java
  • JavaScript
  • CSS
  • Go
  • HTML
  • Ruby
  • Rust
  • Markdown
  • Shell
  • Php
  • Sql
  • R
  • Typescript
  • Python
  • Jupyter-Clean
  • RestructuredText

在与同量级的竞品模型的比较中,Stable Code 3B也几乎拿到了最好的成绩。

图片图片

目前,Stable Code 3B已经加入了Stability AI的会员大礼包中,只要不涉及商用,用户都可以免费使用。

图片图片

Stable Code 3B

Stability AI从2023年底开始推出更小尺寸、但功能强大的模型,包括StableLM Zephyr 3B等用于文本生成的模型。

Stable Code 3B的前代是Stability AI在8月份发布的Stable Code Alpha 3B。

Stable Code Alpha 3B使用来自BigCode的堆栈数据集(v1.2)来训练基础模型,并使用Python、Go、Java、Javascript、C、Markdown和C++等流行语言进一步训练(共560B代码token)。

建立基础模型后,开发人员针对特定用例对指令模型进行了调整,使用大约120000个Alpaca格式的代码指令/响应来训练模型,以提升解决复杂编程任务的能力。

图片图片

上图展示了Stable Code Alpha利用Pytorch库完成一个相对复杂的python文件,灰色部分为Stable Code的预测。

参数细节:100K上下文,支持FIM

Stable Code 3B 在256个英伟达A100 40GB GPU(AWS P4d实例)的集群上进行训练,

使用ZeRO-1的数据并行和张量并行,并依赖FlashAttention以及FlashAttention-2的SwiGLU和Rotary Embedding内核。

模型的训练流程由类似于Code Llama的多阶段过程。

第一步,以使用自然语言数据预训练的StableLM-3B-4e1t为基础(使用4万亿个token训练),对多个代码和代码相关数据集进行无监督微调,包括 CommitPack、GitHub Issues、StarCoder和其他数学数据集。

图片图片

模型在上述数据集上使用bfloat16进行了精确预训练,并使用AdamW进行了优化。

第二步,使用16384个token的更长序列进一步微调模型,同时与Code Llama类似,使用一种称为旋转位置嵌入(RoPE)的技术进行优化,使上下文大小扩展到了100k个token。

另外,新的Stable Code 3B模型还支持Flash Attention 2。

图片图片

作为改进版本,Stable Code 3B不仅可以建议新的代码行,还可以填补现有代码中较大的缺失部分——称为中间填充功能(FIM)。

图片图片

Stable Code 3B的模型架构如下表所示:

图片图片

旋转位置嵌入应用于前25%的head embedding,以提高模型的吞吐量;

使用GPTNeoX Tokenizer的修改版本——NeoX,并添加特殊token来训练中间填充功能,比如和其他特殊token。

在使用BigCode的评估工具测试的多种编程语言的MultiPL-E指标上,Stable Code 3B展示了最先进的性能。

图片图片

上表中,Stable Code 3B与同等规模的编码模型进行比较,在全部的六种编程语言中,都处于领先。

图片

而相比于体积大2倍多的Code Llama 7B,Stable Code 3B也拿到了3项胜利。

Stability表示将发布一份完整的技术报告,包含更多细节和消融实验等。

代码生成之战

目前,AI代码生成工具的市场竞争非常激烈,70亿参数的来自Meta的Code Llama 7B被广大开发者所使用。

而在30亿参数这个量级,StarCoder LLM(由 IBM、HuggingFace和ServiceNow共同开发的开源项目)广受欢迎。

从测试成绩上来看,Stability AI的这个模型要优于StarCoder,不知道Stable Code 3B会给Stability和市场带来怎样的变化。

参考资料:

https://stability.ai/news/stable-code-2024-llm-code-completion-release

https://huggingface.co/stabilityai/stable-code-3b

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
着眼MAC地址,解救无法享受D... 在安装了DHCP服务器的局域网环境中,每一台工作站在上网之前,都要先从DHCP服务器那里享受到地址动...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...