稳定代码 3B:边缘编码 — 稳定性人工智能

内容

今天,我们宣布我们2024年的第一个大型语言模型发布:稳定代码 3B。这个新的LLM是我们之前发布的稳定代码 Alpha 3B的后续版本,也是第一个主要的稳定代码发布,提供了一个新的最先进的模型,专为代码补全和多种额外功能而设计。

与 CodeLLaMA 7b 相比,Stable Code 3B 的体积减小了 60%,同时在各种编程语言中保持了类似的高性能。基于我们预先存在的 Stable LM 3B 基础模型,该模型在 4 万亿个自然语言数据标记上进行了训练。Stable Code 进一步在软件工程特定数据上进行了训练,包括代码。该模型的紧凑体积使其能够在现代笔记本电脑上实时私密运行,即使没有专用 GPU 也可以。

稳定代码 3B 提供了更多功能,并在多种语言中具有显著更好的性能,还具有额外的优势,如支持填充中间能力(FIM)和扩展的上下文大小。稳定代码作为基础,训练的序列长度可达 16,384 个标记,但采用了与 CodeLlama 类似的方法,实现了旋转嵌入,可选择性地允许将旋转基数修改为 1,000,000,进一步扩展模型的上下文长度,最多达到 100k 个标记。

Stable Code 是基于 18 种编程语言进行训练的(根据 2023 年 StackOverflow 开发者调查 进行选择),并在多种编程语言上展现了与类似规模模型相比的 MultiPL-E 指标的最新性能。

性能比较

稳定代码完成 3B 与 CodeLLama 7B 的并排比较

培训见解

我们的训练流程包括一个类似于 Codellama 的多阶段过程。我们首先使用一个在自然语言数据上预训练的语言模型,即 StableLM-3B-4e1t,然后进行无监督微调,使用多个代码和与代码相关的数据集,包括 CommitPack、GitHub Issues、StarCoder 和其他数学数据集。在第二步中,我们使用 CodeLLama 建议的基本修改,对模型进行更长序列的微调,每个序列包含 16,384 个标记。新的稳定代码模型还支持 Flash Attention 2,并可供使用。

我们的model card中可以找到有关数据和模型的进一步参考。我们将发布一份包含额外细节和消融实验的完整技术报告,以更加透明和开放地面向社区。

商业应用

通过订阅我们的通讯,及时了解我们的进展,或者通过联系我们了解更多商业应用信息。

TwitterInstagramLinkedIn上关注我们,并加入我们的Discord社区

总结
2024年,我们发布了首个大型语言模型:Stable Code 3B。这个新的LLM是我们之前发布的Stable Code Alpha 3B的后续版本,是首个主要的Stable Code发布,提供了一个新的最先进的模型,专为代码补全和其他多种功能而设计。与CodeLLaMA 7b相比,Stable Code 3B体积减小60%,性能在多种编程语言上表现出类似的高水平。Stable Code 3B在软件工程特定数据的基础上进行了训练,包括代码,其紧凑的体积使其能够在现代笔记本电脑上实时私密运行,甚至是没有专门GPU的笔记本。Stable Code 3B在18种编程语言上进行了训练,并在多种编程语言上展现出了与类似体积模型相比的最先进性能。我们的训练流程包括多个阶段的过程,类似于Codellama。我们将发布完整的技术报告,以提供更多细节和消融,以更加透明和开放地面向社区。